场景
当前用户是一个 sudoer,用 sudo 执行了一个命令,比如:sudo java -version,系统提示”command not found”。
原因
系统安装的 sudo 在编译时缺省使用了 —with-secure-path 参数,导致当前用户的 $PATH 环境变量在 sudo 时被覆盖掉了。
解决
方法一:简单的临时解决办法
编辑 ~/.bashrc
,添加下面这行:
|
|
这个办法是在执行 sudo 时套用上当前的 $PATH 的值来达到目的。
方法二:另一个临时解决办法
编辑 etc/sudoers
,添加下面这行:
|
|
方法三:根本解决办法
重新编译安装 sudo,不带 -–with-secure-path 参数。