Я искал, как решить проблему изменения прав доступа к каталогу, в котором находится файл sudoers
(в моем случае /etc/
).
Этот вопрос указывает на ту же проблему, однако решение неосуществимо, потому что вам все еще нужны привилегии sudo, которые недоступны.
Однако, если бы был способ получить доступ к сеансу с привилегиями root, могу ли я запустить chmod -R ugo+r /etc/
и вернуть все в нормальное состояние? Как я могу войти через SSH (я использую PuTTY) и вернуть его в нормальное состояние?
В настоящее время я не могу перезагрузиться в безопасном режиме, так как это облачный сервер от клиента и его нет достичь. Это машина Ubuntu 16.04 LTS, и я мог бы попытаться запросить учетные данные пользователя root, хотя я читал, что их нет (поэтому я понятия не имею, как выполнить вход в систему как root ...)
РЕДАКТИРОВАТЬ: Теперь я даже не могу соединиться с PuTTY ... Пожалуйста, помогите!
РЕДАКТИРОВАТЬ2: после следования предоставленному совету возникает ошибка аутентификации pkexec
после ввода правильного пароля
soporteit@redacted:~$ pkexec chmod 555 /etc/sudoers
==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run `/bin/chmod' as the super user
Authenticating as: Soporte IT,,, (soporteit)
Password:
polkit-agent-helper-1: error response to PolicyKit daemon: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: No session for cookie
==== AUTHENTICATION FAILED ===
Error executing command as another user: Not authorized
This incident has been reported.
soporteit@redacted:~$
EDIT2: до сих пор было невозможно выполнить это действие из оболочки. Машина продолжает блокировать наши действия и после предыдущей ошибки аутентификации блокирует наш IP. Попробуем перезагрузить виртуальную машину, используя этого урока и войдите в режим root
, чтобы изменить права доступа к файлу
ОП. Таким образом, я дошел до перезагрузки в безопасном режиме виртуальной машины Ubuntu (системный администратор должен был).
Оттуда мы выполнили mount -o ro,remount /
Перешли к этому из этого вопроса и изменили часть -o rw
на -o ro
С помощью этих 2 команд:
pkexec chmod 555 /etc/sudoers
pkexec chmod 555 /etc/sudoers.d/README
Y необходимо перепроверить историю моего терминала, чтобы подтвердить, потому что у меня та же проблема на прошлой неделе.
Хорошо, проверил. Я тоже:
pkexec chown root:root /usr/bin/sudo && chmod 4755 /usr/bin/sudo