cd в каталог без разрешения

119

При cdвходе в один из моих каталогов, который называется, openfireвозвращается следующая ошибка:

bash: cd: openfire: Permission denied

Есть ли способ обойти это?

user812954
источник

Ответы:

151

Ответ @ user812954 был весьма полезен, за исключением того, что мне пришлось сделать это в два этапа:

sudo su
cd directory

Затем, чтобы выйти из режима «суперпользователя», просто введите exit.

Джонатан
источник
109

Войдите в режим суперпользователя и перейдите в каталог, в который у вас нет прав доступа. Sudo требует пароля администратора.

sudo su
cd directory
user812954
источник
2
безупречный ответ!
gaurav
46

Если это ваш каталог, предоставьте себе к нему доступ:

chmod u+rx,go-w openfire

Это дает вам разрешение использовать каталог и файлы в нем ( x) и перечислять файлы, которые в нем ( r); он также запрещает группе и другим пользователям разрешение на запись в каталог, что обычно является правильным (хотя иногда вы можете разрешить группе создавать файлы в вашем каталоге, но подумайте об использовании липкого бита в каталоге, если вы это сделаете).

Если это чужой каталог, вам, вероятно, понадобится помощь от владельца, чтобы изменить разрешения, чтобы вы могли получить к нему доступ (или вам понадобится помощь, rootчтобы изменить разрешения для вас).

Джонатан Леффлер
источник
Я уже час гуглил, пытаясь исправить тот факт, что я не мог использовать SSH без использования «sudo» (который, как я знал, должен был ошибаться) - и это исправило его. В заключение!
GrayedFox 02
25

chmod +x openfireработал у меня. Он добавляет разрешение на выполнение в папку openfire.

wcyn
источник
@Winnemucca Я не уверен. Раньше с докером не работал. Но я предполагаю, что это возможно
wcyn
6

У вас есть несколько вариантов:

  • Используйте другую учетную запись пользователя, у которой есть xправа доступа к этому каталогу.
  • Измените разрешения для каталога, чтобы ваша учетная запись пользователя xмогла выдавать разрешения.
    • Либо используйте chmod(1)для изменения разрешений, либо
    • Используйте setfacl(1)команду, чтобы добавить запись в список управления доступом для вашей учетной записи. (Для этого также требуется смонтировать файловую систему с aclопцией; см. mount(8)И fstab(5)для получения подробной информации о параметре монтирования.)

Невозможно предложить правильный подход, не зная больше о проблеме; почему права доступа к каталогу установлены так, как они есть? Зачем вам нужен доступ к этому каталогу?

sarnold
источник
3

В качестве альтернативы вы можете:

sudo -s
cd directory
howDidMyCodeWork
источник
1

Если у вас нет прав sudo на его изменение или его в вашей собственной группе пользователей / учетной записи, вы не сможете войти в него.

Проверьте man chmodв терминале дополнительную информацию об изменении разрешений для каталога.

Джон Риселвато
источник