Исправление ошибки 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 появляться не будет.

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

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