Управление учетными записями пользователей в Linux: создание и удаление пользователя

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

В этой инструкции  разберем основные команды для работы и управление пользователями в системе c Linux. 

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

     Пользователи

Для добавления нового пользователя можно использовать специальные для этого утилиты: это adduser и очень похожая на первый взгляд утилита  useradd. Но в сравнении более универсальной является adduser, ее главное преимущество и отличие, что  в процессе создания нового пользователя она автоматически выполняет  связанные с этим дополнительные действия, которые необходимы для корректного функционирования пользователя. Например, создает домашний каталог пользователя и его главную группу, дает возможность сразу задать пароль и многое другое.Утилита adduser может не поддерживаться некоторыми  дистрибутивами, но если она присутствует, рациональнее использовать именно ее. 

    - утилита adduser

Начнем с добавления нового пользователя с помощью утилиты adduser. Общий синтаксис утилиты таков:

adduser [options]  [user_name]

Где:

И на выводе имеем:

root@vps3***nl:~# adduser masha
Adding user `masha' ...
Adding new group `masha' (1000) ...
Adding new user `masha' (1000) with group `masha' ...
Creating home directory `/home/masha' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for masha
Enter the new value, or press ENTER for the default
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n]

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

Дальше система предложит задать свой пароль для входа (как корректно подобрать пароль для учетной записи можно ознакомиться в нашей статье здесь).  Если у вас возникли трудности с выбором надежного пароля, наш генератор предоставляет отличные примеры паролей, которые помогут вам защитить учетную запись. Следующий шаг ввод личных данных, этот пункт есть необязательным и можно пропустить, просто нажимая Enter. В конце система переспросит, есть ли правильными все введенные данные, чтобы продолжить и подтвердить просто вводим символ Y.

Утилита имеет следующий синтаксис:

useradd [options]  [user_name]

Чтобы создать пользователя и сразу домашний каталог пользователя в директории /home/user_name используем опцию -m

useradd -m  [user_name]

Для добавления главной группы пользователя, название будет совпадать с именем пользователя, применяется ключ -U.

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

passwd [user_name]

Информация обо всех пользователях хранится в файле /etc/passwd, чтобы вывести список пользователей и краткие сведения о них можно вбить в терминале команду:

cat /etc/passwd

Результат выполнения:

root@vps3***nl:~#  cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
syslog:x:101:104::/home/syslog:/bin/false
messagebus:x:103:107::/var/run/dbus:/bin/false
bind:x:104:111::/var/cache/bind:/bin/false
dovecot:x:106:115:Dovecot mail server,,,:/usr/lib/dovecot:/bin/false
dovenull:x:107:116:Dovecot login user,,,:/nonexistent:/bin/false
landscape:x:108:117::/var/lib/landscape:/bin/false
sshd:x:109:65534::/var/run/sshd:/usr/sbin/nologin
masha:x:1000:1000:,,,:/home/masha:/bin/bash
maria:x:1001:1001::/home/maria:/bin/bash

Первое значение - это имя пользователя, дальше идет UID пользователя и GID группы пользователя, пользователи с UID <1000, идут как системные и созданы сервисами,  их лучше не трогать. Как видим в системе есть два обычных созданных пользователя.

Для удаления пользователей также есть схожие 2 утилиты: userdel  и deluser.

В системах на базе RedHat (среди них CentOS) используется userdel. Утилита имеет следующий общий синтаксис:

userdel [options]  [user_name]

Можно сразу применять опцию -r, чтобы удалить пользователя вместе с его  домашним каталогом и mail spool.

Для Debian и его производных, среди них Ubuntu применяют deluser. 

deluser [options]  [user_name]

 Полезные опции:

    --remove-home  - удаления домашней папки пользователя;          

    --remove-all-files - удаление всех файлов, которыми владеет пользователь.

Все ключи и их краткое описание назначения можно стандартно узнать через  опцию --help.