このドキュメントで説明するソフトウェアは、Extended SupportまたはSustaining Supportのいずれかにあります。 詳細は、https://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdfを参照してください。
Oracleでは、このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお薦めします。
ファイルに対するACLルールを追加または変更するには、setfaclコマンドを使用します。
# setfacl -m rules
file
...
ルールは次の形式をとります。
- [d:]u:
user
[:permissions
] 名前またはユーザーIDで指定されたユーザーのアクセスACLを設定します。 ユーザーの指定がない場合、権限は所有者に適用されます。
- [d:]g:
group
[:permissions
] 名前またはグループIDで指定されたグループのアクセスACLを設定します。 グループの指定がない場合、権限は所有グループに適用されます。
- [d:]m[:][:
permissions
] 所有グループのすべての権限とユーザーおよびグループのエントリすべてを結合した、有効な権限マスクを設定します。
- [d:]o[:][:
permissions
] その他(他のいずれのルールも適用されない全員)のアクセスACLを設定します。
権限は、chmodで使用されるように、読取り、書込みおよび実行を示すr
、w
およびx
です。
d:接頭辞を使用して、ディレクトリのデフォルトACLにルールを適用します。
ファイルのACLを表示するには、次の例のようにgetfaclコマンドを使用します。
# getfacl foofile
# file: foofile
# owner: bob
# group: bob
user::rw-
user::fiona:r--
user::jack:rw-
user::jill:rw-
group::r--
mask::r--
other::r--
拡張ACLがファイルに対してアクティブな場合は、次の例のようにlsに-lオプションを使用すると、権限の後にプラス記号(+
)が表示されます。
# ls -l foofile
-rw-r--r--+ 1 bob bob 105322 Apr 11 11:02 foofile
次に、ディレクトリおよびファイルのACLを設定および表示する例を示します。
ユーザーにファイルまたはディレクトリへの読取りアクセス権を付与します。
# setfacl -m u:user
:r file
ファイルまたはディレクトリの名前、所有者、グループおよびACLを表示します。
# getfacl file
ACLではなく有効な権限マスクを変更して、すべてのグループおよびユーザーのファイルへの読取りアクセスを削除します。
# setfacl -m m::rx file
-xオプションは、ユーザーまたはグループのルールを削除します。
ファイルのACLからユーザーのルールを削除します。
# setfacl -x u:user
file
ファイルのACLからグループのルールを削除します。
# setfacl -x g:group
file
-bオプションは、ファイルまたはディレクトリから拡張ACLエントリをすべて削除します。
# setfacl -b file
ファイルf1
のACLをファイルf2
にコピーします。
# getfacl f1
| setfacl --set-file=- f2
ディレクトリのその他に対して読取りおよび実行アクセスのデフォルトのACLを設定します。
# setfacl -m d:o:rx directory
ディレクトリのACL設定を、継承可能なデフォルトのACL設定に昇格させます。
# getfacl --access directory
| setfacl -d -M- directory
-kオプションは、ディレクトリからデフォルトのACLを削除します。
# setfacl -k directory
詳細は、acl(5)
、setfacl(1)
およびgetfacl(1)
の各マニュアル・ページを参照してください。