Назад | Перейти на главную страницу

Как установить разрешения на использование ls

У меня есть папка (которая принадлежит другому пользователю, но той же группе), и я хочу просмотреть ее содержимое, но всегда получаю следующее сообщение об ошибке:

"ls: cannot open directory .: Permission denied"

Но у группы есть rwx-разрешения!

Например:

Какие разрешения мне нужно установить, чтобы user1 разрешено просматривать содержимое папки и писать в нее?

Разрешения на выполнение должно быть достаточно для перечисления содержимого каталога. Но вы должны убедиться, что все каталоги в родительском дереве также имеют разрешение на выполнение, иначе user1 не может пройти по дереву до этого каталога, который вы хотите ls.

Например, если вы хотите проверить содержимое /var/www но у вас нет прав доступа к каталогу /var, тогда ты не можешь сделать ls /var/www потому что ты не можешь ходить по дереву / вплоть до /var/www.

Другая проблема может возникнуть, если включен SELinux. Это включено?

редактировать

Очевидно, вам нужно использовать 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

Какой у вас дистрибутив, какая версия?