环境变量配置:
# ~/.bash_profile
export GOROOT=/usr/local/go
export GOPATH=/usr/local/GO
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
错误描述:
- 使用非root用户,执行
go version
获得正确输出。 - 使用root用户,执行
go verison
获得正确输出。 - 使用非root用户,执行
sudo go version
获得输出sudo: go: command not found。
解决办法:
根据 Some programs not found when used with sudo 中的回答。
我们使用 sudo
时,使用的配置文件是 /etc/sudoers
。
配置 /etc/sudoers
文件中的 Defaults secure_path
这一项。将 $GOROOT/bin
目录加入进去。(请使用绝对目录,如:/usr/local/go/bin/)
Defaults secure_path
这一行:
Defaults secure_path = /usr/local/go/bin/:/sbin:/bin:/usr/sbin:/usr/bin