ファイルの ACL を変更するには、chacl コマンドを使用します。 ACL は、2 つの異なる形式で chacl に指定できます:エントリのリストとして、または chmod のような構文を使用します。デフォルトでは、chacl は現在の ACL にエントリを追加します。また、ACL が実際にどのように機能するかについて、簡略版の setfacl コマンドよりも詳しい情報を提供します。
たとえば、ファイル resume.xml を読み取ることができるユーザーとしてユーザー alex を追加するには、次のような chacl (ACL の変更) コマンドを使用します:
$ chacl u::rw-,g::r--,o::---,u:alex:r--,m::rw- resume.xml
getfacl コマンドを使用して履歴書の ACL を取得すると、ファイルへのアクセス権を持つユーザーのリストにユーザー alex が実際に追加されていることがわかります:
$ getfacl resume.xml # file: resume.xml # owner: wvh # group: wvh user::rwx group::r-- other::--- user:alex:r-- mask::rw-注意 注:内容は同じですが、getfacl コマンドの出力形式は、Linux システムで使用されている ACL スイートのバージョンによって異なります。
chacl コマンドの例
1. ファイルの ACL を変更するには:
# chacl u::r-x,g::r-x,o::r-- file
2. ディレクトリのデフォルト ACL を設定するには:
# chacl -d u::rwx,g::r-x,o::r-- /anydir/
3. ACL を削除するには:
# chacl -R file
4. ディレクトリのデフォルト ACL を削除するには:
# chacl -D /anydir/
5. すべての ACL を削除するには:
# chacl -B file
6. ファイル/ディレクトリの ACL を一覧表示するには:
# chacl -l file
7. アクセス ACL を再帰的に設定するには:
# chacl -r u::r-x,g::r-x,o::r-- /tmp/