В этой статье мы детально разберем, как создать пользователя Linux.
Создание и удаление пользователя в Linux – useradd
Для добавления пользователей используется команда useradd, а удаляются с помощью userdel. Давайте создадим две учетки, с одной будем работать дальше, а вторую удалим.
Перед тем как добавить учетную запись, на незнакомом сервере, сначала посмотрите какие параметры заданы по умолчанию для новых пользователей. useradd использует шаблон, который задается в файле /etc/default/useradd. Посмотрим, что там у нас:
[[email protected] ~]# useradd -D # useradd defaults file GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel CREATE_MAIL_SPOOL=yes
123456789 | [root@hc~]# useradd -D# useradd defaults fileGROUP=100HOME=/homeINACTIVE=—1EXPIRE=SHELL=/bin/bashSKEL=/etc/skelCREATE_MAIL_SPOOL=yes |
Что тут для нас важно:
- HOME=/home – директория где создастся домашняя папка пользователя, традиционно это /home
- INACTIVE=-1 – количество дней, через которое навсегда заблокируется учетная запись, после устаревания пароля. -1 здесь означает, что возможность не используется.
- EXPIRE= – дата, когда пользователь будет заблокирован. Сейчас пусто, значит никогда.
- SHELL=/bin/bash – какая оболочка будет использоваться пользователем.
- SKEL=/etc/skel – папка где лежат файлы, которые будут скопированы в домашнюю директорию нового пользователя.
По сути нас все устраивает, давайте уже создадим учётку:
- Linux (2006).pdf
- Операционные системы 2е издание гордеев …
- 026 Системный Администратор 01 2005 by …
- LINUX: полное руководство 1 by wrw rer …
1 | useradd hc—m |
-m указывает, что необходимо создать папку пользователя в /home, если ее там еще нет. И сразу создадим второго:
useradd testuser -m -s /bin/sh -c ‘Test User Account’
1 | useradd testuser—m—s/bin/sh—c‘Test User Account’ |
Для разнообразия, с помощью ключа -s я указал, что shell оболочкой будет не bash, a sh. А -с задает комментарий для пользователя, который используется, обычно, как полное имя пользователя.
Какие ключи еще понимает useradd:-b – задает базовый каталог, в котором будет создана домашняя папка пользователя. По умолчанию /home-d – задает имя домашнего каталога. По умолчанию название совпадает с именем пользователя-e Дата, по достижении которой пользователь блокируется. Задается в формате ГГГГ-ММ-ДД. По умолчанию отключено. Соответствует EXPIRE в шаблоне/etc/default/useradd;-f – соответствует INACTIVE в шаблоне, как уже говорилось, срок устаревания пароля до блокировки;-g – задает первичную группу для нового пользователя. Указывается GID или имя группы. Если параметр не задан, имя группы будет такое же как имя пользователя;-G – список дополнительных групп для создаваемого пользователя;-k – путь к каталогу шаблонов. Соответствует SKEL в шаблоне;-u – для установки UID пользователя вручную.
CHOWN
Chown — от английского change own. И так, как вы знаете в Linux есть пользователи и группы. У каждого пользователя есть свои файлы, созданные или загруженные. Каждый пользователь находится в собственной группе и может быть объеден c другими пользователями в другие группы.
Для того чтобы узнать кто владелец файла и в какой группе он находится, используйте команду:
ls -l
Если вы хотите поменять или сменить владельца (пользователя) файла тогда вам поможет команда:
sudo chown userName
В данном примере мы присвоили файл пользователю userName.
Если вы хотите поменять только группу, то можно воспользоваться командой chgrp:
sudo chgrp groupName
Для того чтобы не вводить 2 разные команды делают так:
sudo chown userName:groupName
Вначале указывается владелец файла, а после группа:
sudo chown имя_владельца:имя_группы
Если вам нужно поменять в директории владельца и группу, а там множество файлов и папок тогда используйте ключ -R:
sudo chown -R userName:groupName /var/www/site/
Хранилища учетных записей
Информация об идентификаторах UID и GID, именах пользователей и групп, их паролях и прочих свойствах учетных записей размещается (в простейшем случае) в файловых «хранилищах,»-Добычных текстовых файлах каталога /etc, формируя базы данных пользовательских /etc/passwd, /etc/shadow и групповых /etc/group, /etc/gshadow учетных записей. формат и структура этих файлов хорошо документированы в руководстве passwd(5), shadow(5) и group(5), gshadow(5) и представляют собой простейшие текстовые таблицы, где свойства каждой учетной записи представлены набором столбцов одной строки, разделенных символом двоеточия : .
Базы данных пользовательских учетных записей
[email protected]:~$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
. . . . . .
dvk:x:1000:1000: Alexey Ivanov,,+7(805) 530-01-04,,:/hone/dvk:/bin/bash
. . . . . .
[email protected]:~$ cat /etc/group
. . .
- Fedora
- 028 Системный Администратор 03 2005 by …
- Linux format 2005 11(72) by plok — issuu
- 1
dvk:x:1000:
lpadmin:x:108:dvk
sambashare:x:109:dvk
admin:x:110:dvk
. . .
При использовании «коммутатора службы имен» (NSS, W: [Name Service Switch]) имеется возможность хранить базы данных учетных записей в любых хранилищах, включая сетевые службы каталогов NIS, NIS+, LDAP, активный каталог Microsoft Windows и даже реляционные сетевые базы данных SQL— при помощи соответствующих модулей NSS и согласно настройкам коммутатора (5).
Хранилища пользовательских учетных записей и модули NSS
Создать пользователя с датой истечения срока действия
Если вы работаете в офисе, и у вас есть новый подрядчик, начинающий, кто будет находиться в вашем офисе в течение короткого периода времени, вы захотите установить дату истечения срока действия своей учетной записи пользователя.
Аналогичным образом, если у вас есть семья, приезжающая к вам, вы можете создать учетную запись пользователя для этого члена семьи, срок действия которой истекает после их выхода.
Чтобы установить дату истечения срока действия при создании пользователя, используйте следующую команду:

useradd -d /home/test -e 2016-02-05 test
Дата должна указываться в формате ГГГГ-ММ-ДД, где ГГГГ — год, ММ — номер месяца, а ДД — номер дня.