在 Ubuntu 中,deluser 执行失败通常有以下几个常见原因。你可以对照排查:
如果用户名写错或用户已被删除:
deluser testuser
报错类似:
deluser: user 'testuser' does not exist
✅ 解决:
grep testuser /etc/passwd
deluser 需要 root 权限。
报错可能不明显,或提示:
deluser: Only root may remove a user or group from the system.
✅ 解决:
sudo deluser testuser
如果用户正在登录(SSH、桌面、screen 等):
userdel: user testuser is currently used by process 1234
(deluser 底层调用 userdel)
✅ 解决:
pkill -u testuser
sudo deluser testuser
或先查看:
who
ps -u testuser
系统用户(UID < 1000)不能直接删:
deluser --system testuser
sudo deluser --remove-home testuser
若家目录在 NFS、只读文件系统或权限异常会失败。
✅ 可先手动删:
sudo rm -rf /home/testuser
例如 mysql、www-data 等。
✅ 不建议删除系统服务用户,除非你明确知道用途。
常见错误:
deluser testuser /home/testuser # 错误
正确:
sudo deluser testuser --remove-home
whoami
id testuser
sudo deluser testuser
如果你愿意,可以把完整的报错信息贴出来,我可以精确告诉你原因。