Управление пользователями: различия между версиями
Нет описания правки |
|||
Строка 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
Пользователи
Добавление нового пользователя
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 ГГГГ-ММ-ДД.
# 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