在 Debian 里,deluser 是用来删除用户/用户组的系统管理命令,它本身只能由 root(或具有等效权限的用户)执行。普通用户是没有权限直接运行 deluser 的。
下面按常见需求说明“怎么给权限”。
sudo deluser 用户名
如果你当前是 sudo 用户:
sudo deluser testuser
删除用户并同时删除家目录:
sudo deluser --remove-home testuser
不能简单用 chmod 给 deluser 加权限让普通用户能用,因为:
deluser 会修改 /etc/passwd、/etc/shadow、/etc/group把用户加入 sudo 组:
sudo usermod -aG sudo 用户名
之后该用户即可:
sudo deluser xxx
编辑 sudoers(必须用 visudo):
sudo visudo
添加一行(允许用户 alice 只能执行 deluser):
alice ALL=(root) /usr/sbin/deluser
如果用户需要带参数:
alice ALL=(root) NOPASSWD: /usr/sbin/deluser *
这样 alice 可以:
sudo deluser testuser
但不能执行其他 root 命令。
sudo delgroup 组名
sudoers 示例:
alice ALL=(root) /usr/sbin/delgroup
Permission denied
原因:
sudo| 需求 | 推荐方式 |
|---|---|
| 自己管理服务器 | sudo deluser |
| 给同事权限 | visudo 精确授权 |
| 普通用户直接用 | ❌ 不支持 |
如果你愿意,可以告诉我:
我可以帮你写一份精确的 sudoers 配置。