How to Create a User in Ubuntu

The Identity Provisioning Vector

Sharing the master `root` account on an Ubuntu server with multiple developers is a catastrophic security vulnerability. If an inexperienced user executes a recursive deletion command as `root`, the entire operating system will be instantly destroyed. You must instruct the Linux kernel to cryptographically partition the file system, generating a brand new, isolated user identity with strictly defined, unprivileged access to a dedicated home directory.

How to Create a User

Ubuntu provides two command-line utilities for this task: the low-level `useradd` (which requires manual configuration of all directories and shells) and the high-level `adduser` (an interactive script that mathematically handles all backend provisioning automatically). You must use `adduser`.

1. Open your terminal application or connect to the server via SSH.
2. The Provisioning Execution (`adduser`):
* Because you are modifying the core security roster of the operating system, you must possess root privileges.
* The syntax is: `sudo adduser [new_username]`
* Rule: Usernames should be lowercase, containing no spaces or special characters.
* To create a developer account named `alex`, type:
sudo adduser alex
* Press Enter.
3. The Cryptographic Lockdown (Passwords):
* The script will instantly construct the `/home/alex` directory and then halt, demanding a cryptographic key.
* The prompt will say `New password:`. Type a highly complex password and press Enter.
* Security Note: As you type, absolutely no characters will appear on the screen. This is a Unix security feature. Type carefully.
* It will ask you to `Retype new password:`. Do so and press Enter.
4. The Metadata Matrix (Optional):
* The script will then prompt you for the user’s Full Name, Room Number, Work Phone, etc.
* This data is largely irrelevant for modern server environments. You can simply press Enter five times to leave all these fields blank.
* Finally, it will ask `Is the information correct? [Y/n]`. Type Y and press Enter.
5. The Escalation Protocol (Granting Sudo Access):
* By default, the new user `alex` is completely unprivileged. They cannot install software or restart the server.
* If you need `alex` to be an administrator, you must inject their identity into the master `sudo` group.
* Type: sudo usermod -aG sudo alex
* Press Enter. The new user is now fully provisioned and securely integrated into the environment.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.