Исправление ошибки user is not in the sudoers file

sudo errorЗачастую при использовании команды sudo можно столкнуться с ошибкой «[имя_пользователя] is not in the sudoers file. This insident will be reported». Выполнить команду при этом не получается. В этой статье поговорим о причине ошибки и о методах её устранения.

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

Решение проблемы видится простым — добавить пользователя в файл sudoers. Можно добавить туда и группу пользователей.

Обратите внимание на пример файла sudoers на скриншоте ниже. Красным выделены учетная запись и группа, которые могут использовать sudo. Как видите, в данном случае её могут использовать пользователь root и пользователи, входящие в группу sudo.

Исправление ошибки user is not in the sudoers file
Пример файла sudoers.

Полный путь к файлу это /etc/sudoers. В принципе, достаточно просто открыть файл от пользователя с правами администратора и откорректировать (если Вы не знаете пароль суперпользователя root, его можно сбросить по рекомендациям из следующей статьи). Но я рекомендую команду visudo, так как она дополнительно проверяет синтаксис файла /etc/sudoers при сохранении. Вариантов несколько:

1. Добавить пользователя

Просто добавьте строку вида

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

2. Добавить группу, в которую входит пользователь

%[имя_группы] ALL=(ALL:ALL) ALL

Однако, возможно, Вы не хотите давать доступ к sudo всем членам этой группы. Тогда этот способ Вам не подойдёт.

3. Добавить пользователя в группу, которой разрешен доступ к sudo

Для этого достаточно отредактировать файл /etc/group. Делать это тоже нужно из-под учетки с правами администратора. Найдите нужную группу в файле /etc/group и впишите в неё имя пользователя.

На скриншоте ниже мы видим, что группа sudo пуста.

Группы в Linux

Впишите имя пользователя после двоеточия и сохраните файл. Если в группе уже есть пользователь или пользователи, новых нужно добавлять через запятую без пробелов.

Другой способ добавления пользователя в группу — команда usermod. Подробнее о группах пользователей в Linux можно прочитать в статье по этой ссылке.

Если выбрать последний из трёх способов, то потребуется перезагрузка.

После вышеописанных действий ошибка user is not in the sudoers file появляться не будет.

Добавить комментарий

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