最初は、ファイルに対する次の権限があります。
# file: jar
# owner: my_user
# group: my_user
user::rw-
group::rw-
other::r--
このコマンドを実行した後:
setfacl -m u:my_user:--- jar
次の権限を取得してください。
# file: foobar
# owner: my_user
# group: my_user
user::rw-
user:my_user:---
group::rw-
mask::rw-
other::r--
my_user
たとえば、このファイルを読み取る権限がないと予想しましたが、..
答え1
次のコマンドを試してください。
setfacl -m u::--- jar
この特攻隊を使用すると、不動産所有者に申請することができます。
答え2
なぜそんなことを期待しますか?
~からman setfacl
マニュアルページ:
setfaclユーティリティは、次のACLエントリ形式を認識します(明確にするためにスペースが挿入されています)。
[d[efault]:] [u[ser]:]uid [:perms]
ユーザーの権限を指定します。 uid が空の場合、ファイル所有者の権限です。
[d[efault]:] g[roup]:gid [:perms]
グループの権限を指定します。 gidが空の場合は、グループの権限があります。
[d[efault]:] m[ask][:] [:perms]
効果的な権限マスキング
[d[efault]:] o[ther][:] [:perms]
他人の許可。
ACLは、既存のUnixアクセス制御(所有者、グループと所有者、グループなどの権限マスク)とは異なります。
既存のアクセス制御と同じユーザーまたはグループに対してACLが必要な理由は考えられませんが、Unix哲学はこの理由でACLを禁止する必要があることを示唆していません。setfacl
あなたがこれをすることができて嬉しいです。キスとても良いです。
この動作が気に入らず、ユーティリティがこの状況を「自動検出」できるようにするには、独自のラッパーを作成できますsetfacl
。シェルスクリプトでは、stat -c %U FILE
所有者名とstat -c %G FILE
ファイルまたはディレクトリグループ名を取得するために使用できますFILE
。私の経験によれば、これらのラッパー(ファイルの所有権を管理するだけでなく、すべてのファイルの所有権を管理するための)は、複雑なユーザーとグループのセットを持つ組織内にsetfacl
どこにも存在します。