Команда Usermod в Linux

команда usermod

usermod — это утилита командной строки, которая позволяет изменять данные для входа пользователя.

В этой статье рассматривается, как использовать команду usermod для добавления пользователя в группу, изменения оболочки пользователя, имени входа, домашнего каталога и многого другого.

Номер usermod

Синтаксис команды usermod имеет следующий вид:

 usermod [ options ] USER

Вызвать usermod и изменить учётную запись пользователя могут только пользователи root или с правами sudo . В случае успешного выполнения команда не выводит никаких данных.

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

Наиболее типичный вариант использования usermod — добавление пользователя в группу.

Чтобы добавить существующего пользователя во вторичную группу, используйте параметры -a -G а затем имя группы и имя пользователя:

 usermod -a -G GROUP USER

Если вы хотите добавить пользователя сразу в несколько групп, укажите группы после параметра -G , разделив их , (,) без пробелов.

Например, чтобы добавить пользователя linuxize в группу games , выполните следующую команду:

 sudo usermod -a -G games linuxize

При добавлении пользователя в новую группу всегда используйте параметр -a (добавить). Если параметр -a пропущен, пользователь будет удалён из групп, не перечисленных после параметра -G .

Если пользователь или группа не существует, команда выдаст предупреждение.

Изменить основной группы пользователя

Чтобы изменить основную группу пользователя, вызовите команду usermod с опцией -g , за которой следуют имя группы и имя пользователя:

 sudo usermod -g GROUP USER

В следующем примере мы меняем основную группу пользователя linuxize на developers :

 usermod -g developers linuxize

Каждый пользователь может принадлежать только к одной основной группе и ни к одному или нескольким вторичным группам.

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

Чтобы изменить информацию GECOS (полное имя пользователя), выполните команду с опцией -c , а затем новый комментарий и имя пользователя:

 usermod -c "GECOS Comment" USER

Вот пример, показывающий, как добавить дополнительную информацию для пользователя linuxize:

 usermod -c "Test User" linuxize

Эта информация хранится в файле /etc/passwd .

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

В большинстве систем Linux домашние каталоги пользователей называются по имени пользователя и создаются в каталоге /home .

Если по какой-то причине вы хотите изменить домашний каталог пользователя, вызовите команду usermod с опцией -d , указав абсолютный путь к новому домашнему каталогу и имя пользователя:

 usermod -d HOME_DIR USER

По умолчанию команда не переносит содержимое домашнего каталога пользователя в новый. Чтобы перенести содержимое, используйте опцию -m . Если новый каталог ещё не существует, он будет создан:

 usermod -d HOME_DIR -m USER

Вот пример, показывающий, как изменить домашний каталог пользователя www-data на /var/www :

 usermod -d /var/www www-data

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

Оболочка по умолчанию — это оболочка, которая запускается после входа в систему. В большинстве систем Linux по умолчанию установлена оболочка Bash Shell.

Чтобы изменить оболочку пользователя по умолчанию, выполните команду с опцией -s , указав абсолютный путь к оболочке и имя пользователя:

 usermod -s SHELL USER

В примере ниже мы меняем оболочку пользователя на Zsh:

 sudo usermod -s /usr/bin/zsh linuxize

Узнать, какие оболочки доступны в вашей системе, можно, просмотрев содержимое файла /etc/shells .

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

UID (идентификатор пользователя) — это номер, присваиваемый каждому пользователю. Он используется операционной системой для обозначения пользователя.

Чтобы изменить UID пользователя, вызовите команду с опцией -u , указав после нее новый UID и имя пользователя:

 usermod -u UID USER

В примере ниже показано, как изменить номер «UID» на «1050»:

 sudo usermod -u 1050 linuxize

UID файлов, принадлежащих пользователю и расположенных в его домашнем каталоге, а также файл почтового ящика пользователя будут изменены автоматически. Владельцев всех остальных файлов необходимо изменить вручную.

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

Хотя это случается нечасто, иногда может возникнуть необходимость изменить имя существующего пользователя. Для этого используется опция -l :

 usermod -l NEW_USER USER

В примере ниже мы переименовываем пользователя linuxize в lisa на «1050»:

 sudo usermod -l linuxize lisa

При изменении имени пользователя вы также можете захотеть изменить домашний каталог пользователя, чтобы он отражал новое имя пользователя.

Установка даты истечения срока действия пользователя

Дата истечения срока действия — это дата, когда учётная запись пользователя будет отключена. Чтобы задать дату истечения срока действия учетной записи пользователя, используйте опцию -e :

 sudo usermod -e DATE USER

Дату истечения срока действия необходимо указывать в формате YYYY-MM-DD .

Например, чтобы отключить пользователя linuxize 2022-02-21 , выполните следующую команду:

 sudo usermod -e "2022-02-21" linuxize

Чтобы отключить истечение срока действия учетной записи, установите пустую дату истечения срока действия:

 sudo usermod -e "" linuxize

Используйте команду chage -l для просмотра даты истечения срока действия пользователя:

 sudo chage -l linuxize
 Last password change : Jul 24, 2018 Password expires : never Password inactive : never Account expires : never 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

Дата истечения срока действия хранится в файле /etc/shadow .

Блокировка и разблокировка учетной записи пользователя

Опция -L позволяет заблокировать учетную запись пользователя:

 usermod -L USER

Эти команды добавят восклицательный знак ( ! ) перед зашифрованным паролем. Если поле пароля в файле /etc/shadow содержит восклицательный знак, пользователь не сможет войти в систему с использованием парольной аутентификации. Другие методы входа, такие как аутентификация по ключу или переключение на пользователя , по-прежнему разрешены. Если вы хотите заблокировать учётную запись и отключить все методы входа, необходимо также установить срок действия равным 1.

В следующих примерах показано, как заблокировать пользователя linuxize :

 sudo usermod -L linuxize
 sudo usermod -L -e 1 linuxize

Чтобы разблокировать пользователя, запустите usermod с опцией -U :

 usermod -U USER

Заключение

Мы показали вам, как использовать команду usermod для настройки информации учетной записи пользователя.

Если у вас есть вопросы, не стесняйтесь оставлять комментарии.

терминал usermod

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *