Android

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

Using Arch Linux (Senior Linux Experience)

Using Arch Linux (Senior Linux Experience)

Оглавление:

Anonim

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

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

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

Команда useradd

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

useradd 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

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

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

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

sudo useradd -m -d /opt/username username

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

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

Идентификатор пользователя (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 и установить группу входа в систему, введите:

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 с именем username срок действия которой установлен на 22 января 2019 г., вы должны выполнить:

sudo useradd -e 2019-01-22 username

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

sudo chage -l username

Вывод будет выглядеть примерно так:

Last password change: Dec 11, 2018 Password expires: never Password inactive: never Account expires: Jan 22, 2019 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 . Те же инструкции применимы для любого дистрибутива Linux, включая Ubuntu, CentOS, RHEL, Debian, Fedora и Arch Linux.

Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.

группа пользователей терминала