![在單一 zpool 中使用謹慎的 ZFS 資料集/檔案系統有優勢嗎?](https://rvso.com/image/770082/%E5%9C%A8%E5%96%AE%E4%B8%80%20zpool%20%E4%B8%AD%E4%BD%BF%E7%94%A8%E8%AC%B9%E6%85%8E%E7%9A%84%20ZFS%20%E8%B3%87%E6%96%99%E9%9B%86%2F%E6%AA%94%E6%A1%88%E7%B3%BB%E7%B5%B1%E6%9C%89%E5%84%AA%E5%8B%A2%E5%97%8E%EF%BC%9F.png)
我有一個在 Linux 上使用 ZFS 的 Centos 伺服器。這些磁碟位於單一 zpool 中。當您輸入時,zfs list
它會顯示單一檔案系統(?)(資料集?)tank1
,。
NAME USED AVAIL REFER MOUNTPOINT
tank1 18.4T 25.1T 18.4T /tank1
裡面tank1
有幾個目錄。我們稱它們為myFiles
、images
、 和users
有沒有優勢以這種方式設置,而不是使用zfs create
為每個目錄創建獨立的檔案系統,從而為每個目錄提供自己的共享,並控制每個檔案系統的共享方式?
所以當我輸入時zfs list
我會看到:
NAME USED AVAIL REFER MOUNTPOINT
tank1 18.4T 25.1T 18.4T /tank1
tank1/myFiles 55.0K 25.1T 55.0K /tank1/myFiles
tank1/images 55.0K 25.1T 55.0K /tank1/images
tank1/users 55.0K 25.1T 55.0K /tank1/users
答案1
您可以為每個資料集設定配額、壓縮和許多其他設定。假設您有某個程式或應用程序,並且您不希望它使用超過 20GB,您可以將其設定為資料集的配額。
如果您使用 zfs send 進行備份或複製,則可以針對每個資料集執行此操作。因此,您可能希望從僅限於特定數據集的應用程式複製數據,但不希望複製其他應用程式的巨大快取或日誌。因此,您可以將要複製的內容與您不想複製的內容分開,位於不同的資料集上。
如果您使用內建的 NFS 共用或 SMB 共用管理,則也會依資料集進行設定。
所以,答案是這完全取決於您的需求。如果您需要針對池中的不同事物資料組使用不同的 zfs 設置,則需要資料集。