アクセス制御リスト(ACL)は、ファイルシステムに追加の、より柔軟なアクセス許可メカニズムを提供します。 UNIXファイル権限を支援するように設計されています。 ACLできますの権限のユーザーまたはグループへのディスク資源です。
インストール
aclパッケージはsystemdの依存関係であり、すでにインストールされているはずです。
Aclを有効にする
ACLを有効にするには、ファイルシステムをaclオプションでマウントする必要があります。 Fstabを使用して、システム上で永続的にすることができます。,
aclオプションがファイルシステムのデフォルトマウントオプションとして既にアクティブになっている可能性があります。 Btrfsは行い、Ext2/3/4ファイルシステムも行います。 
#tune2fs-l/dev/sdXY|grep"Default mount options:"
Default mount options:user_xattr acl
デフォルトのマウントオプションがオーバーライドされていないことも確認してください。noacl/proc/mounts関連する行にあります。,
ファイルシステムのデフォルトのマウントオプションは、tune2fs -o option partitionコマンドを使用して設定できます。
# tune2fs -o acl /dev/sdXY
/etc/fstabのエントリの代わりにデフォルトのマウントオプションを使用すると、外部ドライブにとって非常に便利です。acl他のlinuxマシンでもオプション。 すべてのマシンで/etc/fstabを編集する必要はありません。注:
- aclは、ext2/3/4ファイルシステムを作成するときにデフォルトのマウントオプションとして指定されます。, これは- /etc/mke2fs.confで設定されています。
- デフォルトのマウントオプションは/proc/mountsにはリストされていません。li>
 
ヒント:
--testフラグを追加することで、権限を変更せずにファイル/ディレクトリの権限の変更をリストすることができます。,
他の人の権限を設定するには:
# setfacl -m "other:permissions" <file/dir>
新しく作成されたすべてのファイルまたはディレクトリが親ディレクトリからエントリを継承できるようにするには(これはディレクトリにコピーされるファイルには影響しません):
# setfacl -dm "entry" <dir>
特定のエントリを削除するには:
# setfacl -x "entry" <file/dir>
デフォルトを削除するにはエントリ:
# setfacl -k <file/dir>
すべてのエントリを削除するには(所有者、グループおよびその他のエントリが保持されます):
# setfacl -b <file/dir>
 この記事またはセクションの事実,
この記事またはセクションの事実,
理由:
--maskオプション(setfacl(1)から取得された)に関する元のメモが不正確であると判断されましたが、新しいメモも正し 詳細はトークページをご覧ください。 注:setfaclのデフォルトの動作は、
--maskエントリが明示的に指定されていない限り、ACLマスクエントリを再計算することです。 マスクエントリは、ユーザー(所有者以外)およびグループに対して許可される最大の権限を示します。, 明示的に設定しない限り、これはデフォルトグループの権限と一致します。 を明らかにこのように、そのグループを所有するディレクトリr-xアクセス権を表します。 この理由は、Aclをサポートしていないシステムからのファイルが、サポートしているシステムで使用できるようになったときに驚きがないためです。.ヒント:すべてのファイルとディレクトリに再帰的に操作を適用するには、
-R引数を追加します。,c
#ファイル:abc#所有者:誰か#グループ:someoneuser::rw-user:johnny:r-xgroup::r--mask::r-xother::r--
すべてのACLエントリを削除します。
# setfacl -b abc
権限を確認します。
#getfacl abc
#file:abc#owner:someoneuser::rw-group::r--other::r--
lsコマンドの出力
指定されたファイルのaclがあることに気付くでしょう+iv id=の出力でunixアクセス許可の後に+(プラス記号)が表示されるため、指定されたファイルのaclがあることに気付くでしょう”9c35d978ec”>
.,
$ls-l/dev/audio
crw-rw----+ 1 平成14年4月 9 12:49/dev/audio
$getfacl/dev/audio
webサーバーにプライベートファイルの実行権限を付与する
次の手法は、webサーバーのようなプロセスを、ユーザーのホームディレクトリにあるファイルへのアクセスを許可する方法について説明します。,
以下では、webサーバーがユーザーhttpとして実行され、geoffreyのホームディレクトリ/home/geoffreyへのアクセスを許可すると仮定します。
最初のステップは、ユーザーに実行権限を付与することですhttp:
# setfacl -m "u:http:--x" /home/geoffrey
注:ディレクトリに対する実行権限は、ディレクトリのコンテンツを,
ユーザーhttp/home/geoffrey内のファイルにアクセスできるようになったため、他のユーザーはアクセスする必要がなくなりました。
# chmod o-rx /home/geoffrey
getfacl変更を確認するには、
$getfacl/Home/geoffrey
上記の出力が示すように、otherの権限はなくなりましたが、ユーザーhttpはまだファイルにアクセスできるため、セキ,
も参照してください
- getfacl(1)
- setfacl(1)
- Linux上のPOSIXアクセスコントロールリスト
- ディレクトリ内のすべてのフォルダ/ファイルに対してデフォルトのファイル権限を設定するにはどうすればよいですか?
 
                                                                    
Leave a Reply