Сломанный sudo на веб-сервисах amazon ec2 linux centOS

Поэтому я понятия не имел об опасности возиться с файлом /etc/sudoers, и просто пытался внести в него простое изменение. Тем не менее, я, кажется, поместил что-то с неправильным синтаксисом, вызывая эту проблему:

$ sudo
sudo: >>> /etc/sudoers: syntax error near line 122 <<<
sudo: parse error in /etc/sudoers near line 122
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

Я больше не могу редактировать файл /etc/sudoers, потому что у меня нет прав root.

Одно исправление, которое я вижу в Интернете, заключается в использовании:

$ su -

и введите пароль root. Тем не менее, похоже, что в этом окне amazon ec2 нет пароля root, что не позволяет мне использовать su -

Другая вещь, которую я вижу, это перезагрузка компьютера и выполнение однопользовательских действий, которые позволяют вам сбросить пароль. Большая проблема в том, что это amazon ec2 и я просто SSHing в поле, у меня нет физического доступа.

Вопрос, я полностью ввернут или есть возможный обходной путь? Это не Ubuntu, а CentOS. Теперь я тоже понимаю visudo, но сайт, с которого я получил изменение, не упомянул об этом.

1 ответ

Решение

Однажды я испортил экземпляр точно таким же образом и смог восстановить его, смонтировав его том EBS из отдельного рабочего экземпляра. Есть много этапов:

  • В консоли управления EC2 остановите свой экземпляр EC2.
  • Перейдите на экран "Тома" и отсоедините проблемный том EBS от экземпляра.
  • Запустите новый, свежий микроэкземпляр, используя стандартный AMI для Linux с параметрами по умолчанию (если у вас нет другого рабочего экземпляра)
  • После запуска нового экземпляра подключите к нему проблемный том EBS.
  • Тогда смонтируйте это

После подключения в качестве каталога вы сможете получить доступ к файловой системе проблемного тома из нового экземпляра и исправить sudoers файл. Затем просто размонтируйте и отсоедините том и подключите его к другому экземпляру.

Другие вопросы по тегам