Пользователь, которому можно администрировать
Группа sudo в Ubuntu даёт право выполнять команды от root. Для уже созданного
пользователя — sudo usermod -aG sudo bob (подробнее — users-groups).
Команда useradd создаёт учётную запись: домашний каталог, оболочку, группы и UID; пароль задаёт passwd.
sudo useradd -m -s /bin/bash alice
с домашним каталогом и bash
sudo passwd alice
задать пароль — отдельный шаг
sudo useradd -m -s /bin/bash -G sudo bob
сразу в группу sudo
sudo useradd -m -c 'Alice Smith' alice
с полным именем
sudo useradd -m -u 1500 carol
с заданным UID
sudo useradd -m -e 2026-12-31 intern
учётка истечёт в эту дату
sudo useradd -r -s /usr/sbin/nologin -M app
системный, для службы
id alice
проверить результат
useradd -D
значения по умолчанию
sudo adduser dave
интерактивно (Debian/Ubuntu)
useradd добавляет запись в /etc/passwd, /etc/shadow и /etc/group. Работает
только от root, поэтому почти всегда — через sudo.
У голого useradd имя в Ubuntu неочевидные умолчания: домашний каталог не
создаётся, оболочка — /bin/sh, пароля нет, и войти по паролю нельзя. Поэтому
ключи -m и -s /bin/bash пишут почти всегда:
Поля строки passwd: имя, x (пароль лежит в /etc/shadow), UID, GID основной
группы, комментарий, домашний каталог, оболочка. Группу с тем же именем useradd
создаёт сам. UID обычных пользователей начинаются с 1000.
adduser — обёртка Debian и Ubuntu: спрашивает пароль и имя, создаёт домашний
каталог, ставит bash. Удобна руками; в скриптах надёжнее useradd с явными
ключами.
Значения по умолчанию лежат в /etc/default/useradd и /etc/login.defs, смотреть
их — useradd -D. Полный список — man useradd.
| Ключ | Что делает | Пример |
|---|---|---|
-m --create-home |
Создать домашний каталог и скопировать в него /etc/skel. | sudo useradd -m alice |
-s --shell shell |
Оболочка входа; без ключа в Ubuntu — /bin/sh. | sudo useradd -m -s /bin/bash alice |
-G --groups groups |
Дополнительные группы через запятую — они должны существовать. | sudo useradd -m -G sudo,docker bob |
-c --comment text |
Комментарий — обычно полное имя. | sudo useradd -m -c 'Alice Smith' alice |
-u --uid UID |
Задать UID вручную. | sudo useradd -m -u 1500 carol |
-r --system |
Системная учётка — UID ниже 1000, без домашнего каталога по умолчанию. | sudo useradd -r -s /usr/sbin/nologin app |
-g --gid group |
Основная группа вместо новой группы с именем пользователя. | sudo useradd -m -g devs carol |
-d --home-dir dir |
Путь домашнего каталога вместо /home/имя. | sudo useradd -r -d /var/lib/app -M app |
-M --no-create-home |
Не создавать домашний каталог. | sudo useradd -r -M app |
-e --expiredate YYYY-MM-DD |
Дата, после которой учётная запись перестанет работать. | sudo useradd -m -e 2026-12-31 intern |
-D --defaults |
Показать или изменить значения по умолчанию. | useradd -D |
Ничего не найдено. Попробуй запрос короче.
Группа sudo в Ubuntu даёт право выполнять команды от root. Для уже созданного
пользователя — sudo usermod -aG sudo bob (подробнее — users-groups).
-r берёт UID ниже 1000, -M не создаёт домашний каталог, nologin запрещает
интерактивный вход. От такого пользователя запускают службу в юните (User=app).
Пароль не задан, поэтому вход по паролю закрыт, а по ключу работает — см. ssh-keys.
При -m в каталог копируется содержимое /etc/skel: .bashrc, .profile,
.bash_logout. Положи туда общие для всех новых пользователей файлы.
Команда запущена без root. Повтори через sudo useradd ….
Такое имя занято. Проверь getent passwd alice. Изменить существующего
пользователя — usermod, удалить — userdel (см. users-groups).
Группа из -G или -g должна существовать заранее: sudo groupadd devs, затем
снова useradd.
Пароль не задан — выполни sudo passwd alice. Проверить состояние пароля:
sudo passwd -S alice (буква L — заблокирован, P — задан) — см. passwd.
Пользователь создан без -s и получил /bin/sh. Смени оболочку:
sudo usermod -s /bin/bash alice.
Создан без -m, и домашнего каталога нет. Создай его с правильным владельцем:
sudo mkhomedir_helper alice или sudo install -d -m 750 -o alice -g alice
/home/alice.
Если раньше на машине был пользователь с тем же UID и после него остались файлы,
новый пользователь станет их владельцем. Перед useradd -u проверь, что UID
свободен и на диске нет файлов с ним: sudo find / -xdev -uid 1500.
Есть неточность? Сообщить об ошибке в статье