Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

User-not-in-sudoers Linux / DevOps

Ошибка 'User is not in the sudoers file': как добавить пользователя в группу sudo

Обновлено: 26.08.2026 · Официальная документация ↗

Почему возникает ошибка «user is not in the sudoers file. This incident will be reported»

Вы создали нового пользователя в Linux (например, для нового сотрудника или разработчика), он подключается по SSH, пытается выполнить системную команду администрирования sudo apt update, но операционная система наотрез отказывается выполнять команду и пишет грозное предупреждение: «username is not in the sudoers file. This incident will be reported (Пользователь отсутствует в файле sudoers. Об этом инциденте будет сообщено)».

Архитектура прав суперпользователя в Linux

Утилита sudo (SuperUser DO) позволяет обычным непривилегированным пользователям временно повышать свои привилегии до уровня администратора root для выполнения конкретных задач. По соображениям безопасности только члены специальной системной группы sudo (или группы wheel в дистрибутивах CentOS/RHEL) имеют право использовать эту команду.

Пошаговое исправление ошибки и выдача прав sudo

Для выполнения этой инструкции вам потребуется прямой доступ к учетной записи суперпользователя root.

Шаг 1: Переключение на пользователя root

Переключитесь под суперпользователя root (введите пароль root):

su -

Шаг 2: Добавление пользователя в группу sudo

Выполните команду добавления вашего пользователя (замените alex на реальное имя учетной записи) в системную группу администраторов:

usermod -aG sudo alex

 Для систем CentOS / RedHat / AlmaLinux:
usermod -aG wheel alex

Разбор флагов команды:

  • -a (Append) — обязательно добавить пользователя в группу, не удаляя его из других существующих групп!
  • -G (Group) — указать целевую группу (sudo).

Шаг 3: Проверка членства в группах

Убедитесь, что пользователь действительно включен в группу:

groups alex

В выводе должно присутствовать слово sudo.

Шаг 4: ОБЯЗАТЕЛЬНЫЙ перезаход в систему

Внимание! В Linux состав групп пользователя обновляется только при новом входе в сессию. Пользователь alex должен выполнить exit (выйти из SSH) и подключиться заново. Теперь любая команда с sudo будет работать идеально!

Типовые ошибки администраторов

  • Опасная команда usermod -G без флага -a: Если случайно забыть флаг -a и выполнить usermod -G sudo alex, Linux удалит пользователя из всех остальных его групп (например, docker, www-data, audio). Всегда пишите связку флагов вместе: -aG!
  • Прямое редактирование файла /etc/sudoers через nano: Никогда не редактируйте файл sudoers обычным редактором. Если вы допустите хоть одну синтаксическую ошибку, команда sudo сломается ДЛЯ ВСЕХ пользователей на сервере. Всегда используйте специальную безопасную утилиту проверки синтаксиса: sudo visudo.
Нужно настроить гранулярные права доступа для команды без выдачи полных прав root?
Инженеры ITSTM разработают безопасные политики sudoers (разрешение запуска только определенных скриптов без ввода пароля) и настроят аудит действий через auditd.
💡 Практика специалистов: Никогда не работайте под чистой учеткой 'root' в повседневных задачах администрирования. Заблокируйте прямой вход root по SSH и создайте именных пользователей с правами sudo для каждого инженера. Это обеспечивает 100% персонализированный аудит (вы всегда будете знать, кто именно выполнил команду перезагрузки или удаления базы).

Частые вопросы (FAQ)

Куда отправляется сообщение 'This incident will be reported'?

В современных системах это историческое сообщение просто записывается в локальный системный журнал безопасности (/var/log/auth.log или journalctl), а также отправляет локальное почтовое уведомление пользователю root, если настроен локальный почтовый демон (mailutils).

Как разрешить пользователю выполнять sudo без постоянного ввода пароля?

Откройте редактор командой 'sudo visudo' и добавьте в конец файла строчку: 'alex ALL=(ALL) NOPASSWD: ALL'.

Что делать, если пароль от пользователя root забыт, а sudo не работает?

Перезагрузите сервер, войдите в меню загрузчика GRUB, перейдите в режим восстановления (Recovery Mode) или передайте ядру параметр 'init=/bin/bash', после чего перемонтируйте диск в режим записи (mount -o remount,rw /) и добавьте пользователя в группу sudo.

Как забрать у пользователя права sudo обратно?

Удалите его из группы администраторов командой: sudo gpasswd -d alex sudo

Полезные материалы
Рекомендуем