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

Материал из ALT Linux Wiki
Нет описания правки
Строка 4: Строка 4:
===Добавление нового пользователя===
===Добавление нового пользователя===
====useradd====
====useradd====
<syntaxhighlight lang="bash">
# useradd имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd test1
# useradd test1
Строка 10: Строка 14:
=====Параметры=====
=====Параметры=====
*-M - не создавать домашний каталог
*-M - не создавать домашний каталог
<syntaxhighlight lang="bash">
# useradd -M имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -M petr
# useradd -M petr
Строка 15: Строка 24:


*-N - не создавать группу с тем же именем что и у пользователя
*-N - не создавать группу с тем же именем что и у пользователя
<syntaxhighlight lang="bash">
# useradd -N имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -N petr
# useradd -N petr
Строка 20: Строка 33:


*-p - пароль
*-p - пароль
<syntaxhighlight lang="bash">
# useradd -p пароль имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -p gfrgjhrkj petr
# useradd -p gfrgjhrkj petr
Строка 25: Строка 42:


*-d - указание кастомного домашнего каталога
*-d - указание кастомного домашнего каталога
<syntaxhighlight lang="bash">
# useradd -d путь_к_новому_каталогу имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# useradd -d /opt/users/user petr
# useradd -d /opt/users/user petr
Строка 108: Строка 129:


Существующему пользователю можно изменить имя, делается это опцией -l. Первым указывается новое имя, вторым - старое.
Существующему пользователю можно изменить имя, делается это опцией -l. Первым указывается новое имя, вторым - старое.
<syntaxhighlight lang="bash">
# usermod -l новое_имя старое_имя
</syntaxhighlight>
Пример:


Изменим имя пользователя petr на petr_admin,  
Изменим имя пользователя petr на petr_admin,  
Строка 124: Строка 149:


====Изменение пароля пользователя====
====Изменение пароля пользователя====
<syntaxhighlight lang="bash">
# passwd имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# passwd test1
# passwd test1
Строка 129: Строка 158:


====Добавление/Изменение отображаемого имени====
====Добавление/Изменение отображаемого имени====
<syntaxhighlight lang="bash">
# usermod -c "Отображаемое имя" имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -c "Тестировщик" test1
# usermod -c "Тестировщик" test1
Строка 140: Строка 173:
====Изменение домашнего каталога пользователя====
====Изменение домашнего каталога пользователя====
Опция -d меняет каталог, а опция -m переносит в новый каталог все содержимое старого.
Опция -d меняет каталог, а опция -m переносит в новый каталог все содержимое старого.
<syntaxhighlight lang="bash">
usermod -d новый_домашний_каталог -m имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -d /opt/petr -m petr
# usermod -d /opt/petr -m petr
Строка 152: Строка 189:
Пользователю можно назначить дату истечения действия аккаунта. Она задается опцией -e ГГГГ-ММ-ДД.
Пользователю можно назначить дату истечения действия аккаунта. Она задается опцией -e ГГГГ-ММ-ДД.


Для работы chage нужно установить пакет shadow-change.
{{Note|Для работы chage нужно установить пакет shadow-change}}
 
<syntaxhighlight lang="bash">
# usermod -e срок_действия имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -e 2024-12-31 petr
# usermod -e 2024-12-31 petr
Строка 158: Строка 200:


Проверяем:
Проверяем:
<syntaxhighlight lang="bash">
# chage -l имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# chage -l petr
# chage -l petr
Строка 183: Строка 229:


====userdel====
====userdel====
<syntaxhighlight lang="bash">
# userdel имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# userdel test2
# userdel test2
Строка 188: Строка 238:


*удалить залогиненого пользователя
*удалить залогиненого пользователя
<syntaxhighlight lang="bash">
# userdel -f имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# userdel -f test2
# userdel -f test2
Строка 193: Строка 247:


*удалить домашний каталог и почтовый ящик
*удалить домашний каталог и почтовый ящик
<syntaxhighlight lang="bash">
# userdel -r имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# userdel -r test2
# userdel -r test2
Строка 292: Строка 350:


===Группы конкретного пользователя===
===Группы конкретного пользователя===
<syntaxhighlight lang="bash">
# groups имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# groups user
# groups user
Строка 297: Строка 359:


===Принудительно назначить первичную группу===
===Принудительно назначить первичную группу===
<syntaxhighlight lang="bash">
# usermod -g группа имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -g test sergiy
# usermod -g test sergiy
Строка 302: Строка 368:


===Добавить в дополнительную группу===
===Добавить в дополнительную группу===
<syntaxhighlight lang="bash">
# usermod -a -G группа имя_пользователя
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# usermod -a -G ntpd petr
# usermod -a -G ntpd petr
Строка 307: Строка 377:


===Удалить из группы===
===Удалить из группы===
<syntaxhighlight lang="bash">
# gpasswd -d пользователь имя_руппы
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# gpasswd -d user root
# gpasswd -d user root
Строка 312: Строка 386:


===Создание группы===
===Создание группы===
<syntaxhighlight lang="bash">
# groupadd имя_группы
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# groupadd test
# groupadd test
Строка 317: Строка 395:


===Удаление группы===
===Удаление группы===
<syntaxhighlight lang="bash">
# groupdel имя_группы
</syntaxhighlight>
Пример:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
# groupdel user
# groupdel user
</syntaxhighlight>
</syntaxhighlight>
[[Категория:HOWTO]]
[[Категория:HOWTO]]

Версия от 12:53, 22 января 2024

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

Примечание: Для работы команды chage нужно установить пакет shadow-change

Добавление нового пользователя

useradd

# useradd имя_пользователя

Пример:

# useradd test1
Параметры
  • -M - не создавать домашний каталог
# useradd -M имя_пользователя

Пример:

# useradd -M petr
  • -N - не создавать группу с тем же именем что и у пользователя
# useradd -N имя_пользователя

Пример:

# useradd -N petr
  • -p - пароль
# useradd -p пароль имя_пользователя

Пример:

# useradd -p gfrgjhrkj petr
  • -d - указание кастомного домашнего каталога
# useradd -d путь_к_новому_каталогу имя_пользователя

Пример:

# useradd -d /opt/users/user petr
  • --system - создание системного аккаунта без пароля и домашнего аккаунта
# useradd --system cassandra
  • -e - создание пользователя с истекающим сроком действия аккаунта. Он задается опцией -e ГГГГ-ММ-ДД
# useradd -e 2023-05-30 petr

Проверяем командой chage:

# chage -l petr

Пример вывода:

# chage -l petr
Последний раз пароль был изменён				: мая 28, 2023
Срок действия пароля истекает					: никогда
Пароль будет деактивирован через				: никогда
Срок действия учётной записи истекает				: мая 30, 2023
Минимальное количество дней между сменой пароля			: -1
Максимальное количество дней между сменой пароля		: -1
Количество дней с предупреждением перед деактивацией пароля	: -1
  • Устанавливаем срок действия пароля в течении 20-и дней,
# chage -M 20 petr

Проверяем командой chage:

# chage -l petr

Пример вывода:

# chage -l petr
Последний раз пароль был изменён				: мая 28, 2023
Срок действия пароля истекает					: июн 17, 2023
Пароль будет деактивирован через				: никогда
Срок действия учётной записи истекает				: мая 30, 2023
Минимальное количество дней между сменой пароля			: -1
Максимальное количество дней между сменой пароля		: 20
Количество дней с предупреждением перед деактивацией пароля	: -1
  • -c Указание отображаемого имени
# useradd -c "Петрушка" petr

При входе в систему у пользователя petr, вместо логина, будет отображаться имя "Петрушка"

  • -s Указание другой оболочки

Вместо bash мы можем установить пользователю другой командный интерпретатор (/bin/bash, /bin/sh, /bin/zsh).

# useradd -s /bin/sh petr

Проверяем:

# grep -E 'petr' /etc/passwd
petr:x:1001:1001::/home/petr:/bin/sh

adduser

adduser по командам аналогична useradd.

Изменение пользователя

Изменение имени пользователя

Существующему пользователю можно изменить имя, делается это опцией -l. Первым указывается новое имя, вторым - старое.

# usermod -l новое_имя старое_имя

Пример:

Изменим имя пользователя petr на petr_admin,

# usermod -l petr_admin petr

Проверяем:

# id petr
id: petr: такого пользователя нет
# id petr_admin
uid=1001(petr_admin) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)

Изменение пароля пользователя

# passwd имя_пользователя

Пример:

# passwd test1

Добавление/Изменение отображаемого имени

# usermod -c "Отображаемое имя" имя_пользователя

Пример:

# usermod -c "Тестировщик" test1

Проверяем:

$ grep -E 'test1' /etc/passwd
 test1:x:1001:1001:Тестировщик:/home/test1:/bin/bash

Изменение домашнего каталога пользователя

Опция -d меняет каталог, а опция -m переносит в новый каталог все содержимое старого.

usermod -d новый_домашний_каталог -m имя_пользователя

Пример:

# usermod -d /opt/petr -m petr

Проверяем:

# grep -E 'petr' /etc/passwd
petr:x:1001:1001:Имя Фамилия:/opt/petr:/bin/bash

Установка даты истечения срока аккаунта

Пользователю можно назначить дату истечения действия аккаунта. Она задается опцией -e ГГГГ-ММ-ДД.

Примечание: Для работы chage нужно установить пакет shadow-change


# usermod -e срок_действия имя_пользователя

Пример:

# usermod -e 2024-12-31 petr

Проверяем:

# chage -l имя_пользователя

Пример:

# chage -l petr
Последний раз пароль был изменён				: мая 29, 2023
Срок действия пароля истекает					: никогда
Пароль будет деактивирован через				: никогда
Срок действия учётной записи истекает				: дек 31, 2024
Минимальное количество дней между сменой пароля			: -1
Максимальное количество дней между сменой пароля		: -1
Количество дней с предупреждением перед деактивацией пароля	: -1

Просмотреть список пользователей

Всех:

$ cat /etc/passwd

Только с домашней папкой в /home:

$ cat /etc/passwd | grep /home

Удаление пользователя

userdel

# userdel имя_пользователя

Пример:

# userdel test2
  • удалить залогиненого пользователя
# userdel -f имя_пользователя

Пример:

# userdel -f test2
  • удалить домашний каталог и почтовый ящик
# userdel -r имя_пользователя

Пример:

# userdel -r test2

Изменение командной оболочки пользователя

Чтобы изменить командную оболочку пользователя (например, на /bin/bash, /bin/sh, /bin/zsh), нужно выполнить команду usermod с опцией -s.

Например, изменим пользовательскую оболочку для petr_admin с /bin/bash/ на /bin/sh/.

# usermod -s /bin/sh petr_admin

Проверяем:

# grep -E 'petr_admin' /etc/passwd
petr_admin:x:1001:1002:Имя Фамилия:/opt/petr:/bin/sh

Изменение UID и GID пользователя

Для изменения UID пользователя используется опция -u.

# usermod -u 777 petr_admin

Проверяем:

# id petr_admin
uid=777(petr_admin) gid=1002(group_1) группы=1002(group_1),10(wheel),1003(group_2)

Для изменения GID пользователя используется опция -g.

# usermod -g 777 petr_admin

Проверяем:

# id petr_admin
uid=777(petr_admin) gid=777(newgroup) группы=777(newgroup),10(wheel),1003(group_2)

Таким образом можно управлять пользователями и изменять их по своему усмотрению.

Группы

Просмотреть список групп

# cat /etc/group

Группы текущего пользователя

$ groups

Группы конкретного пользователя

# groups имя_пользователя

Пример:

# groups user

Принудительно назначить первичную группу

# usermod -g группа имя_пользователя

Пример:

# usermod -g test sergiy

Добавить в дополнительную группу

# usermod -a -G группа имя_пользователя

Пример:

# usermod -a -G ntpd petr

Удалить из группы

# gpasswd -d пользователь имя_руппы

Пример:

# gpasswd -d user root

Создание группы

# groupadd имя_группы

Пример:

# groupadd test

Удаление группы

# groupdel имя_группы

Пример:

# groupdel user