Поиск по сайту:

Полное руководство по использованию команды usermod — 15 практических примеров со скриншотами


В дистрибутивах Unix/Linux команда «usermod» используется для изменения любых атрибутов уже созданной учетной записи пользователя через командную строку. Команда «usermod» аналогична команде «useradd» или «adduser», но логин предоставляется существующему пользователю.

Команда «useradd» или «adduser» используется для создания учетных записей пользователей в системах Linux. Чтобы узнать больше о том, как создавать пользователей системы, прочитайте наше полное руководство по адресу:

  1. Полное руководство по команде «useradd» в Linux

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

Когда мы выполняем команду «usermod» в терминале, используются и затрагиваются следующие файлы.

  1. /etc/passwd – информация об учетной записи пользователя.
  2. /etc/shadow – защита информации об учетной записи.
  3. /etc/group – информация об учетной записи группы.
  4. /etc/gshadow – информация об учетной записи защищенной группы.
  5. /etc/login.defs – конфигурация набора теневых паролей.

Основной синтаксис команды:

usermod [options] username

Требования

  1. Для выполнения команды usermod у нас должны быть существующие учетные записи пользователей.
  2. Только суперпользователь (root) может выполнять команду usermod.
  3. Команду usermod можно выполнить в любом дистрибутиве Linux.
  4. Должны иметь базовые знания команды usermod с опциями.

Опции пользовательского мода

Команда «usermod» проста в использовании и имеет множество опций для внесения изменений в существующего пользователя. Давайте посмотрим, как использовать команду usermod, изменив некоторых существующих пользователей в Linux с помощью следующих параметров.

  1. -c=Мы можем добавить поле комментария для учетной записи пользователя.
  2. -d=изменить каталог для любой существующей учетной записи пользователя.
  3. -e=Используя эту опцию, мы можем установить срок действия учетной записи в определенный период.
  4. -g=изменить основную группу пользователя.
  5. -G=Чтобы добавить дополнительные группы.
  6. -a=добавить кого-либо из группы во дополнительную группу.
  7. -l=изменить имя входа с tecmint на tecmint_admin.
  8. -L=заблокировать учетную запись пользователя. Это заблокирует пароль, и мы не сможем использовать учетную запись.
  9. -m=перемещение содержимого домашнего каталога из существующего домашнего каталога в новый.
  10. -p=Использовать незашифрованный пароль для нового пароля. (НЕ ЗАЩИЩЕНО).
  11. -s=Создать указанную оболочку для новых учетных записей.
  12. -u=используется для присвоения UID учетной записи пользователя в диапазоне от 0 до 999.
  13. -U=разблокировать учетные записи пользователей. Это снимет блокировку паролем и позволит нам использовать учетную запись пользователя.

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

1. Добавление информации в учетную запись пользователя

Опция «-c» используется для установки краткого комментария (информации) об учетной записи пользователя. Например, давайте добавим информацию о пользователе «tecmint», используя следующую команду.

usermod -c "This is Tecmint" tecmint

После добавления информации о пользователе тот же комментарий можно просмотреть в файле /etc/passwd.

grep -E --color 'tecmint' /etc/passwd

tecmint:x:500:500:This is Tecmint:/home/tecmint:/bin/sh

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

На приведенном выше шаге мы видим, что наш домашний каталог находится в /home/tecmint/. Если нам нужно изменить его на какой-либо другой каталог, мы можем изменить его, используя -d вариант с командой usermod.

Например, я хочу изменить наш домашний каталог на /var/www/, но перед изменением давайте проверим текущий домашний каталог пользователя, используя следующую команду.

grep -E --color '/home/tecmint' /etc/passwd

tecmint:x:500:500:This is Tecmint:/home/tecmint:/bin/sh

Теперь измените домашний каталог с /home/tecmint на /var/www/ и подтвердите домашний каталог после изменения.

usermod -d /var/www/ tecmint
grep -E --color '/var/www/' /etc/passwd

tecmint:x:500:500:This is Tecmint:/var/www:/bin/sh

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

Опция «-e» используется для установки даты истечения срока действия учетной записи пользователя в формате даты ГГГГ-ММ-ДД. Прежде чем настраивать дату истечения срока действия для пользователя, давайте сначала проверим текущий статус истечения срока действия учетной записи с помощью команды «chage» (изменить информацию об истечении срока действия пароля пользователя).

chage -l tecmint

Last password change					: Nov 02, 2014
Password expires					: never
Password inactive					: never
Account expires						: Dec 01, 2014
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

Срок действия пользователя «tecmint» истекает 1 декабря 2014 г., давайте изменим его на 1 ноября 2014 г. с помощью 'usermod -e » и подтвердите дату истечения срока действия с помощью команды «изменить».

usermod -e 2014-11-01 tecmint
chage -l tecmint

Last password change					: Nov 02, 2014
Password expires					: never
Password inactive					: never
Account expires						: Nov 01, 2014
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

4. Изменить основную группу пользователя

Чтобы установить или изменить основную группу пользователей, мы используем опцию «-g» с командой usermod. Прежде чем менять основную группу пользователя, сначала обязательно проверьте текущую группу для пользователя tecmint_test.

id tecmint_test

uid=501(tecmint_test) gid=502(tecmint_test) groups=502(tecmint_test)

Теперь установите группу babin в качестве основной группы для пользователя tecmint_test и подтвердите изменения.

usermod -g babin tecmint_test
id tecmint_test

uid=501(tecmint_test) gid=502(babin) groups=502(tecmint_test)

5. Добавление группы к существующему пользователю

Если вы хотите добавить новую группу под названием «tecmint_test0» для пользователя «tecmint», вы можете использовать опцию «-G» с командой usermod. как показано ниже.

usermod -G tecmint_test0 tecmint
id tecmint

Примечание. Будьте осторожны: при добавлении новых групп к существующему пользователю только с помощью параметра «-G» будут удалены все существующие группы, которые пользователь принадлежит. Поэтому всегда добавляйте «-a» (добавление) с параметром «-G», чтобы добавлять или добавлять новые группы.

6. Добавление дополнительной и основной группы пользователю.

Если вам нужно добавить пользователя в любую из дополнительных групп, вы можете использовать опции «-a» и «-G». Например, здесь мы собираемся добавить учетную запись пользователя tecmint_test0 с пользователем wheel.

usermod -a -G wheel tecmint_test0
id tecmint_test0

Таким образом, пользователь tecmint_test0 остается в своей основной группе, а также во вторичной группе (wheel). Это позволит моей обычной учетной записи пользователя выполнять любые команды с привилегиями root в Linux.

eg : sudo service httpd restart

7. Изменить имя пользователя для входа.

Чтобы изменить любое существующее имя пользователя, мы можем использовать опцию «-l» (новый логин). В приведенном ниже примере мы меняем имя для входа tecmint на tecmint_admin. Таким образом, имя пользователя tecmint было переименовано в новое имя tecmint_admin.

usermod -l tecmint_admin tecmint

Теперь проверьте наличие пользователя tecmint. Его не будет, поскольку мы изменили его на tecmint_admin.

id tecmint

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

id tecmint_admin

8. Заблокировать учетную запись пользователя

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

usermod -L babin

Проверьте заблокированный аккаунт.

grep -E --color 'babin' cat /etc/shadow

9. Разблокировать учетную запись пользователя

Параметр «-U» используется для разблокировки любого заблокированного пользователя. При этом знак ! перед зашифрованным паролем будет удален.

grep -E --color 'babin' /etc/shadow
usermod -U babin

Верифицируйте пользователя после разблокировки.

grep -E --color 'babin' /etc/shadow

10. Переместите домашний каталог пользователя в новое место.

Допустим, у вас есть учетная запись пользователя «pinky» с домашним каталогом «/home/pinky», и вы хотите перейти в новое местоположение, например «/var». /мизинец'. Вы можете использовать параметры «-d» и «-m», чтобы переместить существующие пользовательские файлы из текущего домашнего каталога в новый домашний каталог.

Проверьте учетную запись и ее текущий домашний каталог.

grep -E --color 'pinky' /etc/passwd

Затем перечислите файлы, принадлежащие пользователю Pinky.

ls -l /home/pinky/

Теперь нам нужно переместить домашний каталог из /home/pinky в /var/pinky.

usermod -d /var/pinky/ -m pinky

Затем проверьте изменение каталога.

grep -E --color 'pinky' /etc/passwd

Проверьте наличие файлов в папке «/home/pinky». Здесь мы переместили файлы с помощью параметра -m, поэтому файлов не будет. Пользовательские файлы мизинца теперь будут находиться в папке /var/pinky.

ls -l /home/pinky/
ls -l /var/pinky/

11. Создайте незашифрованный пароль для пользователя.

Чтобы создать незашифрованный пароль, мы используем опцию «-p» (пароль). В демонстрационных целях я устанавливаю новый пароль, например «redhat», для пользователя pinky.

usermod -p redhat pinky

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

grep -E --color 'pinky' /etc/shadow

Примечание. Вы видели на изображении выше, что пароль ясно виден всем. Так вот, эту опцию использовать не рекомендуется, поскольку пароль будет виден всем пользователям.

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

Оболочку входа пользователя можно изменить или определить во время создания пользователя с помощью команды useradd или изменить с помощью команды «usermod», используя опцию «-s» ( оболочка). Например, пользователь «babin» по умолчанию имеет оболочку /bin/bash, теперь я хочу изменить ее на /bin/sh. .

grep -E --color 'babin' /etc/passwd
usermod -s /bin/sh babin

После изменения пользовательской оболочки проверьте пользовательскую оболочку с помощью следующей команды.

grep -E --color 'babin' /etc/passwd

13. Изменить идентификатор пользователя (UID)

В приведенном ниже примере вы можете видеть, что моя учетная запись пользователя «babin» имеет UID 502, теперь я хочу изменить его на 888. как мой UID. Мы можем назначить UID в диапазоне от 0 до 999.

grep -E --color 'babin' /etc/passwd
OR
id babin

Теперь давайте изменим UID пользователя babin, используя опцию «-u» (uid), и проверим изменения.

usermod -u 888 babin
id babin

14. Изменение учетной записи пользователя с несколькими вариантами

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

Пользователь Jack имеет домашний каталог по умолчанию /home/jack. Теперь я хочу изменить его на /var/www/html и назначить его оболочку как bash, установите срок действия 10 декабря 2014 г., добавьте новый ярлык Это jack, измените UID на 555, и он станет членом группы Apple.

Давайте посмотрим, как изменить учетную запись jack, используя несколько опций.

usermod -d /var/www/html/ -s /bin/bash -e 2014-12-10 -c "This is Jack" -u 555 -aG apple jack

Затем проверьте изменения UID и домашнего каталога.

grep -E --color 'jack' /etc/passwd

Проверка срока действия аккаунта.

chage -l jack

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

grep -E --color 'jack' /etc/group

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

Мы можем изменить UID и GID текущего пользователя. Для перехода на новый GID нам нужна существующая группа. Здесь уже есть учетная запись с именем orange и GID 777.

Теперь моей учетной записи пользователя jack нужно назначить UID 666 и GID Orange (777).

Перед изменением проверьте текущие UID и GID.

id jack

Измените UID и GID.

usermod -u 666 -g 777 jack

Проверьте изменения.

id jack

Заключение

Здесь мы очень подробно увидели, как использовать команду usermod с ее параметрами. Прежде чем узнать о команде usermod, необходимо знать команду «useradd» и ее параметры, чтобы использовать usermod. Если я пропустил какой-либо момент в статье, дайте мне знать в комментариях и не забудьте добавить свои ценные комментарии.