环境变量配置:

# ~/.bash_profile
export GOROOT=/usr/local/go
export GOPATH=/usr/local/GO
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

错误描述:

  1. 使用非root用户,执行 go version 获得正确输出。
  2. 使用root用户,执行 go verison 获得正确输出。
  3. 使用非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

 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐