Поиск по сайту:

15 полезных команд Useradd с примерами в Linux


Мы все знаем о самых популярных командах Linux под названием «useradd» или «adduser». Бывают случаи, когда системного администратора Linux просят создать учетные записи пользователей в Linux с определенными свойствами, ограничениями или комментариями.

В Linux команда «useradd» представляет собой утилиту низкого уровня, используемую для добавления или создания учетных записей пользователей в Linux и других Unix-подобных операционных системах. Команда «adduser» очень похожа на команду «useradd», поскольку это всего лишь символическая ссылка на нее.

В некоторых дистрибутивах Linux команда «useradd» может иметь немного другую версию. Я предлагаю прочитать вашу документацию, прежде чем использовать наши инструкции по созданию новых учетных записей пользователей в Linux.

Когда мы запускаем команду «useradd» в терминале Linux, она выполняет следующие основные задачи:

  • Он редактирует /etc/passwd, /etc/shadow, /etc/group и /etc/gshadow. файлы для вновь созданных учетных записей пользователей.
  • Создает и заполняет домашний каталог для нового пользователя.
  • Устанавливает разрешения и права собственности на домашний каталог.

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

Основной синтаксис команды «useradd»:

useradd [options] username

В этой статье мы продемонстрируем 15 наиболее часто используемых команд «useradd» на практических примерах в Linux.

1. Как добавить нового пользователя в Linux

Чтобы добавить или создать нового пользователя, вам необходимо использовать команду «useradd» или «adduser», за которой следует «имя пользователя». «имя пользователя» — это имя пользователя, которое пользователь использует для входа в систему.

Можно добавить только одного пользователя, имя пользователя должно быть уникальным и не существовать в системе.

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

useradd tecmint

Когда мы добавляем нового пользователя в Linux с помощью команды «useradd», он создается в заблокированном состоянии. Чтобы разблокировать эту учетную запись пользователя, нам нужно установить пароль для этой учетной записи с помощью команды «passwd».

passwd tecmint

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

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

tecmint:x:1000:1000:tecmint:/home/tecmint:/bin/bash

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

Давайте посмотрим, что это за поля:

  • Имя пользователя – имя пользователя используется для входа в систему. Его длина должна составлять от 1 до 32 символов.
  • Пароль – пароль пользователя (или символ 'x') хранится в файле «/etc/shadow» в зашифрованном формате.
  • Идентификатор пользователя (UID). Каждый пользователь должен иметь идентификатор пользователя (UID), который означает Идентификатор пользователя. По умолчанию UID 0 зарезервирован для пользователя root, а UID в диапазоне от 1 до 99 зарезервированы для других предопределенных учетных записей. Кроме того, для системных учетных записей и групп зарезервированы UID в диапазоне от 100 до 999.
  • Идентификатор группы (GID) – основной идентификатор группы (GID), который означает Идентификационный номер группы, хранится в файле ' /etc/group».
  • Информация о пользователе. Это поле является необязательным и позволяет указать дополнительную информацию о пользователе, например полное имя пользователя. Эту информацию можно заполнить с помощью пальцевой команды.
  • Домашний каталог – абсолютное местоположение домашнего каталога пользователя.
  • Shell – абсолютное местоположение пользовательской оболочки, т. е. /bin/bash.

2. Как создать пользователя с другим домашним каталогом

По умолчанию команда «useradd» создает домашний каталог пользователя в каталоге «/home» с именем пользователя. Например, как показано выше, домашний каталог по умолчанию для пользователя «tecmint» — «/home/tecmint».

Однако это поведение можно изменить, используя параметр '-d' вместе с указанием местоположения нового домашнего каталога (например, «/data/projects»). Например, следующая команда создаст пользователя «anusha» с домашним каталогом «/data/projects».

useradd -d /data/projects anusha
passwd anusha

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

cat /etc/passwd | grep anusha

anusha:x:1001:1001::/data/projects:/bin/bash

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

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

Однако мы можем создавать пользователей с собственными идентификаторами пользователей, используя параметр '-u'. Например, следующая команда создаст пользователя «navin» с пользовательским идентификатором «1002».

useradd -u 1002 navin

Теперь давайте проверим, что пользователь создан с определенным идентификатором пользователя (1002), используя следующую команду.

cat /etc/passwd | grep navin

navin:x:1002:1002::/home/navin:/bin/bash

ПРИМЕЧАНИЕ. Убедитесь, что значение идентификатора пользователя должно быть уникальным среди всех других, уже созданных пользователей в системе.

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

Аналогично, каждый пользователь имеет свой собственный GID (Идентификатор группы). Мы также можем создавать пользователей с определенными идентификаторами групп, используя опцию '-g'.

В этом примере мы добавим пользователя «tarunika» с определенными UID и GID одновременно с помощью '- опции u' и '-g'.

useradd -u 1005 -g tecmint tarunika

Теперь проверьте назначенный идентификатор пользователя и идентификатор группы в файле /etc/passwd.

cat /etc/passwd | grep tarunika

tarunika:x:1005:1000::/home/tarunika:/bin/bash

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

id -gn tarunika

5. Как добавить пользователя в несколько групп

Опция '-G' используется для добавления пользователя в дополнительные группы. Имя каждой группы отделяется запятой без пробелов.

В этом примере мы добавляем пользователя «tecmint» в несколько групп, таких как администраторы, webadmin и разработчики . .

groupadd admins
groupadd webadmin
groupadd developers
usermod -a -G admins,webadmin,developers tecmint
useradd -G admins,webadmin,developers paddy

Затем убедитесь, что пользователю назначены несколько групп с помощью команды id.

id tecmint

uid=1000(tecmint) gid=1000(tecmint)
groups=1000(tecmint),1007(admins),1008(webadmin),1009(developers)
context=root:system_r:unconfined_t:SystemLow-SystemHigh

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

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

Чтобы создать пользователей без их домашних каталогов, используется опция '-M'. Например, следующая команда создаст пользователя «shilpi» без домашнего каталога.

useradd -M shilpi

Теперь давайте проверим, что пользователь создан без домашнего каталога с помощью команды ls.

ls -l /home/shilpi

ls: cannot access /home/shilpi: No such file or directory

7. Как создать пользователя с датой истечения срока действия в Linux

По умолчанию, когда мы добавляем пользователей с помощью команды «useradd», срок действия учетной записи пользователя никогда не истекает, то есть дата истечения срока действия устанавливается на 0 (что означает, что срок действия никогда не истекает).

Однако мы можем установить дату истечения срока действия с помощью параметра '-e', который должен быть в формате ГГГГ-ММ-ДД. Это полезно для создания временных учетных записей на определенный период времени.

В этом примере мы создаем пользователя «aparna» с датой истечения срока действия учетной записи 27 августа 2021 г. в формате ГГГГ-ММ-ДД. > формат.

useradd -e 2021-08-27 aparna

Затем проверьте информацию об устаревании учетной записи и пароля с помощью команды «chage» для пользователя «aparna» после установки даты истечения срока действия учетной записи.

chage -l aparna

Last password change					: Jun 25, 2021
Password expires					: never
Password inactive					: never
Account expires						: Aug 27, 2021
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

8. Как создать пользователя со сроком действия пароля

Аргумент '-f' используется для определения количества дней после истечения срока действия пароля. Значение 0 деактивирует учетную запись пользователя, как только истечет срок действия пароля. По умолчанию срок действия пароля установлен на -1, что означает, что срок его действия никогда не истекает.

В этом примере мы установим дату истечения срока действия пароля учетной записи, которая составляет 45 дней, для пользователя «mansi», используя '-e' и '-f'.

useradd -e 2014-04-27 -f 45 mansi

9. Как добавить пользователя с комментариями в Linux

Параметр '-c' позволяет добавлять пользовательские комментарии, такие как полное имя пользователя, номер телефона и т. д., в файл «/etc/passwd». Комментарий можно добавить в одну строку без пробелов.

Например, следующая команда добавит пользователя «манси» и вставит полное имя этого пользователя, Манис Хурана, в поле комментария.

useradd -c "Manis Khurana" mansi

Вы можете просмотреть вставленный комментарий в файле «/etc/passwd» в разделе комментариев с помощью команды Tail.

tail -1 /etc/passwd

mansi:x:1010:1013:Manis Khurana:/home/mansi:/bin/sh

10. Как создать оболочку входа пользователя в Linux

Иногда мы добавляем пользователей, которые не имеют никакого отношения к оболочке входа в систему, или иногда нам приходится назначать нашим пользователям разные оболочки. Мы можем назначить разные оболочки входа для каждого пользователя с помощью опции «-s».

В этом примере будет добавлен пользователь «tecmint» без оболочки входа, т. е. оболочки «/sbin/nologin».

useradd -s /sbin/nologin tecmint

Вы можете проверить назначенную пользователю оболочку в файле «/etc/passwd».

tail -1 /etc/passwd

tecmint:x:1011:1014::/home/tecmint:/sbin/nologin

11. Как создать пользователя с указанным домом, оболочкой и комментарием

Следующая команда создаст пользователя «ravi» с домашним каталогом «/var/www/tecmint», оболочкой по умолчанию /bin/bash . и дополнительную информацию о пользователе.

useradd -m -d /var/www/ravi -s /bin/bash -c "TecMint Owner" -U ravi

В приведенной выше команде параметры '-m' и '-d' создают пользователя с указанным домашним каталогом, а '-s' устанавливает оболочку пользователя по умолчанию /bin/bash. Параметр '-c' добавляет дополнительную информацию о пользователе, а аргумент '-U' создает/добавляет группу с тем же именем, что и у пользователя.

12. Как создать пользователя с определенным домом, оболочкой, комментарием, UID/GID

Команда очень похожа на приведенную выше, но здесь мы определяем оболочку как «/bin/zsh» и устанавливаем собственные UID и GID. для пользователя «таруника». Параметр '-u' определяет UID нового пользователя (т. е. 100), а параметр '-g' определяет GID (т. е. , 1000).

useradd -m -d /var/www/tarunika -s /bin/zsh -c "TecMint Technical Writer" -u 1000 -g 100 tarunika

13. Как создать пользователя с Home, без оболочки, комментариями и UID

Следующая команда очень похожа на две предыдущие команды. Единственное отличие состоит в том, что здесь мы отключили оболочку входа в систему для пользователя с именем «avishek» с собственным идентификатором пользователя (т. е. 1019).

Опция '-s' устанавливает оболочку по умолчанию /bin/bash, но в этом случае мы устанавливаем оболочку входа в систему '/usr/sbin/ nologin'. Это означает, что пользователь «авишек» не сможет войти в систему.

useradd -m -d /var/www/avishek -s /usr/sbin/nologin -c "TecMint Sr. Technical Writer" -u 1019 avishek

14. Как создать пользователя с указанным домом, оболочкой, скелетом и UID

Единственное изменение в этой команде заключается в том, что мы использовали параметр '-k', чтобы установить каталог пользовательского скелета /etc/custom.skell вместо каталога по умолчанию, < Strong>/etc/skel. Мы также использовали параметр '-s', чтобы определить другую оболочку, /bin/tcsh, для пользователя «navin».

useradd -m -d /var/www/navin -k /etc/custom.skell -s /bin/tcsh -c "No Active Member of TecMint" -u 1027 navin

15. Как создать пользователя без дома, оболочки или группы, с комментарием

Следующая команда сильно отличается от других команд, описанных выше. Здесь мы использовали параметр '-M' для создания пользователя без домашнего каталога пользователя, а параметр '-N' используется для указания системе создавать только имя пользователя (без группы). Параметр '-r' предназначен для создания системного пользователя.

useradd -M -N -r -s /bin/false -c "Disabled TecMint Member" clayton

Для получения дополнительной информации и опций о «useradd» запустите команду «useradd» в терминале, чтобы просмотреть доступные параметры.

useradd

Если вы хотите изменить атрибуты учетной записи пользователя, например изменить имя пользователя, идентификатор пользователя (UID), домашний каталог, оболочку и т. д., используйте команду usermod.