Я только что запустил chmod 765 -r ./
, надеясь, что последняя часть (./
) позволит мне запустить команду в текущем рабочем каталоге. Этот текущий рабочий каталог был моим проектом Laravel. Теперь я не мог получить к нему доступ, и когда я запускаю ls -l
, я вижу d---------
перед ним.
Означает ли это, что я не имею никакого контроля над этим? Включая запуск другой команды chmod 777
, потому что, когда я пытаюсь это сделать, я получаю отказ в разрешении.
$ chmod 0000 Foo
$ ls -l
d--------- 2 myuser mygroup 4.0K Aug 29 20:33 Foo
d---------
означает каталог с 0000 полномочиями
Вот то, как я 'восстанавливаю' полномочия на 'в/home/$USER' каталог:
# recursively Restore ownership of directory
sudo chown -R $USER:$USER /home/$USER/Path/To/Dir/
# Set perms on directories
find ~/Path/To/Dir/ -type d -exec chmod 0750 {} \;
# Set perms on files
find ~/Path/To/Dir/ -type f -exec chmod 0640 {} \;
# Set perms on sh script files
find ~/Path/To/Dir/ -type f -iname '*.sh' -exec chmod 0750 {} \;