ACL グループ権限で書き込み権限がまだ許可されていない

ACL グループ権限で書き込み権限がまだ許可されていない

ファイルシステムに「/etc/file.conf」というファイルがあります。

$ getfacl /etc/file.conf
getfacl: Removing leading '/' from absolute path names
# file: etc/file.conf
# owner: root
# group: root
user::rw-
group::r--
other::r--

私のアカウント「userr」に書き込み権限を与えて、Python スクリプトがそこに書き込めるようにしたいです。このアカウントは root によって所有されているので、新しいグループを作成して、それに setfacl を設定することを考えました。

$ sudo groupadd rsnap
$ sudo usermod -a -G rsnap userr
$ id userr
uid=1000(userr) gid=1000(userr) groups=1000(user),27(sudo),1001(rsnap)
$ sudo setfacl -m g:rsnap:rw /etc/file.conf

$ getfacl /etc/file.conf
getfacl: Removing leading '/' from absolute path names
# file: etc/file.conf
# owner: root
# group: root
user::rw-
group::r--
group:rsnap:rw-
mask::rw-
other::r--

しかし..

$ echo "Test" >> /etc/file.conf
-bash: /etc/file.conf: Permission denied

何を見逃したのでしょうか?

答え1

変更しました/etc/rsnapshot.confが、 でテストしました/etc/file.conf

以下の方法でマスクを有効にする必要があります:

setfacl -m m:rw- filename

または

setfacl -m m::rw- filename

OS によって異なります。この種の ACL は標準化されていないことに注意してください。1993 年の関連標準提案は 1997 年に撤回されました。

ところで、マスクがすでに設定されている可能性があることに気づきました。つまり、まだ間違ったファイル名を使用していることになります。

この時代遅れの ACL 提案では、標準提案が完成せず、顧客が望むものではないという合意があったため、問題が頻繁に発生します。

関連情報