这是因为用户的path环境变量与superuser(管理员)的环境变量不一样导致。
可以比较以下输出:
env | grep ^PATH
sudo env | grep ^PATH
解决方法:
1. sudo -E env "PATH=$PATH" <command> [arguments]
2. alias mysudo='sudo -E env "PATH=$PATH"'
3. 或者将执行程序路径添加到sudo默认搜索路径中:
编辑/ect/sudoer文件,找到如下行,添加程序路径即可
Defaults secure_path="/usr/local/sbin:/usr/local/bin:
/usr/sbin:/usr/bin:/sbin:/bin"