sudo找不到命令:修改sudo的PATH路径
原文链接:http://www.cnblogs.com/A-Song/archive/2013/03/09/2951951.html
sudo有时候会出现找不到命令,而明明PATH路径下包含该命令,让人疑惑。其实出现 这种情况的原因,主要是因为当 sudo以管理权限执行命令的时候,linux将PATH环境变量进行了重置,当然这主要是因为系统安全的考虑,但却使得sudo搜索的路径不是我们想要 的PATH变量的路径,当然就找不到我们想要的命令了。两种方法解决该问题:
首先,都要打开sudo的配置文件:sudo visudo
1.可以使用 secure_path 指令修改 sudoers 中默认的 PATH为你想要的路径。这个指令指定当用户执行 sudo 命令时在什么地方寻找二进制代码和命令。这个选项的目的显然是要限制用户运行 sudo 命令的范围,这是一种好做法。
2.将Defaults env_reset改成Defaults !env_reset取消掉对PATH变量的重置,然后在.bashrc中最后添加alias sudo='sudo env PATH=$PATH',这样sudo执行命令时所搜寻的路径就是系统的PATH变量中的路径,如想添加其他变量也是类似。
参考:充分发挥 sudo 的作用 http://www.ibm.com/developerworks/cn/aix/library/au-sudo/index.html
作者:红山玉龙
出处:http://www.cnblogs.com/yhLinux/
各位看官如果觉得文章对您有用的话,请猛击右下方大姆指给个推荐,让更多的朋友能够看到,以节约搜索解决方案的时间,用来做更有意义的事情o(∩_∩)o
分享知识是快乐的,也应是自由的。欢迎各位朋友转载,请您在转载时帖上本文原文链接,谢谢!