通过sudo执行命令,读的环境变量路径和其他用户读的环境变量是不一样的:
错误重现
root@haha:~# su - test
test@haha:~$ sudo java -version
[sudo] password for test:
sudo: java: command not found
解决:
vi /etc/sudoers
# 把路径加入java路径
test ALL=(ALL:ALL) ALL
Defaults secure_path="/usr/java/jdk1.7.0_80/bin:/usr/local/sbin"
再执行命令,结果正确