The usermod command uses various options to modify the existing user account parameters. The usermod –help command will display the various options that can be used. The syntax of usermod is as follows:
$ usermod -[option] [username]
Command line options available with the usermod command are as follows:
|-a, –append||Used with the -G option. Add user to the specified groups, but don’t remove user from groups not in the current list.|
|-c comment, –comment comment||Comment field.|
|-d dir, –home dir||Home directory.|
|-e date, –expiredate date||Account expiration date. date is in the format MM/DD/YYYY; two-digit year fields are also accepted. The value is stored as the number of days since January 1, 1970. This option requires the use of shadow passwords.|
|-f days, –inactive days||Permanently disable account this many days after the password has expired. A value of −1 disables this feature. This option requires the use of shadow passwords.|
|-g group, –gid group||Initial group name or number.|
|-G groups, –groups groups||Supplementary groups given by name or number in a comma-separated list with no whitespace. user will be removed from any groups to which it currently belongs that are not included in groups.|
|-l name, –login name||Login name. This cannot be changed while the user is logged in.|
|-L, –lock||Lock user’s password by putting a ! in front of it. This option cannot be used with -p or -U.|
|-o, –non-unique||Override. Accept a nonunique uid with the -u option.|
|-p pw, -password pw||Encrypted password, as returned from crypt(3).|
|-s shell, –shell shell||Login shell.|
|-u uid, –uid uid||Numerical user ID.|
|-U, –unlock||Unlock the user’s password by removing the ! that -L put in front of it. This option cannot be used with -p or -L.|
If you encounter the below error while running the usermod command:
usermod: command not found
you may try installing the passwd package as per your choice of distribution.
|Debian||apt-get install passwd|
|Ubuntu||apt-get install passwd|
|Alpine||apk add shadow|
|Arch Linux||pacman -S shadow|
|Kali Linux||apt-get install passwd|
|Fedora||dnf install shadow-utils-2|
|Raspbian||apt-get install passwd|
usermod Command Examples
1. Add comments, such as the user’s full name, address, phone number, and so on, in the GECOS field.
$ usermod -c "Comments" [username]
2. Modify the user’s primary group.
$ usermod -g [gid] [username]
3. Modify the user’s secondary group.
$ usermod -G [groupname] [username]
4. Used with the -G option only. It appends the user to the secondary group mentioned, without removing the user from other groups.
$ usermod -a -G [groupname] [user]
5. Modify the login shell of the user account.
$ usermod -s [shell] [username]
6. Lock a user account.
$ usermod -L [username]
7. Unlock a user account.
$ usermod -U [username]
Related Configuration Files
- /etc/group: System file containing group definitions.
- /etc/passwd: System password file.
- /etc/shadow: System file containing users’ encrypted passwords and related information.