useradd -hUsage: useradd [options] LOGIN
Options:
-b, --base-dir BASE_DIR ๐ Set base home directory
-c, --comment COMMENT ๐ Add user comment
-d, --home-dir HOME_DIR ๐ Specify home directory path
-e, --expiredate EXPIRE_DATE โณ Set account expiration date
-g, --gid GROUP ๐ฅ Set primary group ID
-G, --groups GROUPS ๐ Add secondary groups
-m, --create-home ๐ก Create a home directory
-M, --no-create-home ๐ซ Do not create a home directory
-s, --shell SHELL ๐ฅ๏ธ Set login shell
-u, --uid UID ๐ข Set user ID
-p, --password PASSWORD ๐ Set an encrypted password
-r, --system โ๏ธ Create a system userโ
This helps understand all useradd options.
useradd -m -d /home/john johnโ
Creates user john with a home directory /home/john.
tail -n 1 /etc/passwdjohn:x:1001:1001::/home/john:/bin/bashpasswd johnโ
Sets a password for user john.
useradd -p $(openssl passwd -1 "MySecurePassword") user1โ
Uses openssl to set an encrypted password.
useradd -u 1050 user2โ
Creates user2 with UID 1050.
id user2uid=1050(user2) gid=1050(user2) groups=1050(user2)useradd -g developers user3โ
Creates user3 and assigns it to the developers group.
id user3useradd -G sudo,developers user4โ
Adds user4 to sudo and developers groups.
groups user4user4 : user4 sudo developersuseradd -e 2025-12-31 user5โ
User user5 will expire on 31 Dec 2025.
chage -l user5Account expires: Dec 31, 2025useradd --no-create-home user6โ
Creates user6 without a home directory.
ls -ld /home/user6ls: cannot access '/home/user6': No such file or directoryuseradd -s /bin/zsh user7โ
Sets /bin/zsh as the default shell for user7.
cat /etc/passwd | grep user7user7:x:1007:1007::/home/user7:/bin/zshuseradd -r systemuserโ
Creates a system user systemuser.
id systemuseruid=497(systemuser) gid=497(systemuser) groups=497(systemuser)useradd -c "Project Manager" user8โ
Adds Project Manager as a comment for user8.
cat /etc/passwd | grep user8user8:x:1008:1008:Project Manager:/home/user8:/bin/bashuserdel user9โ
Deletes user9 but keeps their home directory.
userdel -r user10โ
Deletes user10 and removes /home/user10.
| ๐ฏ Command | ๐ Description |
|---|---|
useradd -m john |
Creates a user john with a home directory |
passwd john |
Sets a password for john |
useradd -u 1050 user2 |
Creates user2 with UID 1050 |
useradd -g developers user3 |
Assigns user3 to developers group |
useradd -G sudo,developers user4 |
Adds user4 to multiple groups |
useradd -e 2025-12-31 user5 |
Sets an expiration date for user5 |
useradd --no-create-home user6 |
Creates user6 without a home directory |
useradd -s /bin/zsh user7 |
Sets /bin/zsh as the shell for user7 |
useradd -r systemuser |
Creates a system user |
useradd -c "Project Manager" user8 |
Adds a comment for user8 |
userdel user9 |
Deletes user9 but keeps home directory |
userdel -r user10 |
Deletes user10 and removes home directory |