sudo 失败的定位与修复
执行 sudo 报 user is not in the sudoers file、密码错误、unable to resolve host、command not found,或直接没有任何提示地失败。
id
sudo -l
visudo -c
cat /etc/sudoers
ls -l /etc/sudoers.d/
getent hosts "$(hostname)"
journalctl -t sudo --since '10 min ago'
/etc/sudoers 或 /etc/sudoers.d/ 语法错误,sudo 拒绝加载。unable to resolve host。secure_path 不包含命令路径,或使用了相对路径。sudo -l 和 visudo -c。wheel/sudo),或用 visudo 在 /etc/sudoers.d/ 添加最小规则。visudo,避免语法错误把自己锁在外面。/etc/hosts 的主机名映射,或调整 sudo 的 hosts 选项。secure_path。sudo — 提权执行visudo — 安全编辑 sudoersid — 用户与组getent — 主机名解析