Управление пользователями и группами в Linux

Материал из sysadm
Перейти к навигации Перейти к поиску

Управление пользователями

Создание пользователя

Создание обычного пользователя, создается стандартный домашний каталог по шаблону, назначается стандартный шел для входа

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

# задание пароля
passwd <имя_пользователя>

Создание системного пользователя для сервиса, присваивается идентификатор из системного диапазона, домашний каталог не создается, интерактивный вход блокируется назначением шела /sbin/nologin

useradd -r -d / -s /sbin/nologin -c "Комментарий" <имя_пользователя>

# задание пароля не требуется, т. к. пользователь не сможет войти в шел
# -d указывает на домашний каталог (каталог по умолчанию), если не указывать,
# то будет ссылаться на не созданный каталог /home/<имя_пользователя>

В CentOS 8 adduser - это просто ссылка на useradd

/sbin/adduser -> useradd

Дополнительную информацию по параметрам можно посмотреть так

useradd -h
man useradd

Изменение учетной записи пользователя

Добавление дополнительной группы к списку дополнительных групп пользователя (включение пользователя в группу)

usermod -a -G <имя_группы> <имя_пользователя>

Назначение пользователю нового списка дополнительных групп

usermod -G <имя_группы_1>,<имя_группы_2>,...  <имя_пользователя>

Назначение пользователю новой основной группы

usermod -g <имя_группы> <имя_пользователя>


Удаление пользователя

Удаление пользователя и одноименной основной группы

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

Чистка данных пользователя

# удаление каталога пользователя
rm -rf /home/<имя_пользователя>

# удаление почтового ящика
rm -rf /var/spool/mail/<имя_пользователя>

Управление группами

Создание группы

groupadd <имя_группы>

Удаление пустой группы

groupdel <имя_группы>

Членство в группах определяется в учетной записи пользователя (см. раздел Изменение учетной записи пользователя)

Дополнительная информация

Файлы конфигурации, шаблоны и файлы данных (CentOS 8)

Файлы конфигурации, определение различных параметров и значений по умолчанию

/etc/default/useradd
/etc/login.defs

Стандартные каталоги

# базовый каталог для создания домашних каталогов пользователей
/home

# каталог шаблона для домашнего каталога пользователя
/etc/skel

# каталог для размещения почтовых ящиков пользователей
/var/spool/mail

Файлы данных

# содержит информацию о пользователях (доступен всем на чтение)
/etc/passwd

# содержит информацию о группах (доступен всем на чтение)
/etc/group

# содержит защищаемую информацию о пользователях (доступен только root)
/etc/shadow

# содержит защищаемую информацию о группах (доступен только root)
/etc/gshadow

# per user subordinate user IDs (доступен всем на чтение)
/etc/subuid

# per user subordinate group IDs (доступен всем на чтение)
/etc/subgid

Ограничения

  • длина имени пользователя не может превышать 32 символа

Возвращаемые значения

useradd

0   успешное выполнение
1   не удалось изменить файл паролей
2   ошибка в параметрах команды
3   недопустимое значение параметра
4   такой UID уже существует (и не задан параметр -o)
6   указанная группа не существует
9   имя пользователя уже существует
10  не удалось изменить файл групп
12  не удалось создать домашний каталог
14  can't update SELinux user mapping

Ссылки по теме