在 Ubuntu 中,deluser(实际上是 userdel 的前端封装)不能“强制”删除正在登录或进程仍在运行的用户,但可以通过一些方式“绕过限制”来完成删除。
sudo deluser username
如果用户仍有进程在运行,会报错:
userdel: user username is currently used by process 1234
deluser 本身没有 -f 参数,但你可以直接使用底层命令:
sudo userdel -f username
-f 的作用:
⚠️ 注意:这不会杀掉该用户的进程,只是从系统账户中移除用户。
sudo userdel -rf username
-r:删除家目录 /home/username-f:强制删除# 查看用户进程
ps -u username
# 杀掉进程
sudo pkill -u username
sudo pkill -9 -u username
# 再删除
sudo deluser --remove-home username
| 需求 | 命令 |
|---|---|
| 普通删除 | deluser username |
| 强制删除 | userdel -f username |
| 强制+删家目录 | userdel -rf username |
| 安全删除 | 杀进程后再 deluser |
如果你是在 Docker / WSL / 服务器 环境,我也可以给你更具体的建议。