Пользователи и sudo в Linux: шпаргалка

Учётные записи, группы и повышение привилегий без постоянного root.

вся шпаргалка в PDF A4
koddo Шпаргалка по командам Linux koddo.ru/cheatsheets/linux

Пользователи и sudo в Linux

Учётные записи, группы и повышение привилегий без постоянного root.

Кто я: whoami, id, groups

whoami   # alice
id       # uid=1001(alice) gid=1001(alice) groups=...,1002(dev)
groups   # alice dev

uid — числовой идентификатор пользователя, gid — его первичная группа; root — это uid 0, для него проверки прав не выполняются. id alice покажет то же про другого.

sudo: одна команда от root

sudo systemctl restart nginx  # спросит ТВОЙ пароль
sudo -i                       # целая root-сессия (реже)

sudo выполняет команду от root по твоему паролю и пишет каждое использование в журнал — поэтому он безопаснее постоянной работы под root, где любая опечатка в rm необратима.

Создать пользователя: useradd -m

sudo useradd -m -s /bin/bash alice  # с домом и bash
sudo passwd alice                   # задать пароль
grep "^alice" /etc/passwd           # проверить запись

Без -m домашний каталог не создастся, без -s шеллом будет /bin/sh. Учётки лежат строками в /etc/passwd, хэши паролей — в закрытом /etc/shadow.

Группы: usermod -aG (только с -a!)

sudo groupadd dev
sudo usermod -aG dev alice  # ДОБАВИТЬ в группу
# usermod -G dev alice — ЗАМЕНИТ весь список групп!
id alice                    # проверить членство

Флаг -a означает append: без него -G заменяет список дополнительных групп целиком, и пользователь молча вылетает из sudo и docker. Новые группы процесс получает только после перелогина.

su: сессия под другим пользователем

su - alice   # войти как alice (пароль alice)
whoami       # alice
exit         # вернуться в свою сессию

Дефис у su - важен: он даёт полноценное окружение пользователя, а не только имя. Для админ-задач предпочитай sudo — он точечный и оставляет след в журнале.

Обновлено 12 сентября 2026 г.

Где обычно ошибаются

uid — числовой идентификатор пользователя, gid — его первичная группа; root — это uid 0, и для него проверки прав не выполняются. sudo выполняет одну команду от root по твоему паролю и пишет каждое использование в журнал — поэтому он безопаснее постоянной работы под root, где любая опечатка в rm необратима. useradd без -m не создаст домашний каталог, без -s шеллом станет /bin/sh; учётки лежат в /etc/passwd, хэши паролей — в закрытом /etc/shadow. Самая дорогая ошибка — usermod -G без -a: без append список дополнительных групп заменяется целиком, и пользователь молча вылетает из sudo и docker; новые группы процесс получает только после перелогина. У su дефис важен: su - даёт полноценное окружение пользователя, а не только имя.

поделиться: Telegram VK

Подробнее в справочнике

Карточки выше — синтаксис: пример и подпись, где ошибаются. Статьи справочника объясняют, как это работает: с проверенным выводом и разбором типовых ошибок.

Что дальше