在 Ubuntu(及一般 Debian 系 Linux)里,deluser 本身是一个“封装好的脚本”,并不是简单删账号就完事。它背后依赖一套配置和规则,所以才需要“配置 / 了解配置”。下面分点说明「为什么需要配置」以及「常见要配置什么」。
deluser 要配置?deluser 不是底层命令,而是脚本userdeldeluser 是 Perl 脚本,行为由配置文件控制Ubuntu 中:
deluser 默认会拒绝删除系统用户相关配置:
# /etc/login.defs
UID_MIN 1000
deluser 的删除范围由配置决定,比如:
deluser 会调用:
/etc/deluser.conf配置不一致会导致:
deluser 主要配置文件/etc/deluser.conf(最重要)示例:
REMOVE_HOME = 1
REMOVE_MAIL = 1
BACKUP = 0
常见选项:
| 参数 | 作用 |
|---|---|
| REMOVE_HOME | 是否删除家目录 |
| REMOVE_MAIL | 是否删除邮件 |
| BACKUP | 删除前是否备份 |
| ONLY_IF_EMPTY | 只在组无成员时删组 |
/etc/login.defs控制:
deluser username
(不配置 REMOVE_HOME)
deluser --remove-home username
或配置:
REMOVE_HOME = 1
deluser --system username
❌ 以为 deluser 一定删家目录
✅ 默认不删
❌ 以为 deluser 和 userdel 一样
✅ deluser 更安全、可控
❌ 随便删 UID < 1000 的用户
✅ 可能破坏系统服务
Ubuntu 的
deluser需要配置,是因为它把“删除用户”变成了一个可审计、可控、防误删的系统操作,而不是简单粗暴地删一行记录。
如果你愿意,我可以:
deluser.conf 模板userdel vs deluser