Устраняем ошибку неправильного редактирования файла sudoers в Linux
Для чего нужен sudoers?
Файл лежит в директории /etc/ и определяет наличие или отсутствие у пользователей прав выполнять команды от имени супер администратора — командой sudo. Так же он отвечает за некоторые приятные мелочи, вроде возможности отключить ввод пароля для команды sudo каждый раз при ее выполнении.
Дефолтный файл будет содержать примерно следующие строки:
# User privilege specification
root ALL=(ALL:ALL) ALL
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
Что делать, если мы неправильно отредактировали файл?
Допустим, я хочу добавить в это файл пользователя feanor184 и разрешить ему выполнять sudo без ввода пароля. Я дописываю:
# User privilege specification
root ALL=(ALL:ALL) ALL
feanor184 ALL=(ALL:ALL) no password: ALL
и сохраняю файл.
Желаемый результат я не получил. Связано это с тем, что я неправильно указал синтаксис. Вместо «no password: ALL» нужно было написать «NOPASSWD: ALL«. Казалось бы, какая проблема? Сейчас зайдем и поменяем)
Но не тут то было…теперь при попытке открытия файла мне будет выдаваться ошибка:
feanor184@home:~$ sudo vim /etc/sudoers
>>> /etc/sudoers: syntax error near line 21 <<<
sudo: parse error in /etc/sudoers near line 21
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
файл для своего открытия требует права sudo а в этой строчке они неверно назначены. Тупиковая ситуация, если нет другого пользователя с правильными правами. Либо, копаем дальше.
Специально для данной ситуации, в линуксе есть команда:
feanor184@home:~$ pkexec visudo
==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run `/usr/sbin/visudo' as the super user
Authenticating as: feanor184,,, (feanor184)
Password:
==== AUTHENTICATION COMPLETE ===
>>> /etc/sudoers: syntax error near line 21 <<<
Вводим свой пароль и исправляем:
# User privilege specification
root ALL=(ALL:ALL) ALL
feanor184 ALL=(ALL:ALL) NOPASSWD: ALL
У меня с Sudoers отдельные терки.
В начале своего пути знакомства с Linux, умудрился на все каталоги, сделать 777 права, пришлось переустанавливать систему, т.к. не знал, как пользоваться LiveCD и прочими приблудами
Фууух… Спасибо автору!
Спасибо за информацию!!!!!
актуально
Cannot run program vistudio: No such file or directory
Вот что пишет при вводе pkexec visudo.
Спасибо.
Но у меня авторизация по ключу, поэтому пока не помогло…
Благо тебе, добрый чел!!!!!
Cannot run program visudo: No such file or directory