2

Поэтому я понятия не имел об опасности возиться с файлом /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 box, похоже, не имеет пароля root, поэтому я не могу использовать su -

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

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

1 ответ1

3

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .