我有一个文件夹(由另一个用户拥有但属于同一组)并且我想查看其内容,但我总是收到以下错误消息:
"ls: cannot open directory .: Permission denied"
但是该组具有rwx权限!
例如:
- 文件夹/var/log/某个文件夹归
www-data:www-data
- 用户
user1
属于组www-data
(但这不是主组)。
我必须设置哪些权限才能user1
查看文件夹内容并写入内容?
答案1
编辑
显然,您需要使用newgrp www-data
使该补充组成为您的主组。此后,您就可以ls
访问该目录了。
对我来说,它不需要newgrp
:
$ ls -l
drwxr-x--- 2 root adm 4096 Aug 19 14:26 ls-test
$ id
uid=1000(ott) gid=1000(ott) groups=1000(ott),4(adm),5000(vmail)
$ ls -l ls-test/
total 0
-rw-r--r-- 1 root root 0 Aug 19 14:26 xxx
你的发行版是什么,什么版本?
答案2
执行权限应该足以列出目录内容。但您必须确保父树中的所有目录也具有执行权限,否则user1
无法遍历树到您想要的目录ls
。
例如,如果您想检查的内容,/var/www
但是您没有该目录的权限/var
,那么您就无法这样做,ls /var/www
因为您无法从/
下到上遍历树/var/www
。
另一个问题可能是 SELinux 是否已启用。它启用了吗?