为什么要改变路线?这是PATH没有sudo的变量:$ echo 'echo $PATH' | sh
/opt/local/ruby/bin:/usr/bin:/bin这是PATH变量与sudo:$ echo 'echo $PATH' | sudo sh
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin据我所知,sudo应该离开PATH没碰过。到底怎么回事?我该怎么改变这个?(这是在Ubuntu8.04上)。更新:据我所见,没有一个脚本是以根更改启动的。PATH无论如何。从…man sudo:为了防止命令欺骗,sudo检查`.‘。和“`”(都表示当前目录)在搜索用户路径中的命令时最后(如果其中一个或两者都在路径中)。但是,请注意,实际的PATH环境变量没有被修改,而是不改变地传递给SUDO执行的程序。
3 回答
万千封印
TA贡献1891条经验 获得超3个赞
特征
alias sudo='sudo env PATH=$PATH'
sudo su -p
阿波罗的战车
TA贡献1862条经验 获得超6个赞
visudo
默认env重置
缺省值!安全路径
添加回答
举报
0/150
提交
取消