Команда usermod в linux debian

Команда Usermod в Linux

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

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

Команда usermod

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

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

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

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

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

Если вы хотите добавить пользователя к нескольким группам одновременно, указать группы после того , как -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 абсолютный путь к новому домашнему каталогу и имя пользователя:

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

usermod -d HOME_DIR -m USER

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

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

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

Читайте также:  Linux узнать чем занят порт 80

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

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

sudo usermod -s /usr/bin/zsh linuxize

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

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

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

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

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

sudo usermod -u 1050 linuxize

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

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

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

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

sudo usermod -l linuxize lisa

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

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

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

Срок годности должен быть установлен в формате YYYY-MM-DD .

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

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

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

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

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 позволяет заблокировать учетную запись пользователя:

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

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

sudo usermod -L -e 1 linuxize

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

Выводы

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

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

Читайте также:  Скорость вращения вентилятора процессора linux

Источник

ОПИСАНИЕ¶

Команда usermod изменяет системные файлы учётных записей согласно переданным в командной строке параметрам.

ПАРАМЕТРЫ¶

Новое значение поля комментария в файле пользовательских паролей. Обычно его изменяют с помощью программы chfn(1).

Если указан параметр -m, то содержимое текущего домашнего каталога будет перемещено в новый домашний каталог, который будет создан, если он ещё не существует.

Для этого параметра требуется файл /etc/shadow. При отсутствии в /etc/shadow создаётся необходимая запись.

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

Если указано значение 0, то учётная запись блокируется сразу после устаревания пароля, а при значении -1 данная возможность не используется.

Для этого параметра требуется файл /etc/shadow. При отсутствии в /etc/shadow создаётся необходимая запись.

Имя или числовой идентификатор новой первичной группы пользователя. Группа с таким именем должна существовать.

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

Список дополнительных групп, в которых числится пользователь. Перечисление групп осуществляется через запятую, без промежуточных пробелов. На указанные группы действуют те же ограничения, что и для группы указанной в параметре -g.

Если пользователь — член группы, которой в указанном списке нет, то пользователь удаляется из этой группы. Такое поведение можно изменить с помощью параметра -a, при указании которого к уже имеющемуся списку групп пользователя добавляется список указанных дополнительных групп.

Имя пользователя будет изменено с ИМЯ на НОВОЕ_ИМЯ. Больше ничего не меняется. В частности, вероятно, должно быть изменено имя домашнего каталога и почтового ящика, чтобы отразить изменение имени пользователя.

Заблокировать пароль пользователя. Это делается помещением символа «!» в начало шифрованного пароля, чтобы приводит к блокировке пароля. Не используйте этот параметр вместе с -p или -U.

Замечание: если вы хотите заблокировать учётную запись (не только доступ по паролю), также установите значение EXPIRE_DATE в 1.

Команда usermod пытается изменить владельцев файлов и копирует права, ACL и расширенные атрибуты, но после неё всё равно могут потребоваться некоторые ручные действия.

При использовании с параметром -u, этот параметр позволяет указывать не уникальный числовой идентификатор пользователя.

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

Пароль будет записан в локальный файл /etc/passwd или /etc/shadow. Это может вызвать расхождения с базой данных паролей, настроенной в PAM.

Выполнить изменения в каталоге КАТ_CHROOT и использовать файлы настройки из каталога КАТ_CHROOT.

Имя новой регистрационной оболочки пользователя. Если задать пустое значение, то будет использована регистрационная оболочка по умолчанию.

Оно должно быть уникальным, если не используется параметр -o. Значение должно быть неотрицательным.

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

Никаких проверок по UID_MIN, UID_MAX, SYS_UID_MIN или SYS_UID_MAX из /etc/login.defs не производится.

Разблокировать пароль пользователя. Это выполняется удалением символа «!» из начала шифрованного пароля. Не используйте этот параметр вместе с -p или -L.

Читайте также:  Linux update user name

Замечание: если вы хотите разблокировать учётную запись (не только доступ по паролю), также установите значение EXPIRE_DATE (например, в to 99999 или равным значению EXPIRE из файла /etc/default/useradd).

No checks will be performed with regard to SUB_UID_MIN, SUB_UID_MAX, or SUB_UID_COUNT from /etc/login.defs.

This option may be specified multiple times to remove multiple ranges to a users account. When both —del-sub-uids and —add-sub-uids are specified, the removal of all subordinate uid ranges happens before any subordinate uid range is added.

No checks will be performed with regard to SUB_UID_MIN, SUB_UID_MAX, or SUB_UID_COUNT from /etc/login.defs.

No checks will be performed with regard to SUB_GID_MIN, SUB_GID_MAX, or SUB_GID_COUNT from /etc/login.defs.

This option may be specified multiple times to remove multiple ranges to a users account. When both —del-sub-gids and —add-sub-gids are specified, the removal of all subordinate gid ranges happens before any subordinate gid range is added.

No checks will be performed with regard to SUB_GID_MIN, SUB_GID_MAX, or SUB_GID_COUNT from /etc/login.defs.

При пустом значении SEUSER пользовательское сопоставление SELinux для пользователя LOGIN удаляется (если есть).

ПРЕДОСТЕРЕЖЕНИЯ¶

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

НАСТРОЙКА¶

Почтовый каталог. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя. Если параметр не задан, то используется значение указанное при сборке.

Переменные MAIL_DIR и MAIL_FILE используются командами useradd, usermod и userdel для создания, перемещения или удаления почты пользователя.

Максимальное количество членов в записи о группе. При достижения максимума заводится новая запись группы (строка) в /etc/group (с тем же именем, паролем и тем же GID).

Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп. Это полезно для ограничения длины строк групп NIS в 1024 символа.

Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow). Вы не должны использовать эту переменную, если вам действительно это ненужно.

If /etc/subuid exists, the commands useradd and newusers (unless the user already have subordinate group IDs) allocate SUB_GID_COUNT unused group IDs from the range SUB_GID_MIN to SUB_GID_MAX for each new user.

The default values for SUB_GID_MIN, SUB_GID_MAX, SUB_GID_COUNT are respectively 100000, 600100000 and 10000.

If /etc/subuid exists, the commands useradd and newusers (unless the user already have subordinate user IDs) allocate SUB_UID_COUNT unused user IDs from the range SUB_UID_MIN to SUB_UID_MAX for each new user.

The default values for SUB_UID_MIN, SUB_UID_MAX, SUB_UID_COUNT are respectively 100000, 600100000 and 10000.

Источник

Оцените статью
Adblock
detector