首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ls在试图访问使用ACL保护的目录时引发错误。

ls在试图访问使用ACL保护的目录时引发错误。
EN

Unix & Linux用户
提问于 2022-06-21 06:29:14
回答 1查看 27关注 0票数 3

我用setfacl设置了一个目录和一些文件。

代码语言:javascript
复制
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

但是,当我运行命令时,就像

代码语言:javascript
复制
ls -al /etc/jobq

我得到了许可错误:

代码语言:javascript
复制
ls: cannot access '/etc/jobq/log.txt': Permission denied
total 0
d????????? ? ? ? ?            ? .
d????????? ? ? ? ?            ? ..

因为用户jobq在组jobq中,所以他们应该可以访问目录。我误会什么了?我怎么才能解决这个问题?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2022-06-21 06:42:11

问题来自于/etc/jobq上的这个ACL:

代码语言:javascript
复制
user:jobq:rw-

这意味着用户jobq不能“搜索”目录,这就是阻止ls显示其内容的原因。

要解决这个问题,您需要添加x权限。详情请参见执行对读取位.Linux中的目录权限是如何工作的?

还请参阅限制“组”权限而打开“世界”权限?以了解为什么组权限在这里没有帮助。因此,另一种解决方案是删除jobq的用户ACL,转而依赖组权限。

票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/706922

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档