概要
ACLは、ファイルシステムオブジェクトに対する権限を、ユーザー、グループ、またはその他の識別子に応じて細かく制御できる機能です。getfaclは、これらのACL設定を読み込み、現在適用されている権限ルールを表示します。
主な特徴
- 従来のrwx権限を超える詳細な権限設定の確認
- 特定のユーザーまたはグループに対する個別の権限確認
- ディレクトリのデフォルトACL確認機能を提供
- 再帰的にサブファイルおよびディレクトリのACLを確認
主なオプション
getfaclコマンドは、ACL情報を照会する際に、様々なオプションを通じて出力形式を制御したり、特定の種類のACLのみを照会したりできます。
照会と出力
生成されたコマンド:
コマンドを組み合わせてみてください。
説明:
`getfacl` コマンドを実行します。
これらのオプションを組み合わせて、AIと一緒に仮想的にコマンドを実行してみてください。
使用例
getfaclコマンドを使用してファイルおよびディレクトリのACLを確認する様々な方法を示します。
特定のファイルのACL確認
getfacl sample.txt
sample.txtファイルの現在のACL設定を確認します。
ディレクトリのデフォルトACL確認
getfacl -d my_directory
my_directoryディレクトリに設定されたデフォルトACLを確認します。このACLは、そのディレクトリ内に新しく作成されるファイル/ディレクトリに適用されます。
ディレクトリと配下項目のACL再帰的確認
getfacl -R data_dir
data_dirディレクトリと、その中にあるすべてのファイルおよびサブディレクトリのACLを再帰的に確認します。
ヘッダーなしでACL情報のみ出力
getfacl --omit-header report.log
report.logファイルのACL情報をヘッダーなしで簡潔に出力します。スクリプトで解析する際に便利です。
インストール
getfaclコマンドは通常、'acl'パッケージの一部として提供されます。ほとんどのLinuxディストリビューションにはデフォルトでインストールされていますが、最小インストール環境では手動でインストールする必要がある場合があります。
Debian/Ubuntu
sudo apt update && sudo apt install acl
aptパッケージマネージャーを使用して'acl'パッケージをインストールします。
RHEL/CentOS/Fedora
sudo dnf install acl
# または
sudo yum install acl
yumまたはdnfパッケージマネージャーを使用して'acl'パッケージをインストールします。
ヒントと注意点
ACLを効果的に使用し、管理するためのヒントと注意点です。
ACL適用有無の確認
ファイルやディレクトリにACLが適用されている場合、'ls -l'コマンドを実行した際に権限文字列の末尾に'+'記号が付加されます。(例: -rw-rw-r--+)
- ls -l 出力: 権限文字列末尾の'+'を確認
ACLと従来の権限の関係
ACLは、従来のrwx権限と連携して機能します。ACLが設定されると、従来の権限は'mask'として機能し、ACLに設定された最大有効権限を制限する可能性があります。'mask'エントリはgetfaclの出力で確認できます。
setfaclとの連携
ACLを設定または変更するには'setfacl'コマンドを使用する必要があります。getfaclで現在の設定を確認した後、setfaclで変更するというワークフローが一般的です。
ファイルシステムサポート
ACLはすべてのファイルシステムでサポートされているわけではありません。ext2/3/4、XFSなど、ほとんどの最新LinuxファイルシステムはACLをサポートしていますが、ファイルシステムがACLをマウントオプションで有効にする必要がある場合もあります (例: mount -o acl)。