在Linux系统中创建新用户,可通过useradd或adduser命令实现,useradd -m username(-m自动创建家目录)为常用方式,随后用passwd username设置初始密码,若需管理员权限,执行usermod -aG sudo username将用户加入sudo组,创建后可通过id username查看用户信息,或su - username切换测试,操作需root或sudo权限,建议遵循最小权限原则配置用户环境,确保系统安全。
在Linux系统中,创建新用户是日常管理的基础操作之一,无论是为了系统安全(避免直接使用root用户登录),还是为不同用户分配独立操作环境,掌握用户创建方法都非常重要,本文将以主流Linux发行版(如Ubuntu、CentOS等)为例,详细介绍通过命令行创建新用户的完整步骤,包括用户创建、密码设置、权限管理及常见问题处理。
为什么需要创建新用户?
root用户(超级用户)拥有系统最高权限,直接使用root用户登录存在安全风险(误操作可能导致系统崩溃),建议为日常操作创建普通用户,通过sudo命令临时提升权限,既能满足管理需求,又能降低安全风险,多用户场景下(如服务器共享),独立用户账户能确保数据隔离和权限管理。
创建新用户的完整步骤
步骤1:以root用户或具有sudo权限的用户登录
创建用户需要系统权限,因此必须先以root用户登录,或使用一个已配置sudo权限的普通用户(如Ubuntu默认的ubuntu用户)。

-
切换到root用户(如果当前不是root):
sudo su -
输入当前用户密码后,即可切换到root环境(提示符变为)。
-
确认权限(普通用户):
输入sudo -l,若返回User xxx may run the following commands on...且包含(ALL:ALL) ALL,则表示具有sudo权限。
步骤2:使用useradd或adduser命令创建用户
Linux中创建用户主要有两个命令:useradd(底层命令,参数灵活)和adduser(交互式命令,更友好)。推荐新手使用adduser,而useradd适合需要批量自动化操作的场景。
方法1:使用adduser(推荐,交互式设置)
adduser会提示输入用户信息,适合手动创建单个用户。
adduser newuser
执行后会依次提示:
New password::输入新用户密码(输入时不会显示字符)Retype new password::再次确认密码Full Name []::用户全名(可留空直接回车)Room Number []::房间号(可留空)Work Phone []::工作电话(可留空)Home Phone []::家庭电话(可留空)Other []::其他信息(可留空)Is the information correct? [Y/n]::确认信息,输入Y后回车完成创建。
示例:
sudo adduser testuser # 普通用户使用sudo,root用户可直接执行
执行后,系统会自动创建用户家目录(默认为/home/testuser)、设置基本权限,并创建与用户名同名的用户组。
方法2:使用useradd(底层命令,需手动指定参数)
useradd是更底层的命令,默认不会创建家目录或设置登录shell,需通过参数补充,常用参数如下:
| 参数 | 作用 |
|---|---|
-m |
创建用户家目录(默认不创建) |
-s |
指定登录shell(如/bin/bash、/bin/sh) |
-d |
指定家目录路径(默认/home/username) |
-c |
添加用户注释(如全名) |
-g |
指定主用户组(默认与用户名同组) |
-G |
指定附加用户组(多个组用逗号分隔) |
-e |
设置账户过期日期(格式YYYY-MM-DD) |
-r |
创建系统用户(无家目录,UID小于1000) |
基础示例(创建普通用户,带家目录和bash shell):
sudo useradd -m -s /bin/bash newuser
进阶示例(创建用户并指定附加组):
假设需要创建用户devuser,使其同时属于sudo(管理员组)和docker组:
sudo useradd -m -s /bin/bash -G sudo,docker devuser
注意:
- 如果不指定
-s,默认可能使用/bin/sh(功能较简单的shell),建议明确指定/bin/bash(兼容性更好)。 - 系统用户(如服务账户)可加
-r参数,例如sudo useradd -r -s /bin/false nginx(创建nginx服务用户,无登录权限)。
步骤3:为新用户设置密码
无论是useradd还是adduser,创建用户后必须手动设置密码,否则无法登录。
passwd newuser
执行后会提示输入两次密码(同adduser的密码设置流程),设置成功后会显示passwd: password updated successfully。
步骤4:验证用户是否创建成功
查看用户信息
使用id命令查看用户UID、GID及所属组:
id newuser
输出示例:uid=1001(newuser) gid=1001(newuser) groups=1001(newuser),27(sudo),999(docker)(表示用户属于newuser主组,以及sudo和docker附加组)。
检查用户列表
查看/etc/passwd文件(包含所有用户信息):
cat /etc/passwd | grep newuser
输出示例:newuser:x:1001:1001::/home/newuser:/bin/bash(格式:用户名:密码占位符:UID:GID:注释:家目录:shell)。
尝试切换用户
使用su -命令切换到新用户,验证是否可以登录:
su - newuser
输入密码后,若提示符变为newuser@hostname:~$,则表示创建成功,输入exit可返回原用户。
用户管理常用操作
创建用户后,可能还需要修改用户

