众所周知,Linux系统sudo命令可以搜索PATH下的命令,但是有时候明明PATH下有某些命令,为什么sudo就是搜索不到。这可能是因为Linux自动对PATH进行重置,改变了sudo命令搜索的路径,可以修改sudo的PATH路径来解决这个问题。下面,跟随小编一起来看看解决方法吧。
sudo命令
以下的两种方法都要打开sudo的配置文件:sudo visudo
方法一、可以使用 secure_path 指令修改 sudoers 中默认的 PATH为你想要的路径。这个指令指定当用户执行 sudo 命令时在什么地方寻找二进制代码和命令。这个选项的目的显然是要限制用户运行 sudo 命令的范围,这是一种好做法。
方法二、将Defaults env_reset改成Defaults !env_reset取消掉对PATH变量的重置,然后在.bashrc中最后添加alias sudo=‘sudo env PATH=$PATH’,这样sudo执行命令时所搜寻的路径就是系统的PATH变量中的路径,如想添加其他变量也是类似。