Как добавить пользователя в sudoers в Debian 13, 12, 11: полное руководство

Сразу после установки Debian многие новички пытаются выполнить команду с sudo и получают пугающую ошибку: "username is not in the sudoers file. This incident will be reported". Это не баг системы, а стандартный механизм безопасности. В этой статье мы подробно разберём, что такое sudoers, как правильно добавить пользователя в группу sudo и как исправить самые частые ошибки, возникающие у начинающих.

💡 Если вы вводите пароль и видите «is not in the sudoers file» — это руководство для вас. Мы настроим права администратора так, чтобы вы могли спокойно выполнять команды с привилегиями root.

В этом руководстве вы узнаете:

  • Как переключиться на root, если sudo не работает
  • Как установить пакет sudo в Debian
  • Как создать нового пользователя и добавить его в группу sudo
  • Как проверить права доступа
  • Как исправить 6 самых частых ошибок новичков

Для кого: новички в Linux (первые шаги с sudo), сисадмины (быстрая настройка прав), владельцы VPS (безопасное администрирование), пользователи Debian 11, 12 и 13.

1. 🔐 Что такое sudo и sudoers простыми словами

sudo (superuser do) — это программа, позволяющая обычному пользователю выполнять команды с правами суперпользователя (root). Это безопаснее, чем работать напрямую от root, потому что:

  • Вы случайно не повредите систему
  • Все действия с sudo логируются
  • Не нужно никому передавать пароль root

Файл sudoers (/etc/sudoers) — это главный конфигурационный файл, в котором прописано, кто и какие команды может выполнять с sudo. В Debian, как и в большинстве дистрибутивов на основе Debian, все пользователи из группы sudo автоматически получают полные права на выполнение любых команд с sudo.

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

2. 🛠️ Пошаговая инструкция: добавление пользователя в sudoers

Мы пройдём все шаги от начала до конца. Вы можете выполнять их как для существующего пользователя (который выдал ошибку), так и для нового.

2.1 Переключение на пользователя root

Если ваш обычный пользователь не может использовать sudo, нужно временно стать суперпользователем. Это делается командой su - (switch user).

Команда:

su -

Что делает эта команда:

Часть командыОбъяснение
suSwitch user — переключить пользователя
-Создать «логин-шелл» (полное окружение root, как при входе в систему)

Система попросит ввести пароль root. Это тот пароль, который вы задавали для суперпользователя при установке Debian.

Признак успеха: Приглашение в терминале изменится с user@hostname:~$ на root@hostname:~#. Символ # означает, что вы работаете от root.

2.2 Установка пакета sudo (если отсутствует)

В минимальных или серверных установках Debian пакет sudo может отсутствовать.

Команды:

apt update
apt install sudo -y

Что делает эта команда:

КомандаОбъяснение
apt updateОбновляет список доступных пакетов из репозиториев
apt install sudo -yУстанавливает пакет sudo, -y автоматически отвечает «yes» на вопрос

Проверка установки:

sudo --version

Ожидаемый вывод: Версия Sudo (например, Sudo version 1.9.13p3).

2.3 Создание нового пользователя (опционально)

Если вы хотите создать отдельного пользователя для административных задач (вместо того, чтобы давать права существующему), используйте команду adduser.

Команда:

adduser <имя_пользователя>

Пример с пользователем «admin»:

adduser admin

Что делает эта команда:

ДействиеОписание
Запрос пароляПридумайте и дважды введите надёжный пароль
Запрос информации о пользователеМожно просто нажимать Enter, пропуская поля

Признак успеха: Сообщение Successfully added user ... и созданная домашняя директория /home/username/.

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

Это главный шаг. Именно он даёт права на выполнение команд с sudo.

Команда:

usermod -aG sudo <имя_пользователя>

Пример для пользователя «admin»:

usermod -aG sudo admin

Что делает эта команда:

Часть командыОбъяснение
usermodКоманда для изменения учётной записи пользователя
-aG-a (append) — добавить, а не заменить группы; -G (groups) — указать список групп
sudoИмя группы, в которую добавляем пользователя

Альтернативный способ (если вам так понятнее):

gpasswd -a <имя_пользователя> sudo

2.5 Проверка членства в группе sudo

Убедимся, что пользователь действительно добавлен в нужную группу.

Команда:

id <имя_пользователя>

Пример для пользователя «admin»:

id admin

Ожидаемый вывод:

uid=1001(admin) gid=1001(admin) groups=1001(admin),27(sudo)

Главное — наличие 27(sudo) в строке groups.

2.6 Применение изменений (важно!)

Группа, в которую вы добавили пользователя, не обновляется автоматически в текущей сессии. Нужно либо выйти из системы и зайти снова, либо использовать команду:

Команда для текущей сессии (от пользователя, которому дали права):

newgrp sudo

Или просто закройте и откройте терминал.

Если вы переключались на root (su -), вернитесь к обычному пользователю:

exit

2.7 Финальная проверка: работает ли sudo?

Теперь самое главное — проверить, что всё работает.

Команда:

sudo whoami

Что делает эта команда: whoami выводит имя текущего пользователя. Запущенная через sudo, она должна вернуть root.

Система попросит ввести пароль вашего обычного пользователя (не root).

Ожидаемый вывод:

[sudo] password for admin:
root

Если вы видите root — поздравляю, вы успешно настроили sudo!

3. ❌ Разбор популярных ошибок и их решение

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

3.1 Ошибка: «пользователь is not in the sudoers file»

Текст ошибки:

josh is not in the sudoers file. This incident will be reported.

Причина: Пользователь не добавлен в группу sudo, либо он не перелогинился после добавления.

Решение:

  1. Переключитесь на root: su -
  2. Добавьте пользователя в группу: usermod -aG sudo username
  3. Выйдите из root: exit
  4. Выйдите из системы и зайдите снова (или закройте/откройте терминал)
  5. Проверьте: sudo whoami

3.2 Ошибка: «sudo: command not found»

Текст ошибки:

sudo: command not found

Причина: Пакет sudo не установлен в системе. Часто бывает в минимальных или серверных установках Debian.

Решение:

  1. Переключитесь на root: su -
  2. Установите sudo: apt update && apt install sudo -y
  3. Выйдите из root: exit
  4. Теперь команда sudo будет работать.

3.3 Ошибка: «adduser: command not found»

Текст ошибки:

adduser: command not found

Причина: Пакет adduser не установлен (редко, но бывает в очень минимальных образах) или вы не переключились на root.

Решение:

  1. Переключитесь на root: su -
  2. Установите adduser: apt update && apt install adduser -y
  3. Либо используйте команду useradd (но adduser удобнее для новичков).

3.4 Ошибка: sudo работает, но просит пароль каждый раз

Ситуация: Вы ввели пароль 5 секунд назад, а sudo снова его запрашивает.

Причина: По умолчанию sudo запоминает пароль на 15 минут. Если пароль запрашивается каждую команду — возможно, вы используете sudo в скрипте или изменили настройки тайм-аута.

Решение (если хотите увеличить тайм-аут):

  1. Отредактируйте sudoers специальной командой: sudo visudo
  2. Добавьте строку (замените username): Defaults:username timestamp_timeout=30
  • 30 — минут; 0 — запрашивать всегда; -1 — запрашивать один раз навсегда
  1. Сохраните (Ctrl+X, Y, Enter)

⚠️ Безопасность: Не ставьте -1 на общих компах, системах или ноутбуках — если отойдёте от компьютера, любой сможет выполнять команды от root.

3.5 Ошибка: после добавления в группу sudo права не появляются

Ситуация: Вы выполнили usermod -aG sudo username, проверили id username — группа есть, но sudo whoami всё равно выдаёт ошибку.

Причина: Группа не обновилась в текущей сессии пользователя.

Решение:

Самый надёжный способ — полностью выйти из системы и зайти снова (log out / log in). Если вы в терминале без графики:

# Переключитесь на пользователя заново с логин-шеллом
su - username
# Теперь проверьте
sudo whoami

Или используйте команду newgrp sudo внутри сессии пользователя, но это временное решение.

3.6 Ошибка с CD-ROM при обновлении на виртуальной машине («deb cdrom…»)

Ситуация: Вы выполнили sudo apt update, и в выводе видите ошибки с упоминанием cd-rom.
При этом система установлена на виртуальной машине (VirtualBox, VMware, Proxmox).

Типичный текст ошибки:

E: The repository 'cdrom://[Debian GNU/Linux 13 ...] bookworm Release' does not have a Release file.
W: Failed to fetch cdrom:... Please use apt-cdrom to make this CD-ROM recognized by APT.

Причина: При установке Debian на виртуальную машину вы использовали ISO-образ. Установщик автоматически добавил этот образ в список репозиториев (sources.list). Теперь APT (менеджер пакетов) ищет диск в приводе, но его там нет — отсюда и ошибка.

💡 Суть проблемы: Система думает, что у вас вставлен установочный диск с пакетами, и пытается оттуда обновляться. В виртуальной среде это не нужно — все обновления должны скачиваться из интернета.

Решение (два простых способа):

Способ 1 — закомментировать строку (рекомендуется для новичков)

Откройте файл со списком репозиториев:

sudo nano /etc/apt/sources.list

Найдите строку, которая начинается с deb cdrom: (обычно она самая первая (Примечание: эта строка там может быть одна единственная)). Поставьте символ # в самом начале строки.

Было:

deb cdrom:[Debian GNU/Linux 13 ...]/ bookworm main

Стало:

# deb cdrom:[Debian GNU/Linux 13 ...]/ bookworm main

Сохраните файл: Ctrl+X, затем Y, затем Enter.

Способ 2 — удалить строку через apt (быстро)

sudo apt-add-repository --remove 'deb cdrom:*'

После любого из способов выполните:

sudo apt update

Ошибка должна исчезнуть. Вы увидите сообщение All packages are up to date! (если у вас свежая система) или начнётся нормальное обновление из интернет-репозиториев.

Что важно знать:

ДействиеПочему это важно
Не удаляйте другие строкиВ sources.list могут быть строки с deb http://deb.debian.org/... — это интернет-репозитории, они нужны для
обновлений
Если после комментария нет других репозиториевВам нужно добавить стандартные репозитории Debian. Вставьте следующие строки в sources.list:
deb http://deb.debian.org/debian/ bookworm main contrib non-free
deb http://deb.debian.org/debian/ bookworm-updates main contrib non-free
deb http://security.debian.org/debian-security bookworm-security main contrib non-free
Кодовое имяДля Debian 12 — bookworm, для Debian 13 (testing) — trixie.
Используйте то, которое соответствует вашей версии

Чек-лист: проверка после исправления

  • [ ] Закомментирована или удалена строка deb cdrom:...
  • [ ] Есть активные строки с deb http://... (интернет-репозитории)
  • [ ] Команда sudo apt update завершается без ошибок
  • [ ] Появилось сообщение All packages are up to date! или список обновлений

Почему это особенно актуально для виртуальных машин:

ФакторОбъяснение
ISO-образ подключён только при установкеПосле установки виртуальная машина обычно не имеет доступа к этому ISO
Нет физического приводаНа виртуальной машине нет CD/DVD-привода по умолчанию
APT продолжает искать дискСистема не знает, что установка завершена, и требует
«вставить диск»

💡 Вывод: После установки Debian на виртуальную машину всегда проверяйте /etc/apt/sources.list и удаляйте или комментируйте строку deb cdrom:.... Это избавит вас от путаницы с обновлениями.


4. 📝 Чек-лист: всё готово к работе

Пройдитесь по пунктам, чтобы убедиться, что sudo настроен правильно:

  • [ ] Пользователь добавлен в группу sudo (команда id username показывает 27(sudo))
  • [ ] Вы перелогинились или выполнили newgrp sudo
  • [ ] Команда sudo whoami возвращает root
  • [ ] Команда sudo apt update работает без ошибок
  • [ ] В файле /etc/apt/sources.list закомментирована строка с deb cdrom: (если была ошибка с CD-ROM)

5. 🔧 Дополнительно: как удалить пользователя из sudoers (лишить прав)

Если нужно лишить пользователя прав администратора — просто удалите его из группы sudo.
(username — меняете на имя пользователя)

Команда:

sudo deluser username sudo

Или:

sudo gpasswd -d username sudo

Проверка:

id username

В выводе больше не должно быть 27(sudo).

Заключение

Вы успешно настроили права sudo в Debian. Теперь ваш пользователь может выполнять административные команды без необходимости знать пароль root.

Что теперь есть в системе:

  • ✅ Обычный пользователь с правами на выполнение команд через sudo
  • ✅ Пакет sudo установлен и настроен
  • ✅ Вы знаете, как добавить других пользователей
  • ✅ Вы умеете диагностировать и исправлять 6 самых частых ошибок

Что дальше:

  • Настройте SSH-ключи для безопасного удалённого доступа (вместо входа по паролю)
  • Почитайте про базовую настройку файрвола (ufw или iptables)
  • Научитесь просматривать логи sudo в /var/log/auth.log (кто и когда выполнял команды)

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

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