Linux系统下创建新用户的详细指南

admin
在Linux系统中创建新用户,可通过useraddadduser命令实现,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用户)。

Linux系统下创建新用户的详细指南

  • 切换到root用户(如果当前不是root):

    sudo su -

    输入当前用户密码后,即可切换到root环境(提示符变为)。

  • 确认权限(普通用户):
    输入sudo -l,若返回User xxx may run the following commands on...且包含(ALL:ALL) ALL,则表示具有sudo权限。

步骤2:使用useraddadduser命令创建用户

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可返回原用户。

用户管理常用操作

创建用户后,可能还需要修改用户

文章版权声明:除非注明,否则均为xmsdn原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码