Linux

網路儲存設備的文件系統對作業系統兼容性是否重要?(初學者問題)

  • January 31, 2022

我已經使用 Linux 好幾年了,所以我對命令行很熟悉,但是網路對我來說是一件神秘而令人生畏的事情。

當我想在設備之間共享文件時,我使用快閃記憶體驅動器或外部 SSD/HDD,有時我需要使用 NTFS 或 FAT 以實現兼容性。

我以前聽說過 NAS,我認為這可能是在我的 Linux 安裝之間共享文件的一種方式(使用 ext4),但在研究它之後,我得到的印像是作業系統沒有將 NAS 視為磁碟,就像“文件”一樣。NAS 一詞似乎也是人們用來描述許多不同事物的一種捷徑。

那麼,NAS 的文件系統在兼容性方面重要嗎?(例如:我可以在 Windows 上使用 ext4 格式的 NAS 驅動器嗎?)另外,我是否正確理解 NAS 是一種協議或中間層,作業系統與底層文件系統而不是底層文件系統進行通信?

NAS = Network Attached Storage是網路主機的高級抽象分類,專用於提供基於文件的儲存服務,使用一個或多個為文件共享而設計的網路協議(例如 SMB = Windows 文件共享協議、NFS、舊的已棄用的 Apple-特定的 AFP 或其他)。

使用的文件共享協議將對客戶端隱藏 NAS 主機實現細節(如實際使用的文件系統類型),但如果使用特別受限的文件系統類型,它可能會限制 NAS 可以提供的文件共享協議功能。

例如,如果在 NAS 上使用不能使用 ACL(如 FAT32 或 exFAT)的文件系統,則客戶端通常無法調整單個文件和目錄的訪問權限,因為 NAS 無法以有效的方式將 ACL 儲存在這樣的文件系統中。基於共享的訪問權限仍然是可控的,但是任何給定共享中的所有文件和所有目錄都將具有與該共享通常具有的相同的訪問權限。

扮演 NAS 角色的系統可以是執行專用 NAS 伺服器作業系統/軟體包(例如FreeNAS/TrueNAS)的通用電腦,也可以是專門設計用於提供 NAS 服務的硬體設備(例如 NetApp Inc. 的主要產品線) .),甚至是幾個這樣的單元的容錯排列。

執行通用作業系統的通用電腦通常不稱為 NAS,即使它可能被配置用於相同的任務:此類系統通常被描述為文件伺服器。但是,由於家庭/小型企業 NAS 設備可能具有許多輔助功能,因此這種區分可能有些模糊。

如果儲存不是由基於文件的請求訪問,而是由基於塊的請求訪問(即,不是“將此數據寫入文件位置 Y 後名為 XXX.dat 的文件”,儲存訪問協議會說“寫入這個 16kB 塊”從邏輯磁碟#ZZZ的塊#NNNNNNNNNN開始的數據),那麼適用的高級分類不是NAS,而是儲存區域網路或SAN。

使用 SAN,客戶端設備將需要了解儲存中使用的實際文件系統格式——但儲存設備不必這樣做,因為它只提供對類似磁碟儲存空間的原始區域的訪問。

借助現代融合網路架構,SAN 訪問協議可能使用正常乙太網網路,如 iSCSI 或 FCoE(乙太網光纖通道),或專門針對儲存優化的硬體解決方案,如使用 FCP 或 FC-NVMe 協議的 FibreChannel 網路。

雖然小型 NAS 設備在家庭/小型企業使用中並不少見,但 SAN 解決方案幾乎只適用於大型企業。

引用自:https://unix.stackexchange.com/questions/688634