ACL保護ディレクトリにアクセスしようとすると、lsでエラーが発生します。

ACL保護ディレクトリにアクセスしようとすると、lsでエラーが発生します。

setfaclを使用してディレクトリといくつかのファイルを設定しました。

jobq@workstation:~/Pool$ getfacl /etc/jobq
getfacl: Removing leading '/' from absolute path names
# file: etc/jobq
# owner: root
# group: jobq
user::rwx
user:jobq:rw-
group::r-x
group:jobq:rwx
mask::rwx
other::r-x

jobq@workstation:~/Pool$ sudo getfacl /etc/jobq/log.txt
getfacl: Removing leading '/' from absolute path names
# file: etc/jobq/log.txt
# owner: root
# group: jobq
user::rw-
group::rw-
group:jobq:rwx
mask::rwx
other::r--

jobq@workstation:~/Pool$ groups
jobq

ただし、次のようなコマンドを実行すると、

ls -al /etc/jobq

権限エラーが発生します。

ls: cannot access '/etc/jobq/log.txt': Permission denied
total 0
d????????? ? ? ? ?            ? .
d????????? ? ? ? ?            ? ..

ユーザーはjobqグループに属するため、jobqディレクトリへのアクセス権が必要です。私が何か誤解したことがありますか?この問題をどのように解決できますか?

ベストアンサー1

問題は次のACLにあります/etc/jobq

user:jobq:rw-

これは、ユーザーがjobqディレクトリを「検索」できず、そのls内容が表示されないことを意味します。

この問題を解決するには、権限を追加する必要がありますx。バラよりビットを実行して読み出します。 Linuxでは、ディレクトリ権限はどのように機能しますか?もっと学ぶ。

また、見ることができます「グループ」権限は制限し、「世界」権限は公開しますか?ここでグループ権限が役に立たない理由を理解してください。したがって、別の解決策は、ユーザーACLを削除し、jobq代わりにグループ権限を使用することです。

おすすめ記事