User is not in the sudoers file или sudo в Debian

User is not in the sudoers file или sudo в Debian

 

Сколько раз устанавливал Debian, столько раз сталкивался с одним и тем же – настройкой прав пользователя для использования sudo. Каждый раз забывал и приходилось лезть в интернет, и искать решение. Теперь сам пишу, чтобы не искать следующий раз и вам, возможно, пригодится.

В чем суть

Итак, пользователям Ubuntu хорошо известна такая утилита как sudo, без которой вы не сможете ни установить, ни удалить программу, ни внести какие нибудь весомые изменения в работу системы. В Debian же, пользователи вместо sudo, в основном пользуются учётной записью root. Стоит только посмотреть на инструкции или HOWTO для Debian в интернете – всегда строка начинается сразу из aptitude, что подразумевает то, что  команду нужно выполнять из-под root. Но как по мне – это не есть совсем правильно, плюс годы использования Ubuntu тоже оставляют свой след. К тому же, до сих пор помню свою первую установку Debian, когда после установки KDE из под рута, в обычном сеансе пользователя у меня не работала звуковая подсистема. Сколько тогда для неопытного было мучений!

По теме:  Как отключить писк системного динамика в Debian

Исправляем “User is not in the sudoers file” (способ №1)

Для начала, если sudo у вас не установлен, такое может быть, например, если вы устанавливали лишь базовую систему без графической оболочки – установите его:

aptitude install sudo

Как можно догадаться, это делается из под рута. В других случаях sudo должен установиться с системой. Но на этом ещё не конец. Хоть sudo уже установлен, при попытке что нибудь сделать с его использованием, например проверить обновления, терминал выдаст сообщение что user is not in the sudoers file. Чтобы исправить это, существует несколько вариантов действий.

До недавнего времени я соглашался с терминалом и добавлял пользователя, то есть себя, в файл sudoers. Для изменения sudoers файла есть специальная утилита visudo, запускается она командой:

visudo

В открывшимся файле нужно найти строчку:

root ALL=(ALL) ALL

И под ней необходимо добавить такую же, только вместо root пишем свое имя пользователя (username замените на свое):

username ALL=(ALL) ALL

После этого сохранением файл, выходим из visudo, перелогиниваемся и можем пользоваться sudo – ошибка “User is not in the sudoers file” тревожить нас больше не будет. Но так как, по моему мнению, всегда нужно стремится к универсальности, я поступил по другому.

По теме:  Освобождаем место на диске в Ubuntu

Исправляем “User is not in the sudoers file” (способ №2)

Кроме прямого добавления пользователя в sudoers файл, в него также можно добавлять группы. В данном случае это группа sudo. Процесс добавления группы выглядит точно так же как и добавление пользователя, только вместо имени пользователя нужно вписать группу sudo. Выглядеть это будет так (для обозначения того, что вы добавляете группу, а не пользователя, перед sudo нужно поставить без пробелов знак процента):

%sudo ALL=(ALL) ALL

Но на самом деле добавлять эту строчку не всегда необходимо потому, как зачастую она уже есть в sudoers. Если это так, то sudoers трогать не надо а нужно лишь добавить себя в группу sudo командой:

adduser username sudo

Где username – логин пользователя. Затем перелогин и можно работать.

По теме:  Как установить DEB пакет в Debian и производных

Чем такой способ лучше чем первый? Ну во-первых – так проще. Если группа sudo прописана в sudoers, нужно всего лишь выполнить одну команду в терминале. А во-вторых – такой способ более универсальный, ведь если вы, к примеру, добавите в систему нового пользователя, которому нужно будет sudo, вам всего лишь нужно будет добавить его в группу, не трогая при этом sudoers.

На этом все. Если кому поможет буду рад.

 

комментария 4

  1. Oleh:

    bash: visudo: command not found

  2. NeXuS74:

    Дак мля.. ROOT учетка забанена какого то. А на админ юзвере вот эта хрень. И как быть тогда?

  3. Хулио:

    Ваши дистрибутивы оченб хорошие

    1. по:

      Поддерживаю!

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

 

 

 
Top