
私のファイルシステムに「/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--
私のPythonスクリプトが書くことができるように、私のアカウント「userr」に書き込み権限があることを望みます。これはルートが所有しているので、新しいグループを作成してそれを設定することが私の考えです。
$ 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
オペレーティングシステムによって異なります。このACLは標準化されていません。 1993年に関連する標準提案は1997年に撤回されました。
注:マスクがすでに設定されている可能性があることを確認しました。だから私はまだ間違ったファイル名を使用しています。
この古い ACL 提案の問題は、標準の提案が完了しておらず、顧客が好きではないことに同意したために頻繁に発生します。