在 Ubuntu(以及大多数 Linux 发行版)中,deluser 和 userdel 都用于删除用户,但它们来自不同的工具集,功能和易用性上有明显区别。
| 项目 | deluser | userdel |
|---|---|---|
| 来源 | Debian / Ubuntu 特有 | 原生 shadow-utils(所有 Linux 通用) |
| 封装层级 | 高层封装 | 底层命令 |
| 易用性 | 更安全、更人性化 | 更原始、参数少 |
| 是否推荐 | ✅ Ubuntu 推荐 | ⚠️ 可用但不推荐 |
sudo deluser 用户名
✅ 默认行为:
sudo deluser --remove-home 用户名
sudo deluser --remove-home --remove-mail-spool 用户名
sudo deluser --remove-all-files 用户名
⚠️ 会扫描整个系统,速度较慢
sudo deluser --group 组名
或
sudo delgroup 组名
sudo userdel 用户名
✅ 默认行为:
sudo userdel -r 用户名
⚠️ 不会自动处理:
| 方面 | deluser | userdel |
|---|---|---|
| 是否检查进程 | ✅ 会提示 | ❌ 不检查 |
| 是否自动清理 | ✅ 更完整 | ❌ 需手动 |
| 是否适合新手 | ✅ 是 | ❌ 否 |
| 功能 | deluser | userdel |
|---|---|---|
| 删除用户 | ✅ | ✅ |
| 删除家目录 | ✅(需参数) | ✅(需参数) |
| 删除邮件 | ✅ | ❌ |
| 删除所有文件 | ✅ | ❌ |
| 交互提示 | ✅ | ❌ |
sudo deluser --remove-home 用户名
sudo userdel -r 用户名
ps -u 用户名
如果有进程在运行,先杀掉:
sudo pkill -u 用户名
在 Ubuntu 中:用
deluser,不要用userdel
deluser是 Debian/Ubuntu 对userdel的安全封装,功能更强、风险更低。
如果你需要 批量删除用户脚本 或 LDAP / 系统用户区别,我也可以继续讲。