8

Я изменил настройки в файле sudoers, используя

sudo visudo 

и испортил это. Теперь, когда я пытаюсь сделать это снова или открыть любой файл с помощью sudo, я больше не могу открыть его, и я получаю это сообщение об ошибке:

>>> sudoers file: syntax error, line 7 

Что теперь?

Есть ли способ выйти из этой проблемы (отменить настройки), или мне нужно установить свежую копию linux?

Причина, по которой я получил все это, - я нажал "Q", когда мне сказали, что произошла какая-то ошибка, что было очень глупо с моей стороны.

Благодарю.

РЕДАКТИРОВАТЬ

Мой файл sudoers ничем не отличается от обычного файла sudoers. Я просто добавил строку timestamp_timeout = 0 в этот файл, и все эти проблемы возникли. Я сделал то, что предложил Джеймс, и даже удалил эту строку (timestamp_timeout = 0). Я изменил разрешение файла на 0440, которое он запрашивал, и затем загрузился нормально. Затем я получаю то же сообщение об ошибке

sudoers file: syntax error, line 7 
sudo: parse error in /etc/sudoers near line 7
как указано выше.

Что мне теперь делать ??

РЕДАКТИРОВАТЬ 2 Решено

Вот что я сделал:

  1. Загрузка с использованием livecd
  2. Удалить старый файл sudoers
  3. Сделал новый файл sudoers и скопировал все в этот файл, т.е. минимальные настройки конфигурации, которые я, к счастью, сохранил в другом файле
  4. Изменено разрешение файла на 0440
  5. Перезагрузись снова нормально с жесткого диска

Ура !!

4 ответа4

8

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

6

Просто загрузите компьютер в « однопользовательском режиме », выполнив следующие действия:

  1. перезагружать
  2. Когда Grub запускается, нажмите ESC (или выход)
  3. Нажмите «e» для редактирования текущей строки
  4. Добавьте 'single' в конец строки, содержащей 'linux'
  5. Загрузка (нажмите b)

Это запустит компьютер только с одним пользователем root. Оттуда выполните следующие действия:

  1. /usr/bin/vim /etc /sudoers (или используйте nano, вам будет проще) решить проблему
  2. Если вы не уверены в проблеме, попробуйте скопировать включенный пример sudoers из "/usr/share /doc /sudo /examples" (отличается) и, конечно, добавьте туда своего пользователя.
  3. Сохраните файл, выйдите из Vim
  4. Перезагрузитесь, наслаждайтесь!
3

Идея Джеймса использовать live cd (при условии, что учетная запись root не включена) является хорошей. Я бы добавил несколько пунктов.

  • Во-первых, вам может повезти, и резервная копия файла /etc/sudoers была автоматически сохранена при редактировании. Проверьте в / и т.д. для файла , который выглядит , как это sudoers~ (вы можете cd в этот каталог и запустить ls -A без привилегий суперпользователя, даже если вы не можете читать или редактировать файлы в качестве обычного пользователя).Некоторые редакторы создают такую резервную копию, если это вообще возможно, поэтому вы можете создать ее, не создав ее явно.
  • Во-вторых, если вы не знаете, как редактировать файл, вы можете разместить его (или область вокруг строки 7) здесь или где-либо еще. Несмотря на то, что сам файл связан с безопасностью, в нем нет паролей, поэтому его публикация не повредит.
  • Наконец, обратите внимание, что сообщение об ошибке, подобное тому, которое вы видели, не обязательно означает, что сама проблема буквально в строке 7. Ошибка может быть в строке 4, но отключена, так сказать, в строке 7.
0

Попробуйте нажать e для редактирования. Это должно позволить вам отредактировать файл и исправить ошибки.

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