- Руководство по использованию команды “useradd” в Linux
- Создание
- 1. Как добавить нового пользователя в Linux
- 2. Создание пользователя с нестандартным размещением домашней директории
- 3. Создание пользователя с заданным User ID
- 4. Создание пользователя с заданным Group ID
- 5. Добавление пользователя в несколько групп
- 6. Добавление пользователя без домашней директории
- 7. Добавление пользовательского аккаунта с ограниченным сроком действия
- 8. Создание пользователя с ограниченным временем действия пароля
- Ключи (опции)
- Редактирование
Руководство по использованию команды “useradd” в Linux
В этом руководстве показано, как создавать пользователей в Linux с помощью командной строки.
Хотя многие настольные Linux-дистрибутивы представляют собой графический инструмент для создания пользователей, у вас есть хорошая возможность, чтобы узнать, как это сделать из командной строки, чтобы вы могли передавать свои навыки из одного дистрибутива другому без изучения новых пользовательских интерфейсов.
Создание
* опции не являются обязательными при создании пользователя.
* в данном примере создается учетная запись dmosk.
Для учетной записи стоит сразу создать пароль:
* после ввода, система попросит ввести пароль дважды.
1. Как добавить нового пользователя в Linux
Для создания/добавления нового пользователя используется команда “useradd” с аргументом “username”, где username – это имя нового пользователя, которое будет использоваться для входа в систему.
За один раз можно добавить только одного пользователя, и его имя должно быть уникальным (то есть отличаться от имен других пользователей, уже существующих в системе).
Например, добавляем пользователя “techmint”:
[root@tecmint ~]# useradd tecmint
После выполнения данной команды, новый пользователь будет создан в заблокированном состоянии. Чтобы разблокировать пользовательский аккаунт, необходимо задать его пароль с помощью команды “passwd”.
[root@tecmint ~]# passwd tecmint Changing password for user tecmint. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully.
После создания нового пользователя его запись автоматически добавляется в пароль “/etc/passwd” и имеет следующий вид:
Она состоит из семи разделенных двоеточием полей, каждое из которых имеет свое назначение:
Username: имя пользователя, используемое для входа в систему. Может иметь длинц от 1 до 32 символов.
Password: пользовательский пароль (или символ x), который хранится в зашифрованном виде в файле /etc/shadow.
User ID (UID): каждый пользователь должен иметь User ID (UID) – идентификатор пользователя. По умолчанию UID 0 зарезервирован для root, а UID в диапазоне 1-99 для других предопределенных аккаунтов. UID в диапазоне 100-999 предназначены для пользовательских аккаунтов и групп.
Group ID (GID): идентификатор группы – Group ID (GID), хранится в файле /etc/group file.
User Info: это опциональное поле и оно позволяет вам задать дополнительную информацию о пользователе, например полное имя. Это поле заполняется с помощью команды “finger”.
Home Directory: абсолютный путь к домашней директории пользователя.
Shell: абсолютный путь к командной оболочке пользователя, например /bin/bash.
2. Создание пользователя с нестандартным размещением домашней директории
По умолчанию команда “useradd” создает домашнюю директорию пользователя в /home и называет ее именем пользователя. Поэтому, например, для приведенного выше примера, мы увидим домашнюю директорию созданного нами пользователя “tecmint” в “/home/tecmint”.
Однако это действие можно изменить с помощью опции “-d”, указав после нее расположение новой домашней директории. Например, приведенная ниже команда создаст пользователя “anusha” с домашней директорией “/data/projects”.
[root@tecmint ~]# useradd -d /data/projects anusha
Вы можете просмотреть расположение домашней директории пользователя, а также другую информацию о нем:
[root@tecmint ~]# cat /etc/passwd | grep anusha anusha:x:505:505::/data/projects:/bin/bash
3. Создание пользователя с заданным User ID
В Linux каждый пользователь имеет свой собственный UID (Unique Identification Number). По умолчанию при создании нового пользователя ему присваивается userid 500, 501, 502 и т.д.
Но мы можем создать пользователя с заданным userid с помощью опции “-u”. Например, приведенная ниже команда создает пользователя “navin” с userid “999”.
[root@tecmint ~]# useradd -u 999 navin
Теперь мы можем проверить, что пользователь создан действительно с этим идентификатором.
[root@tecmint ~]# cat /etc/passwd | grep tecmint navin:x:999:999::/home/navin:/bin/bash
Замечание: Обратите внимание, что user ID должен отличаться от user ID пользователей, уже существующих в системе.
4. Создание пользователя с заданным Group ID
Аналогично, каждый пользователь имеет свой GID (Group Identification Number). Мы можем создавать пользователей с заданным group ID с помощью опции -g.
В этом примере мы добавим пользователя “tarunika” с заданными UID и GID:
[root@tecmint ~]# useradd -u 1000 -g 500 tarunika
Проверим, правильно ли сработала команда:
[root@tecmint ~]# cat /etc/passwd | grep tarunika tarunika:x:1000:500::/home/tarunika:/bin/bash
5. Добавление пользователя в несколько групп
Опция “-G” используется для добавления пользователя в дополнительные группы. Названия групп разделяются запятой без пробелов.
В приведенном ниже примере мы добавляем пользователя “tecmint” в группы admins, webadmin и developer.
[root@tecmint ~]# useradd -G admins,webadmin,developers tecmint
Теперь проверим, в каких группах числится пользователь, с помощью команды id.
[root@tecmint ~]# id tecmint uid=1001(tecmint) gid=1001(tecmint) groups=1001(tecmint),500(admins),501(webadmin),502(developers) context=root:system_r:unconfined_t:SystemLow-SystemHigh
6. Добавление пользователя без домашней директории
В некоторых ситуациях мы не хотим, по соображениям безопасности, давать пользователям домашние директории. В таком случае, когда пользователь авторизуется в системе сразу после ее запуска, его домашней директорией будет root. Если такой пользователь использует команду su, то он авторизуется в домашней директории предыдущего пользователя.
Для создания пользователя без домашней директории используется опция “-M”. Например, создадим пользователя “shilpi” без домашней директории.
[root@tecmint ~]# useradd -M shilpi
Давайте проверим, что пользователь создан без домашней директории, с помощью команды ls:
[root@tecmint ~]# ls -l /home/shilpi ls: cannot access /home/shilpi: No such file or directory
7. Добавление пользовательского аккаунта с ограниченным сроком действия
По умолчанию, когда мы добавляем пользователя с помощью команды “useradd”, его аккаунт не имеет сроков действия, то есть дата истечения сроков его жизни установена в 0 (никогда не истекает).
Однако мы можем установить дату истечения с помощью опции “-e”, задав дату в формате YYYY-MM-DD. Это полезно при создании временных аккаунтов для каких-то конкретных задач.
В приведенном ниже примере мы создаем пользователя “aparna” со сроком жизни его аккаунта до 27 апреля 2015 года в формате YYYY-MM-DD.
[root@tecmint ~]# useradd -e 2015-03-27 aparna
Далее, проверяем сроки действия аккаунта и пароля с помощью команды “chage”.
[root@tecmint ~]# chage -l aparna Last password change : Mar 28, 2014 Password expires : never Password inactive : never Account expires : Mar 27, 2015 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” используется для того, чтобы задать количество дней, через которое пароль перестанет действовать. По умолчанию его значение равно -1, при этом время действия пароля не ограничивается.
В примере мы задаем для пользователя “tecmint” время действия пароля 45 дней с помощью опций “-e” и “-f”.
[root@tecmint ~]# useradd -e 2014-04-27 -f 45 tecmint
Ключи (опции)
-b | Задает базовый каталог для домашнего каталога useradd dmosk -b /var/home |
-c | Создает комментарий для описания учетной записи useradd dmosk -c “Пользователя для управления системой” |
-d | Полный путь к домашнему каталогу пользователя useradd dmosk -d /home/newuser |
-D | Позволяет показать или изменить настройки по умолчанию, которые будут применяться при последующем создании пользователей useradd dmosk -Ds /bin/bash |
-e | Дата, после которой учетная запись устареет. useradd dmosk -e 2017-12-31 |
-f | Число дней, после которого учетная запись с устаревшим паролем будет заблокирована useradd dmosk -f 0 |
-g | Задает основную группу useradd dmosk -g altternativegroup |
-G | Задает дополнительные группы useradd dmosk -G wheel |
-k | Путь к источнику скелета (файлы с шаблонами для нового пользователя) useradd dmosk -k /var/skel |
-m | При создании пользователя создать домашний каталог useradd dmosk -m |
-M | Не создавать домашний каталог useradd dmosk -M |
-N | Не создавать основную группу с таким же именем, как у пользователя useradd dmosk -N |
-o | Разрешает создание учетной записи с повторяющимся UID useradd dmosk -u 15 -o |
-p | Задает пароль useradd dmosk -p pass |
-r | Системная учетная запись (без домашнего каталога и с идентификаторами в диапазоне SYS_UID_MIN – SYS_UID_MAX из файла /etc/login.defs) useradd dmosk -r |
-R | Каталог, в который выполняется chroot useradd dmosk -R /var/chroot/home |
-s | Путь до оболочки командной строки useradd dmosk -s /bin/csh |
-u | Задает UID useradd dmosk -u 666 |
-U | Имя группы будет таким же, как у пользователя useradd dmosk -U |
Актуальный список ключей можно получить командой useradd -h.
Редактирование
* эта команда добавит пользователя dmosk в группу wheel