file1 を作成し、000 権限を付与します。
[root@localhost ~]# ls -ltr file1
----------. 1 root root 0 Jan 28 08:09 file1
アクセス制御リストを使用して、ユーザー「test」にrw権限を付与します。
setfacl -m u:test:rw file1
selinuxのfile1権限が正しいです。
[root@localhost ~]# getfacl file1
# file: file1
# owner: root
# group: root
user::---
user:test:rw-
group::---
mask::rw-
other::---
ちなみにファイル権限を見ると060と表示されます。
[root@localhost ~]# ls -ltr file1
----rw----+ 1 root root 0 Jan 28 08:09 file1
Q:この060権限はどこから来ますか?
答え1
拡張属性を持つファイルの場合、acl(5)
ファイルマスクの3つのグループビットは異なる意味を持つことができます。つまりACL_MASK
、付与できる最大アクセス権ACL_USER
、ACL拡張属性に格納されている権限ですACL_GROUP_OBJ
。ACL_GROUP
マニュアルacl(5)
ページを引用すると、次のようになります。
ファイル所有者、グループ、その他の権限と特定のACLエントリとの間には対応する関係があります。つまり、所有者権限はアイテムの権限に対応します
ACL_USER_OBJ
。 ACLにACL_MASK
エントリがある場合、グループ権限はそのACL_MASK
エントリです。それ以外の項目がACL
ない場合ACL_MASK
、グループ権限は項目の権限に対応しますACL_GROUP_OBJ
。他の権限に対応するACL_OTHER_OBJ
項目に対する権限
test
これでユーザー権限を付与しrw
て完了しました。いいえ-n
オプション(「有効な権限マスクを再計算しない」)を使用すると、setfacl(1)
ACLマスクが正しく設定されますrw
。