ls:无法打开目录:权限被拒绝


13

username即使拥有所有权并授予所有权限,我也无法打开目录:

sudo mkdir /path/to/the/directory/
sudo chown -R username:username /path/to/the/directory/
sudo chmod -R 777 /path/to/the/directory/

我得到:

$sudo ls -al /path/to/the/directory/
total 0
drwxrwxrwx 1 username username   0 nov 16 15:13 .
drwx------ 1 root     root     208 nov 16 15:13 ..
$ ls -al /path/to/the/directory/
ls: cannot access '/path/to/the/directory/': Permission denied

可能会发生什么?


如果您有一个名为“ user”的用户,则只有“ user”。sudo chown -R $USER:$USER /path/to/the/directory/是应该的($USER将转换为您的用户名),并且当您认为sudo chmod -R 777 /path/to/the/directory/是答案时,不应允许您维护网站;-)
Rinzwind

@Rinzwind别担心,777只是我疯狂调试的结果!:-)
维克多

Answers:


15

您没有上级目录的权限

drwx------ 1 root     root   208 nov 16 15:13 ..

您必须在父目录上具有x权限才能通过该目录

drwx--x--x 1 root     root   208 nov 16 15:13 ..

要做到这一点 :

sudo chmod go+x /path/to/the

通常,默认情况下,所有用户(/ root除外)都可以读取所有目录,因此您不会遇到此问题。但是,drwx------ 1 root root 208 nov 16 15:13 ..告诉您您的用户无法读取父目录。您必须向用户添加权限才能读取该文件夹
Aegefel

是的,对所有父母都是
f35

0

我遇到了同样的问题,但是需要注销并与用户重新登录是必需的步骤。

我已经创建了组,并将用户添加到同一会话中的组中。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.