在 Linux 系统中,adduser 和 addgroup 是用于创建新用户和用户组的命令。它们比传统的 useradd 和 groupadd 更友好,提供了交互式配置选项,适合新手使用。

1. adduser 命令

功能:创建新用户并自动设置家目录、Shell 环境等。

命令格式

adduser [选项] 用户名


常用选项

| 选项 | 说明 |
|---|---|
| --system | 创建系统用户(无家目录) |
| --home /path/to/home | 指定家目录路径 |
| --shell /bin/bash | 指定登录 Shell |
| --disabled-login | 禁止用户登录 |
| --ingroup 组名 | 指定用户所属的主组 |

使用案例

① 创建普通用户

sudo adduser alice


交互式设置密码、用户信息(可留空)

自动创建 /home/alice 目录。

② 创建系统用户(无家目录)

sudo adduser --system --no-create-home sysuser


适用于运行服务的用户(如 nginx、mysql)。

③ 创建用户并指定 Shell

sudo adduser --shell /bin/zsh bob


用户 bob 默认使用 zsh。

2. addgroup 命令

功能:创建新用户组。

命令格式

addgroup [选项] 组名


使用案例

① 创建普通用户组

sudo addgroup developers


组名 developers 会被创建,自动分配 GID。

② 创建系统组

sudo addgroup --system docker


适用于系统服务组(如 docker、www-data)。

③ 创建组并指定 GID

sudo addgroup --gid 1005 admins


强制设置组 ID 为 1005。