Пользователи и группы в Linux
Пользователи и группы в Linux: useradd, usermod, groupadd, /etc/passwd, id, groups — как создавать учётные записи и управлять членством в группах.
Пользователь в Linux — это учётная запись с уникальным числовым идентификатором (UID). Группа объединяет нескольких пользователей, чтобы назначать им общие права доступа.
Файл /etc/passwd
Список всех пользователей системы хранится в файле /etc/passwd. Каждая строка описывает одного пользователя и состоит из семи полей, разделённых двоеточием:
cat /etc/passwd
Вывод (фрагмент):
root:x:0:0:root:/root:/bin/bash alice:x:1001:1001:Alice Smith:/home/alice:/bin/bash nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
Поля по порядку: имя, пароль (символ x — хранится в /etc/shadow), UID, GID, комментарий, домашний каталог, оболочка.
Просмотр информации о пользователе
# Кто сейчас залогинен
whoami
# UID, GID и группы текущего пользователя
id
# Группы конкретного пользователя
groups alice
Вывод:
alice uid=1001(alice) gid=1001(alice) groups=1001(alice),27(sudo),1002(docker) alice : alice sudo docker
Создание пользователя: useradd
Команда useradd создаёт нового пользователя. Запускается от root (или через sudo).
Флаг | Значение |
| создать домашний каталог |
| задать оболочку |
| добавить в дополнительную группу |
| описание (полное имя) |
# Создать пользователя bob с домашним каталогом и bash-оболочкой
sudo useradd -m -s /bin/bash bob
# Установить пароль для нового пользователя
sudo passwd bob
# Добавить bob в группу docker
sudo usermod -aG docker bob
Флаг
-aGвusermodозначает «append to Group» — добавить к существующим группам, не заменяя их. Без-aпользователь потеряет все прежние группы.
Создание группы: groupadd
# Создать группу developers
sudo groupadd developers
# Добавить alice в группу developers
sudo usermod -aG developers alice
# Проверить
groups alice
Вывод:
alice : alice sudo developers
Удаление пользователя
# Удалить пользователя (домашний каталог останется)
sudo userdel bob
# Удалить пользователя вместе с домашним каталогом
sudo userdel -r bob
Частые ошибки
- useradd без -m — домашний каталог не создаётся; пользователь не сможет войти нормально.
- usermod -G без -a — затирает все текущие группы. Всегда используйте
-aG. - passwd не установлен — после
useraddаккаунт заблокирован доpasswd.
Коротко
/etc/passwd— список пользователей;idиgroupsпоказывают UID/GID.useradd -m -s /bin/bash имя— создать пользователя с домашним каталогом.passwd имя— установить пароль.usermod -aG группа имя— добавить в группу без потери прежних.groupadd— создать группу;userdel -r— удалить пользователя с каталогом.