sudo не работает на моей серверной виртуальной машине Ubuntu 14.04 в Xenserver. Я думаю, что это сломано. Я забыл пароль пользователя root и не могу войти в него. Поскольку это виртуальная машина в XenServer, перезагрузка не показывает мне личинку. Как я могу решить проблему.

Это ошибка, которую я получаю при использовании sudo:-

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

Дополнительная информация:

ls -l /usr/bin/sudo

-rwsr-xr-x 1 root root 155008 Aug 28  2015 /usr/bin/sudo

ls -l /etc/sudoers

-r--r----- 1 root root 4 Mar  1 11:31 /etc/sudoers

Спасибо

2 ответа2

1

Я не уверен насчет xen, но с VirtualBox вы можете просто добавить Linux live iso и установить приоритет загрузки выше, чем виртуальный жесткий диск. После этого вы сможете загрузить Linux и получить доступ к виртуальному жесткому диску, смонтируйте корневой раздел с помощью

sudo mount /dev/sdxx /mountpoint 

Или автомонтирование. затем перейдите в /etc/sudoers и исправьте неправильную строку.

sudo vim / точка монтирования / etc / sudoers

Или нано или любой другой текстедитор, который вы предпочитаете.

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

0

Спасибо за вашу помощь. Я только что решил свою проблему.

Поскольку это была виртуальная машина в XenServer, я не смог войти в grub, просто нажав shift. После поиска какое-то время я нашел способ попасть в пользователя root. Что я сделал, это:

Я щелкнул правой кнопкой мыши на проблемной ВМ -> Свойства,

затем перешел на вкладку Boot Options. Я изменил параметры загрузки ОС из:

- тихая консоль = hvc0

чтобы:

не замужем

Затем после перезагрузки я могу перейти непосредственно к приглашению root. Моим первым приоритетом была смена пароля root. Изменение пароля пользователя при первом входе в него не требует старого пароля. Я просто использовал команду passwd, и виртуальная машина попросила у меня новый пароль.

Затем я изменил параметры загрузки виртуальной машины на - quiet console = hvc0 и сделал перезагрузку.

Я уже клонировал ВМ на другой сервер. Но так как эта виртуальная машина является живым сервером, мне пришлось восстанавливаться после проблемы. Я отправил файл sudoers из клона в другую папку на живом сервере, используя привилегию root, поскольку при прямом копировании файла произошла ошибка. Затем копируется файл в файл sudoers в живой виртуальной машине и вуаля!

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