IIRCに表示されているインストールオプションが/proc/mounts
変更されました。acl
とはしばらく前に表示されていますが、user_xattr
これらの機能がオフになっている場合にのみ表示されているようですnoacl
。nouser_xattr
これはどこで構成されていますか?これはファイルシステムコードのコンパイルのデフォルト値によって異なりますか?ボリュームがACLなどをサポートしているかどうかを確認するには?setfacl
テストに使用するよりも優れたソリューションがありますかgetfacl
?
答え1
アップストリームはアクティブにすることにしacl
ましたuser_xattr
基本的に次のように削除してください。インストールオプション( noacl
/nouser_xattr
まだしたがって、有効なmount
オプションが表示されます。)
答え2
一部のファイルシステムタイプはマウントオプションなしで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をサポートしていないことがわかります。