Главная >> Инструкции >> Ошибка user is not in the sudoers file в Ubuntu

Ошибка user is not in the sudoers file в Ubuntu

Если вы создали нового пользователя в Ubuntu, и пытаетесь от его имени использовать систему, то при попытке выполнения команды sudo можете столкнуться с ошибкой: "user is not in the sudoers file this insident will be reported".

В этой небольшой инструкции мы рассмотрим почему возникает такая ошибка, а также как ее обойти и разрешить этому пользователю выполнять действия от суперпользователя.

Почему возникает ошибка user is not in the sudoers file?

Команда sudo позволяет обычным пользователям выполнять программы от имени суперпользователя со всеми его правами. Использовать команду sudo могут далеко не все пользователи, а только те, которые указаны в файле /etc/sudoers. Это сообщение об ошибке говорит буквально следующее - вашего пользователя нет в файле sudoers, а значит доступ ему к утилите будет запрещен, а об этом инциденте будет сообщено администратору.

Все неудачные попытки использовать sudo, независимо от того, был ли введен неверный пароль или у пользователя нет прав, действительно записываются в каталоге /var/log, так что вы можете посмотреть кто и когда и что пытался выполнить:

tail /var/log/auth.log

Исправление ошибки с помощью root

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

Начнем с более простого варианта, на тот случай, если у вас все-таки есть доступ к системе от имени пользователя root. Войдите от имени пользователя, у которого есть права, например, можно нажать Ctrl+Alt+T запустить утилиту su и ввести пароль:

su

В большинстве случаев в файле sudoers настроено так, что утилиту могут использовать все пользователи из группы wheel или sudo. Поэтому достаточно добавить нашего пользователя в эту группу. Для этого используйте команду usermod.

usermod -a -G wheel имя_пользователя

Или:

usermod -a -G sudo имя_пользователя

Вы также можете добавить нужную настройку для самого пользователя в файл sudoers, для этого добавьте в конец файла такую строку:

имя_пользователя ALL = (ALL) ALL

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

vi /etc/sudoers

%wheel ALL = (ALL) ALL

Или для группы sudo:

%sudo ALL = (ALL) ALL

Возможно, её будет достаточно расскоментировать, убрать решетку, которая расположена перед ней. После этого ошибка user is not in the sudoers file исчезнет и вы сможете использовать sudo. Более подробно про это все вы можете прочитать в статье настройка sudo.

Исправление ошибки с помощью режима восстановления

Если на вашем компьютере нет другого пользователя, от имени которого вы могли бы получить доступ к sudo, осталась возможность использовать режим восстановления. Для этого перезагрузите компьютер и в меню Grub нажмите E.

Откроется редактор меню загрузки. В нем найдите строку:

linux vmlinuz...

И в конец добавьте init=/bin/bash. Должно получиться вот так:

linux vmlinuz... init=/bin/bash

Дальше вы загрузитесь в оболочку /bin/bash с правами суперпользователя и от туда уже сможете выполнить все выше приведенные команды, например, добавить пользователя sudoers, добавлением его в группу wheel:

usermod -a -G wheel имя_пользователя

После выполнения команды можно перезагрузить компьютер с помощью команды reboot. Следующая загрузка пройдет в нормальном режиме и вы сможете использовать sudo.

Выводы

В этой статье мы рассмотрели что делать, если вы получаете ошибку user is not in the sudoers file, а также как добавить пользователя в sudoers ubuntu чтобы ее избежать. Если у вас остались вопросы, спрашивайте в комментариях!

На завершение видео про добавление пользователя в sudores:

https://youtu.be/-fUwk2TNfQ8

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Оцените статью

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (10 оценок, среднее: 5,00 из 5)
Загрузка...
Creative Commons License
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

12 комментариев к “Ошибка user is not in the sudoers file в Ubuntu”

  1. Подождите. То есть из под grub можно элементарно сделать пользователю себя с админскими правами? Это что за безопасность такая?..

    Ответить
    • Это режим single mode, его нельзя выплеить, т.к. он необходим для востановления. Для безопасности необходимо поставить пароль на интерактивный режим grub, и постпавить запрос пароля рута при загрузке single mode. По умолчанию просто провалитесь в рутовю консоль.

      Ответить
    • Поддерживаю.
      Потребовалось таки править resolv.conf ..... у меня есть логин созданного админа, но который не может использовать sudo, просто забыли включить. Предыдущий админ уволен и пароли/явки провалены.
      Захожу через grub под рутом, начинаю править resolv.conf, да только nano ругается.... мол, unwritable. И права не могу изменить на файл

      Ответить
      • [РЕШЕНО]
        Вошел в bash прописав строчку в загрузчике init=/bin/bash.... ОК
        На команду nano /etc/resolv.conf ругается, мол файл unwritable. Ладно, лезу в ls -l /etc/resolv.conf и вижу, что права есть для root. При попытке сменить разрешения - chmod 777 /etc/resolv.conf отвечает, что read-only file system. Проблема? Нет!
        Смотрим, какое устройство держит \ .... df -h и даем команду: mount -o remount,rw /dev/sd3 ... в моем случае. После этого файл /etc/resolv.conf доступен для редактирования. Поменял DNS на требуемый и перезагрузился. Все, заработало.

        Ответить

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

×

Сообщить об ошибке или улучшить статью

Здесь вы можете внести исправления:

Комментарий:

×