Как использовать команду Useradd (создать пользователей) в Linux

12 set 2022 5 min di lettura
Как использовать команду Useradd (создать пользователей) в Linux
Indice dei contenuti

Введение

Linux — это многопользовательская система, что означает, что с одной и той же системой одновременно могут взаимодействовать несколько человек. Как системный администратор вы отвечаете за управление системными пользователями и группами, создавая и удаляя пользователей и назначая их различным группам.

В Linux вы можете создать учетную запись пользователя и назначить пользователя в разные группы с помощью команды useradd. useradd — низкоуровневая утилита, пользователи Debian и Ubuntu, скорее всего, будут использовать команду adduser.

В этой статье мы поговорим о том, как использовать команду useradd и рассмотрим ее параметры.

Синтаксис команды Useradd

Общий синтаксис команды useradd следующий:

useradd [OPTIONS] USERNAME

Чтобы использовать команду useradd и создавать новых пользователей, вы должны войти в систему как root или как пользователь с доступом sudo.

При вызове useradd создает новую учетную запись пользователя, используя параметры, указанные в командной строке, плюс значения по умолчанию, указанные в /etc/default/useradd.

Переменные, определенные в этом файле, различаются от дистрибутива к дистрибутиву, что приводит к тому, что команда useradd дает разные результаты в разных системах.

Команда также считывает содержимое файла /etc/login.defs. Этот файл содержит конфигурацию набора теневых паролей, такую как политики истечения срока действия паролей, диапазоны идентификаторов пользователей, используемые при создании системы и обычных пользователей, и многое другое.

Как создать нового пользователя в Linux

Чтобы создать новую учетную запись пользователя, введите useradd, а затем имя пользователя.

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

sudo useradd username

В своей простейшей форме при использовании без каких-либо параметров useradd создаст новую учетную запись пользователя с настройками по умолчанию, указанными в /etc/default/useradd.

Команда добавляет запись в /etc/passwd, /etc/shadow, /etc/group и /etc/gshadow.

Чтобы войти в систему с вновь созданным пользователем, необходимо установить пароль пользователя. Для этого запустите команду passwd с указанием имени пользователя:

sudo passwd username

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

Changing password for user username.
 New password:
 Retype new password:
 passwd: all authentication tokens updated successfully.

Как добавить нового пользователя и создать домашний каталог

В большинстве дистрибутивов Linux при создании новой учетной записи пользователя с помощью команды useradd домашний каталог пользователя не создается.

Используйте параметр -m ( --create-home ), чтобы создать домашний каталог пользователя как /home/username:

sudo useradd -m username

Приведенная выше команда создает новый домашний каталог пользователя и копирует файлы из каталога /etc/skel в домашний каталог пользователя. Если вы перечислите файлы в каталоге /home/username, будут отображены файлы инициализации:

ls -la /home/username/
drwxr-xr-x 2 username username 4096 Dec 11 11:23.
 drwxr-xr-x 4 root root 4096 Dec 11 11:23..
 -rw-r--r-- 1 username username 220 Apr 4 2018.bash_logout
 -rw-r--r-- 1 username username 3771 Apr 4 2018.bashrc
 -rw-r--r-- 1 username username 807 Apr 4 2018.profile

В домашнем каталоге пользователь может записывать, изменять и удалять файлы и каталоги.

Создание пользователя с определенным домашним каталогом

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

Например, чтобы создать нового пользователя с именем username с домашним каталогом /opt/username, вам нужно выполнить следующую команду:

sudo useradd -m -d /opt/username username

Создайте пользователя с определенным идентификатором пользователя

В операционных системах Linux и Unix пользователи идентифицируются по их уникальному идентификатору пользователя и имени пользователя.

Идентификатор пользователя (UID) — это уникальное положительное целое число, присваиваемое системой Linux каждому пользователю. UID вместе с другими политиками управления доступом используется для определения типов действий, которые пользователь может выполнять с системными ресурсами.

По умолчанию при создании нового пользователя система назначает следующий доступный UID из диапазона идентификаторов пользователей, указанного в файле login.defs.

Используйте параметр -u ( --uid ), чтобы создать пользователя с определенным UID. Например, чтобы создать нового пользователя с именем username и UID 1500, введите:

sudo useradd -u 1500 username

Вы можете проверить UID пользователя, используя команду id:

id -u username
1500

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

Группы Linux — это организационные единицы, которые используются для организации и администрирования учетных записей пользователей в Linux. Основная цель групп — определить набор привилегий, таких как чтение, запись или выполнение авторизации для данного ресурса, которые могут быть разделены между пользователями в группе.

При создании нового пользователя поведение команды useradd по умолчанию заключается в создании группы с тем же именем, что и имя пользователя, и тем же GID, что и UID.

Используйте параметр -g ( --gid ), чтобы создать пользователя с определенной исходной группой входа в систему. Вы можете указать имя группы или номер GID. Имя группы или GID уже должны существовать.

Например, чтобы создать нового пользователя с именем username и установить группу доступа users, введите:

sudo useradd -g users username

Чтобы проверить GID пользователя, используйте id команды:

id -gn username
users

Создайте пользователя и назначьте несколько групп

В операционных системах Linux существует два типа групп: основная группа и вторичная или дополнительная группа. Каждый пользователь может принадлежать ровно к одной основной группе и к нулю или нескольким дополнительным группам.

Параметр -G ( --groups ) указывает список дополнительных групп, членом которых будет пользователь.

Следующая команда создаст нового пользователя с именем username с основной группой users и вторичными группами wheel и docker.

sudo useradd -g users -G wheel,developers username

Вы можете проверить группы пользователей, набрав

id username
uid=1002(username) gid=100(users) groups=100(users),10(wheel),993(docker)

Создание пользователя с определенной оболочкой входа

По умолчанию для нового пользователя используется оболочка входа в систему, указанная в /etc/default/useradd. В некоторых дистрибутивах Linux, таких как Ubuntu 18.04, оболочка по умолчанию установлена в /bin/sh, а в других — в /bin/bash.

Параметр -s ( --shell ) указывает оболочку входа нового пользователя.

Например, чтобы создать нового пользователя с именем username с /usr/bin/zsh в качестве типа оболочки для входа в систему:

sudo useradd -s /usr/bin/zsh username

Проверьте запись пользователя в /etc/passwd чтобы проверить оболочку входа пользователя:

grep username /etc/passwd
username:x:1001:1001::/home/username:/usr/bin/zsh

Создайте пользователя с пользовательским комментарием

Параметр -c ( --comment ) позволяет добавить краткое описание нового пользователя. Обычно полное имя пользователя или контактная информация добавляются в качестве комментария.

В следующем примере мы создаем нового пользователя с именем username и текстовой строкой Test User Account в качестве комментария:

sudo useradd -c "Test User Account" username

Комментарий сохраняется в /etc/passwd:

grep username /etc/passwd
username:x:1001:1001:Test User Account:/home/username:/bin/sh

Поле комментариев также известно как GECOS.

Создание пользователя с датой истечения срока действия

Параметр -e ( --expiredate ) позволяет вам определить время истечения срока действия новых учетных записей пользователей. Эта опция полезна для создания временных учетных записей. Дата должна быть указана в YYYY-MM-DD.

Например, чтобы создать новую учетную запись пользователя с именем username со сроком действия, установленным на 05 января 2020 г., запустите:

sudo useradd -e 2022-01-05 username

Вы можете использовать команду chage для проверки даты истечения срока действия учетной записи пользователя:

sudo chage -l username

Вывод будет выглядеть следующим образом:

Last password change: Dec 11, 2018
 Password expires: never
 Password inactive: never
 Account expires: Jan 05, 2020
 Minimum number of days between password change: 0
 Maximum number of days between password change: 99999
 Number of days of warning before password expires: 7

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

Реальной технической разницы между системой и обычными (обычными) пользователями нет. Обычно системные пользователи создаются во время установки операционной системы и новых пакетов.

В некоторых ситуациях может потребоваться создать системного пользователя, который будет использоваться некоторыми приложениями.

Используйте параметр -r ( --system ), чтобы создать системную учетную запись пользователя. Например, чтобы создать нового системного пользователя с именем username, вам нужно запустить:

sudo useradd -r username

Системные пользователи создаются без ограничения срока действия. Их UID выбираются из диапазона идентификаторов пользователей системы, указанного в файле login.defs, который отличается от диапазона, используемого для обычных пользователей.

Изменение настроек useradd по умолчанию

Параметры useradd по умолчанию можно посмотреть и изменить с помощью опции -D, --defaults или вручную изменив значения в /etc/default/useradd.

Чтобы просмотреть текущие параметры по умолчанию, введите:

useradd -D

Вывод будет выглядеть следующим образом:

GROUP=100
 HOME=/home
 INACTIVE=-1
 EXPIRE=
 SHELL=/bin/sh
 SKEL=/etc/skel
 CREATE_MAIL_SPOOL=no

Допустим, вы хотите изменить оболочку входа по умолчанию с /bin/sh на /bin/bash. Для этого укажите новую оболочку, как показано ниже:

sudo useradd -D -s /bin/bash

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

sudo useradd -D | grep -i shell
SHELL=/bin/bash

Вывод

В этом руководстве мы показали вам, как создавать новые учетные записи пользователей с помощью команды useradd.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.