0Pricing
Linux Command Line Mastery · Lesson

User and Group Management: `useradd`, `usermod`, `groupadd`

Learn to create, modify, and delete user accounts and groups on a Linux machine.

User and Group Management: `useradd`, `usermod`, `groupadd` is a free Linux Command Line Mastery lesson on CoddyKit — lesson 1 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Linux Command Line Mastery learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.

Welcome to User Management

In Linux, managing users and groups is crucial for security and organization. Every file and process has an owner, and permissions are often set based on user and group affiliations.

This lesson will teach you how to create, modify, and remove user accounts and groups.

Creating New Users: `useradd`

The useradd command creates a new user account. By default, it creates a new primary group with the same name as the user and assigns a unique User ID (UID).

You'll often need sudo (superuser do) privileges to run this command.

sudo useradd newuser

Customizing Users: Home & Shell

When you create a user, you might want to specify their home directory and default shell. The -m option creates the user's home directory if it doesn't exist, and -s sets their login shell.

Without -m, no home directory is created, which can cause issues.

sudo useradd -m -s /bin/bash devuser

Verifying User Details: `id`

After creating a user, you can verify their existence and check their User ID (UID) and Group IDs (GIDs) using the id command. This helps confirm the account was set up correctly.

id devuser

Understanding Linux Groups

Groups are collections of users. They simplify permission management, allowing multiple users to share access to files and resources without individually setting permissions for each user.

Each user has a primary group (often named after the user) and can belong to multiple supplementary groups.

Creating New Groups: `groupadd`

To create a new group, you use the groupadd command. This is useful for organizing users into functional teams, like 'developers' or 'admins', and then assigning file permissions to that group.

sudo groupadd project_team

Adding Users to Groups: `usermod`

The usermod command modifies an existing user account. To add a user to a supplementary group, use the -aG (append to Group) option.

Remember, -a must be used with -G to append, otherwise -G alone would overwrite existing supplementary groups!

sudo usermod -aG project_team devuser

Modifying User Accounts: `usermod`

Beyond adding to groups, usermod can change various user properties. For example, you can change a user's primary group using -g or update their full name/comment using -c.

Always be careful when modifying user accounts, especially sensitive information.

sudo usermod -c "Developer for Project X" devuser

Removing Users and Groups

To remove a user account, use userdel. The -r option is commonly used to remove the user's home directory and mail spool along with the account.

To remove a group, use groupdel. A group cannot be removed if it's the primary group for any existing user.

sudo userdel -r olduser
sudo groupdel oldgroup

Quick Check: User & Group Commands

Which of the following commands would you use to add an existing user named analyst1 to a new supplementary group named data_team?

Recap: User & Group Management

Congratulations! You've learned the essentials of user and group management in Linux.

  • useradd creates new user accounts.
  • groupadd creates new groups.
  • usermod modifies existing user accounts and can add users to supplementary groups using -aG.
  • userdel and groupdel remove users and groups, respectively.

These commands are fundamental for system administration and maintaining a secure Linux environment.

Frequently asked questions

Is the “User and Group Management: `useradd`, `usermod`, `groupadd`” lesson free?

Yes — the full text of “User and Group Management: `useradd`, `usermod`, `groupadd`” is free to read here on the web, and the Linux Command Line Mastery course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Linux Command Line Mastery course, upgrade to CoddyKit PRO.

What will I learn in “User and Group Management: `useradd`, `usermod`, `groupadd`”?

Learn to create, modify, and delete user accounts and groups on a Linux machine. You practise Linux Command Line Mastery with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.

Do I need any experience to start Linux Command Line Mastery?

No prior experience is required. Linux Command Line Mastery on CoddyKit is structured for beginners through advanced learners; this is — lesson 1 of 4, so you can start here or from the beginning and move at your own pace.

How long does the “User and Group Management: `useradd`, `usermod`, `groupadd`” lesson take?

Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.

Can I write and run code in this Linux Command Line Mastery lesson?

Yes. Every Linux Command Line Mastery lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.

All lessons in this course

  1. User and Group Management: `useradd`, `usermod`, `groupadd`
  2. Introduction to Networking Commands: `ping`, `ip`, `netstat`
  3. Secure Remote Access: `ssh` and `scp`
  4. File Permissions and Ownership with chmod and chown
← Back to Linux Command Line Mastery