怎么可能在没有 sudo -E 的情况下找到命令,但使用 sudo -E 却找不到命令?

怎么可能在没有 sudo -E 的情况下找到命令,但使用 sudo -E 却找不到命令?

Afaik 程序中发现PATH是一个环境变量,并在保留调用用户(包括)的环境的同时sudo -E执行具有权限的命令,因此任何由当前用户找到并可以作为当前用户执行的命令都应该由当前用户找到并可执行和。rootPATHxwhich xsudo -E which xsudo -E x

例如,在默认jhbuild安装的(GNOME 依赖项解析和构建自动化工具)的情况下$HOME/.local/bin,情况并非如此。这怎么可能?

答案1

您的 sudoers 可能设置了 secure_path 选项,并且无论-E.您可以取消设置或通过将特定用户添加到 来免除其设置exempt_group。看须藤者(5)了解更多信息。

相关内容