/proc/mounts に表示されるマウントオプション

/proc/mounts に表示されるマウントオプション

IIRCに表示されているインストールオプションが/proc/mounts変更されました。aclとはしばらく前に表示されていますが、user_xattrこれらの機能がオフになっている場合にのみ表示されているようですnoaclnouser_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をサポートしていないことがわかります。

関連情報