Raspberry Pi_Eng_12.6.1 “usermod” Command – Change User


Published Book on Amazon


All of IOT Starting with the Latest Raspberry Pi from Beginner to Advanced – Volume 1
All of IOT Starting with the Latest Raspberry Pi from Beginner to Advanced – Volume 2


출판된 한글판 도서


최신 라즈베리파이(Raspberry Pi)로 시작하는 사물인터넷(IOT)의 모든 것 – 초보에서 고급까지 (상)
최신 라즈베리파이(Raspberry Pi)로 시작하는 사물인터넷(IOT)의 모든 것 – 초보에서 고급까지 (하)


Original Book Contents


12.6   User Change

 

After the user account is created on the system, there may be a case where the contents of various items defined for the user account need to be changed.

 

12.6.1  "usermod" Command Change User

 

You can use the "usermod" command to change all defined contents of a user account.

 

[Command Format]

usermod [options] LOGIN

 

[Command Overview]    

   This changes the contents of various items defined for the user account.

   User privilege          -- Normal user

                             when you want to change the content about your own user.

-- Super user

when you want to change the contents about another user.

[Detail Description]

   None

 

[Main Option]

-d, --home HOME_DIR

The user's new login directory.

 

If the -m option is given, the contents of the current home directory will be moved to the new home directory, which is created if it does not already exist.

-e, --expiredate EXPIRE_DATE

 

The date on which the user account will be disabled. The date is specified in the format YYYY-MM-DD.

 

An empty EXPIRE_DATE argument will disable the expiration of the account.

-f, --inactive INACTIVE

The number of days after a password expires until the account is ermanently disabled.

 

A value of 0 disables the account as soon as the password has expired, and a value of -1 disables the feature.

-g, --gid GROUP

The group name or number of the user's new initial login group. The group must exist.

 

Any file from the user's home directory owned by the previous primary group of the user will be owned by this new group.

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]

 

A list of supplementary groups which the user is also a member of. Each group is separated from the next by a comma, with no intervening whitespace. The groups are subject to the same restrictions as the group given with the -g option.

 

If the user is currently a member of a group which is not listed, the user will be removed from the group. This behaviour can be changed via the -a option, which appends the user to the current supplementary group list.

-L, --lock

Lock a user's password. This puts a '!' in front of the encrypted password, effectively disabling the password. You can't use this option with -p or -U.

 

Note: if you wish to lock the account (not only access with a password), you should also set the EXPIRE_DATE to 1.

-m, --move-home

 

Move the content of the user's home directory to the new location.

This option is only valid in combination with the -d (or --home) option.

 

usermod will try to adapt the ownership of the files and to copy the modes, ACL and extended attributes, but manual changes might be needed afterwards.

-p, --password PASSWORD

 

The encrypted password, as returned by crypt(3).

Note: This option is not recommended because the password (or encrypted password) will be visible by users listing the processes.

 

The password will be written in the local /etc/passwd or /etc/shadow file. This might differ from the password database configured in your PAM configuration.

 

You should make sure the password respects the system's password policy.

-U, --unlock

Unlock a user's password. This removes the '!' in front of the encrypted password. You can't use this option with -p or -L.

 

Note: if you wish to unlock the account (not only access with a password), you should also set the EXPIRE_DATE (for example to 99999, or to the EXPIRE value from /etc/default/useradd).