среда, 11 февраля 2015 г.

Fedora 21.Как получить права root или как разрешить доступ пользователю к команде sudo


Команда sudo предоставляет возможность пользователям выполнять команды от имени root, либо других пользователей. Правила, используемые sudo для принятия решения о предоставлении доступа, находятся в файле /etc/sudoers; язык их написания и примеры использования довольно подробно изложены в man 5 sudoers.


Чтобы дать пользователю полный доступ к команде sudo необходимо добавить в конфигурационный файл строку
username        ALL=(ALL)       ALL
При такой конфигурации при наборе команды sudo, вы должны будете указывать свой пароль( пароль пользователя, а не root-а). Для того чтобы пароль не запрашивался вовсе, строку нужно поправить следующим образом:
username        ALL=(ALL)       NOPASSWD: ALL
Вместо username необходимо подставить имя вашего пользователя.
Определившись с типом доступа правим конфигурационный файл:
  • открываем терминал
  • становимся рутом
   su -
  • запускаем редактор
EDITOR=gedit visudo
(Вместо gedit может использоваться любой другой текстовой редактор)
  • вставляем строку в самый конец файла, сохраняем изменения и выходим
Вам больше не нужны права суперпользователя и вы будете выполнять дальнейшие команды от обычного пользователя. Для этого закончите сеанс root-а набрав в терминале:
exit
Проверить, работает ли sudo можно, набрав в терминале:
sudo whoami
Если ответ будет root, то всё было сделано правильно.

Если вам кажется, что настройки sudoers не применились

Начиная с Fedora 11 конфигурационный файл /etc/sudoers содержит директиву
#includedir /etc/sudoers.d
Она вставляет в конфигурационный файл содержимое всех файлов из каталога /etc/sudoers.d взятых в алфавитном порядке. Sudo проверяет все директивы конфигурационного файла по очереди и применяет последнюю из подошедших.

Если ваши настройки не применились, проверьте нет ли в этих файлах директив с более высоким приоритетом.

1 комментарий: