BTRFSで豊富なアクセス制御リストを適用して使用する方法

BTRFSで豊富なアクセス制御リストを適用して使用する方法

私はLinuxの豊富なアクセス制御リストについて学んでいます。私の即時の目標は、このグループのメンバーにサブディレクトリツリー(その中のすべてのファイルとディレクトリ)の所有者と同じ権限を付与することです。

私はsetfattrとgetfattrのマニュアルページを見ました。これらのマニュアルページのどれも利用可能なRichACLのリストを提供しません。 (私は実際にBTRFSと互換性のあるRichACLにのみ興味があります。)

ここにもう一つの良い資料がありますrichacl:豊富なアクセス制御リスト - Linuxのマニュアルページ(7)これはいくつかのコンテキストを提供します。

次のようないくつかの簡単な例を作成しました。

setfattr -n user.comment -v "this is a comment" test.txt

以下は:

getfattr test.txt

setfacl私はこの仕事がと違うことを知っていますgetfacl

また、拡張ファイル属性には4つの名前空間があることもわかっています。

  • ユーザー
  • 信頼できる
  • 安全
  • システム

私はRichACLがPOSIX ACLよりも豊富であることを知っています。 ACLは拡張属性と同じではありません(ただし、xattr名前空間に保存できます)。私が望むタスクの詳細はファイルシステムによって異なることを知っており、大丈夫です。私はBTRFSだけに興味があります。

しかし、私は情報が足りません。何でも役に立つことをしなさいしかし。私が言ったように、私が最初にやりたいことはグループに所有者と同じ権限を付与するファイルやディレクトリの。次に、このディレクトリ内のサブディレクトリとファイルにそれを継承したいと思います。

いくつかの具体的な例は次のとおりです。私が適していると思う場合は、グループのメンバーが同じようなことを行うことがchmodできるchatttrことを願っています。chown

編集:回答の一部として豊富なACLを読み取って設定するために使用されるユーティリティ(プログラム)も参照してください。私はsetfattrそれが豊富なACLで使用されているのを見ました。しかし、というユーティリティへの参照も見ましたが、setrichaclArch Linuxではそのようなユーティリティを見つけることができません。

ACLの基本カーネル構成情報:

$ zcat /proc/config.gz | grep -i acl
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_JFS_POSIX_ACL=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_BTRFS_FS_POSIX_ACL=y
CONFIG_F2FS_FS_POSIX_ACL=y
CONFIG_FS_POSIX_ACL=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_JFFS2_FS_POSIX_ACL=y
CONFIG_EROFS_FS_POSIX_ACL=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFSD_V2_ACL=y
CONFIG_NFSD_V3_ACL=y
CONFIG_NFS_ACL_SUPPORT=m
CONFIG_CEPH_FS_POSIX_ACL=y
CONFIG_9P_FS_POSIX_ACL=y

答え1

メインラインのLinuxカーネルはRich ACLをサポートしていないことがわかりました。

源泉:https://wiki.samba.org/index.php/NFS4_ACL_overview#Linux

また、2019年5月2日現在:

Re: パッチ overlayfs: ext4 upperdir の空の NFSv4 ACL を無視する - Andreas Gruenbacher

実装のパッチは何度も拒否され、これ以上の作業を行う人はいません。

この情報を提供してくれたRedditユーザーProgandyに感謝します。

関連情報