#Что означает ошибка
user is not in the sudoers file. This incident will be reported.
Сообщение «user is not in the sudoers file. This incident will be reported» означает, что вашему пользователю не разрешено выполнять команды через sudo. Это не ошибка системы: права просто не выданы. Чтобы исправить, нужен доступ администратора (root) либо физический доступ к машине.
Редактировать список sudo нужно только через visudo или добавлением в группу sudo/wheel: ручная правка /etc/sudoers с ошибкой может заблокировать sudo полностью.
sudo разрешает действия только пользователям из sudoers и связанных групп. Остальные получают отказ с записью в журнал.
#Причины и решения
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Пользователь не в группе sudo/wheelНет членства. | groups не показывает sudo или wheel. | Добавьте пользователя в группу. |
| Изменения не примененыСессия старая. | Пользователя добавили, но не перезаходили. | Выйдите и войдите заново. |
| Ошибка в /etc/sudoersНеверный синтаксис. | Сообщения о синтаксисе sudoers. | Исправьте через visudo. |
| Нет доступа к администраторуЕдинственный администратор утрачен. | Нет учётной записи root. | Восстановление через режим восстановления загрузчика. |
#Пошаговое решение
- Проверьте группы пользователяВ терминале выполните
idиgroups, затем сравните список с нужной группой (sudoв Debian/Ubuntu илиwheelв Fedora/Arch, если её разрешили в sudoers). Членство в группе после добавления применяется при новом входе в сеанс: полностью выйдите и войдите обратно, проверьтеidещё раз. Не изменяйте/etc/sudoersобычным редактором; используйтеvisudoиз учётной записи администратора. - Войдите администраторомДля выдачи прав нужен уже существующий администратор. Войдите под ним в отдельный сеанс или используйте локальную консоль с учётной записью root (если она включена). Выполните
id -uи убедитесь, что у административного сеанса есть необходимые привилегии. Не редактируйте/etc/sudoersиз обычного пользователя и не назначайте себе права обходом механизмов доступа. Если это корпоративный компьютер, обратитесь к администратору. - Добавьте пользователя в группуДля настройки sudo нужен уже имеющийся доступ root или уполномоченного администратора. Не пытайтесь повысить права в обход ограничений. Из root-терминала Debian/Ubuntu сначала убедитесь, что установлен пакет sudo (
apt install sudoпри рабочей сети), затем добавьте только нужного пользователя в группуsudoкомандойusermod -aG sudo ИМЯ, подставив реальное имя изid. После нового входа проверьтеsudo -v. В Fedora/Arch типичная группа — wheel, а её политика должна быть разрешена в sudoers. - Обновите сеансОткройте терминал на устройстве или подключитесь по SSH к нужному серверу. Выполните
sudo -lи прочитайте вывод: команда покажет команды, которые вам разрешено выполнять черезsudo. Если доступ отсутствует, обратитесь к администратору; не меняйте файл sudoers без отдельной проверки. Если команда не найдена, сначала убедитесь, что нужная программа установлена. - Для точных прав используйте visudoНастройка отдельного правила нужна только администратору, когда не подходит обычное разрешённое членство в группе
sudo/wheel. В root-терминале сначала выполнитеvisudo -c, затем откройте новый файл в/etc/sudoers.d/черезvisudo -f, задав уникальное имя файла без точек. Добавьте правило для конкретной учётной записи с минимально необходимыми полномочиями, а неNOPASSWD: ALL. Перед закрытиемvisudoпроверит синтаксис; затем снова выполнитеvisudo -c. Сохраните текущий доступ администратора до проверки нового сеанса, иначе можно потерять возможность использовать sudo. - Только просмотр текущего пользователя и группLinux · Терминал (Bash)КомандаТолько просмотр текущего пользователя и групп. Добавление пользователя в sudoers — отдельное действие администратора root с реальным именем, после подтверждения полномочий и сохранения доступа.
idid -nG
#Если не помогло
Не редактируйте /etc/sudoers обычным редактором: ошибка синтаксиса может заблокировать sudo для всех. Если доступа к администратору нет, потребуется режим восстановления.
#Если у вас есть доступ root или другой администратор
Войдите под root (su -) или под другим администратором и выполните usermod -aG sudo имя (Debian/Ubuntu) либо usermod -aG wheel имя (RHEL, Fedora, Arch). Затем завершите сеанс пользователя и войдите заново, чтобы группа применилась.
#Если доступа администратора нет
На собственном компьютере загрузитесь в режим восстановления: в меню GRUB нажмите e, добавьте к строке ядра init=/bin/bash, загрузитесь, выполните mount -o remount,rw / и usermod -aG sudo имя, затем exec /sbin/init. На чужой или корпоративной машине так делать нельзя — это действие требует разрешения владельца.
usermod -aG sudo имяsudo -lКоманда может изменить состояние системы или её настройки. Проверьте параметры и последствия перед запуском.