Filesystems

/proc/mounts 中顯示的掛載選項

  • June 20, 2013

IIRC 然後顯示的安裝選項/proc/mounts已更改。前段時間acl和顯示,user_xattr現在似乎只有在這些功能關閉時才會顯示 。noacl``nouser_xattr

這是在哪裡配置的?這是否取決於文件​​系統程式碼的編譯預設值?如何檢查卷是否支持例如 ACL?有沒有比用setfacl,測試更好的解決方案getfacl

Upstream 決定啟用acluser_xattr 在預設情況下將它們作為掛載選項刪除(noacl/nouser_xattr 仍然是有效mount選項,因此會顯示它們)。

一些文件系統類型支持沒有掛載選項的 ACL,其他文件系統類型只支持掛載選項。對於 ext2/ext3/ext4,包括 acl/noacl 在內的一些預設掛載選項儲存在文件系統中(您可以在 參考資料中看到這一點tune2fs -l /dev/BLOCK_DEVICE | grep '^Default mount options:')。正如don_crissti所指出的,對於 ext4,是否顯示該選項取決於核心版本(從核心 2.6.39 開始,acl無論文件系統說什麼,都預設打開)。vfat 和 minix 等文件系統不支持 ACL。tmpfs、xfs 和 zfs 等文件系統始終支持 ACL。

除非您想建構和維護一個包含文件系統類型、版本、檢查預設值的命令和核心版本的大表,否則無法通過掛載選項或文件系統特性來確定文件系統是否支持 ACL。您無法通過純粹的觀察來判斷,getfacl因為它總是至少會報告 unix 權限。即使文件系統支持 ACL,它也可能不支持您想要的 ACL 類型。所以最好的辦法是呼叫setfacl(或底層 C API)來嘗試設置你想要的 ACL。如果錯誤狀態為 EOPNOTSUPP(不支持操作),您將知道文件系統不支持(這種類型的)ACL。

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