На этот вопрос уже есть ответ:
Я отредактировал свой файл sudoers в / etc, и после этого я больше не могу использовать sudo. Я получаю это всякий раз, когда запускаю команду:
sudo: >>> /etc/sudoers: syntax error near line 30 <<<
sudo: parse error in /etc/sudoers near line 30
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
Как ее решить?
Загрузитесь в режиме восстановления из меню GRUB (удерживайте клавишу SHIFT во время загрузки, чтобы открыть это меню), войдите в корневую оболочку.
Сначала вам нужно разрешение на запись для редактирования sudoers, поэтому запустите
mount -o remount,rw /
Затем используйте visudo
и верните свою ошибку. visudo
проверит, соответствует ли полученный файл sudoers требуемому синтаксису.
По умолчанию visudo
использует vi
в качестве редактора, но вы можете указать ему использовать ваш любимый текстовый редактор с переменной среды EDITOR
, e. g.:
EDITOR=nano visudo
Была такая же проблема,
sudo: >>> /etc/sudoers: syntax error near line 25 <<<
sudo: parse error in /etc/sudoers near line 25
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
Более простой способ ее устранения:
pkexec visudo
Ниже приведен файл по умолчанию sudoers
для Ubuntu:
# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
# Uncomment to allow members of group sudo to not need a password
# %sudo ALL=NOPASSWD: ALL
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL) ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
Надеюсь, он поможет вам, мой друг.
Вы также можете редактировать /etc/sudoers
в любом текстовом редакторе, который вам нравится:
EDITOR=gedit visudo
будет использовать для него gedit. Но вы должны запустить его из оболочки. В противном случае вы не сможете читать сообщения об ошибках.
Это решило ту же проблему для меня:
pkexec chmod 440 /etc/sudoers
pkexec chmod 775 /etc/sudoers.d
pkexec chmod 440 /etc/sudoers.d/README