我有此文件夹并具有以下权限:
jessie@services1:~$ ls -lisa /srv/
total 12
1769 4 drwxr-xr-x 3 root root 4096 Nov 5 20:42 .
2 4 drwxr-xr-x 18 root root 4096 Oct 28 11:43 ..
386699 4 drw-rw---- 2 root docker 4096 Nov 17 20:03 vault
vault
如果我是正确的,那么当我在组中时我应该能够访问该目录docker
。
jessie@services1:~$ groups
jessie sudo www-data docker
jessie@services1:~$ id
uid=1000(jessie) gid=1001(jessie) groups=1001(jessie),27(sudo),33(www-data),998(docker)
但当我尝试访问该文件夹时,我收到权限被拒绝的提示
jessie@services1:~$ cat /srv/vault/docker-compose.yml
cat: /srv/vault/docker-compose.yml: Permission denied
里面的权限也是正确的(我认为):
root@services1:/home/jessie# ls -lisa /srv/vault/
total 12
386699 4 drw-rw---- 2 root docker 4096 Nov 17 20:03 .
1769 4 drwxr-xr-x 3 root root 4096 Nov 5 20:42 ..
389900 4 -rw-rw---- 1 root docker 424 Nov 17 20:03 docker-compose.yml
机器操作系统:Debian 10
我尝试过退出并重新登录,但似乎没有任何效果。有人知道我做错了什么吗?
答案1
386699 4 drw-rw---- 2 root docker 4096 Nov 17 20:03 vault
“否x
”rw-rw----
表示vault
该目录对于任何人来说都不可执行。root 用户未被拒绝访问但普通用户则会。
您需要该x
位才能访问目录内的文件。请参阅:
chmod g+x vault
就是您所需要的。最终的权限将是rw-rwx---
。拥有者组有 而拥有者用户没有 的情况有些不寻常x
;但由于所有者是root
,因此在这种情况下这并不重要。
一般来说(即当所有者不一定是 root 时)rwxrwx---
比 更有意义rw-rwx---
,除非所有者有理由限制自己的访问权限。请注意,所有者用户的权限对所有者很重要即使他属于拥有者群体。