使用これ便利な投稿フォルダにデフォルトのグループとファイル権限を設定できます。
デフォルトの所有者(チームリードuid 1234)の設定に問題があります。
setfacl -d -m g::rwx /my/test/folder
setfacl -d -m o::rx /my/test/folder
getfacl /my/test/folder
# file: /my/test/folder
# owner: teamlead
# group: web_prod
# flags: -s-
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::rwx
default:other::r-x
その後すぐに:
[mary@boxen]# touch /my/test/folder/somefile
[mary@boxen]# ll /my/test/folder/somefile
-rw-rw-r--. 1 mary web_prod 0 Nov 6 08:58 somefile
したがって、正しいグループが割り当てられますが、新しいファイルにはそのファイルを作成したユーザーの所有権があります。新しく作成されたファイルにteamlead:web_prodの所有者/グループを含めたいと思います。
setfacl
デフォルトのユーザー設定にも効果があるようです。既存のフォルダacl構成を使用する(上記):
[mary@boxen]# setfacl -d -m u:1234:rwx /my/test/folder
次に、別のユーザーとしてファイルを生成します。 teamlead:web_prodの所有権を持ちたいです。
[mary@boxen]# touch /my/test/folder/anotherfile
[mary@boxen]# ll /my/test/folder/anotherfile
-rw-rw-r--+ 1 mary web_prod 0 Nov 6 08:58 somefile
新しいファイルには、uid 1234(チームリーダー)ではなく、そのファイルを作成した所有者の所有権があります。
私が追求することは可能ですか、それともこの問題にアプローチするのが間違っていますか?
ベストアンサー1
setfaclを使用すると、新しく作成されたファイルのデフォルト権限を設定できますが、デフォルトの所有者/グループは設定できません。
特定のユーザーが所有する新しいファイルを作成するには、ディレクトリのsetgidビットのように動作するsetuidビットが必要です。残念ながら、これは実装されていません。
setfaclを使用すると、ほとんどの場合、ほぼ同じことができます。たとえば、ACLを設定できますdefault:user:teamlead:rwx
(例setfacl -d -m u:teamlead:rwx foo
:)。これにより、他の人がファイルを所有していても、指定したユーザーが新しいファイルに書き込むことができます。