这个命令是一个功能完整的 Linux 用户创建命令,特别适合需要具备管理员权限的普通用户。下面为您详细解析每个部分的作用。

🔧 命令参数详解

下表清晰地展示了命令中每个参数的功能和意义:

参数 含义与功能 补充说明
sudo 以超级管理员权限执行命令 创建用户需要 root 权限,普通用户需借助 sudo
useradd Linux 系统中用于添加新用户的命令 。 -
-m 自动创建用户的主目录 (home directory) 。 目录通常位于 /home/用户名 下。没有此参数,用户将没有“家”目录,可能导致登录问题 。
-s /bin/bash 指定用户的默认登录 Shell 为 Bash 。 Bash 是常用的功能完整的 Shell。若想禁止用户登录,可设为 /sbin/nologin
-G sudo 将用户添加到 sudo 附加组 这赋予了用户执行特权命令的能力,是命令的核心目的之一。用户仍保留自己的主组。
用户名 您要创建的新用户的登录名称。 需符合系统命名规范,且唯一 。

💡 实用知识扩展

  • -m 的重要性:在大多数情况下,强烈建议使用 -m 参数,以便用户拥有一个独立的工作空间和环境配置目录。如果目录已存在,则需要确保权限正确 。
  • 主组与附加组-G 指定的是附加组。用户还会有一个主组,如果未通过 -g 参数指定,系统通常会创建一个与用户名同名的新组作为其主组。附加组用于授予用户额外的权限 。
  • 初始密码useradd 命令不会为用户设置密码。新账户创建后默认是锁定的,必须使用 sudo passwd 用户名 命令来设置密码后,用户才能登录 。

🚀 完整操作示例

假设要创建一个名为 zhangshan 的用户,并完成所有设置,完整的流程如下:

# 1. 执行创建用户的命令
sudo useradd -m -s /bin/bash -G sudo zhangshan

# 2. 为新用户设置密码(系统会交互式提示输入)
sudo passwd zhangshan

# 3. (可选)验证用户是否创建成功,可以查看其 `id` 信息
id zhangshan

执行 id 命令后,您应该能看到类似这样的输出,其中包含了用户ID(uid)、主组ID(gid)以及所属的组列表(包括 sudo 组),这表明用户已按预期创建。

uid=1001(zhangshan) gid=1001(zhangshan) groups=1001(zhangshan),27(sudo)

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐