在linux中配置go环境变量的核心是正确设置goroot和path并持久生效:编辑~/.bashrc(或~/.zshrc)添加export goroot=/usr/local/go和export path=$path:$goroot/bin,再执行source命令使配置生效,最后用go version验证。

在 Linux 系统中,将 Go 语言环境路径写入变量,核心是把 GOROOT(Go 安装根目录)和 PATH(可执行文件路径)正确配置,并让它们在终端会话中持久生效。关键不是“写入变量”本身,而是让系统在每次启动 shell 时自动加载这些设置。
确认 Go 的安装位置
先确定你安装的 Go 在哪,常见路径有:
-
/usr/local/go(官方二进制包默认安装位置) -
$HOME/go(使用go install或某些包管理器可能放这里) -
/opt/go或自定义路径(手动解压到其他位置)
运行以下命令检查:
which go
如果返回空,说明没加进 PATH;如果返回类似 /usr/local/go/bin/go,那 GOROOT 就是 /usr/local/go(去掉末尾的 /bin/go)。
设置 GOROOT 和 PATH(推荐方式)
编辑当前用户的 shell 配置文件(如 ~/.bashrc、~/.zshrc 或 ~/.profile),添加以下两行(以 /usr/local/go 为例):
export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin
⚠️ 注意:
- 不要写成 export PATH=$GOROOT/bin:$PATH(除非你明确想优先调用本地 Go,一般不必要);
- GOROOT 只需指向 Go 安装根目录,不是 bin 子目录;
- 如果你用的是 zsh(如 macOS Catalina+ 或新版 Ubuntu),改 ~/.zshrc;bash 用户改 ~/.bashrc。
使配置立即生效并验证
保存文件后,运行:
source ~/.bashrc # 或 source ~/.zshrc
然后验证是否成功:
echo $GOROOT go version which go
三者都应正常输出 —— GOROOT 显示路径,go version 打印版本号,which go 返回 $GOROOT/bin/go。
补充说明:GOBIN 和 GOPATH(按需设置)
现代 Go(1.16+)已默认启用模块模式,GOROOT 和 PATH 是必须项;GOBIN 和 GOPATH 属于可选项:
-
GOBIN:指定go install安装二进制文件的位置,例如export GOBIN=$HOME/go/bin,之后记得也把它加入PATH; -
GOPATH:老版本用于存放源码和依赖,默认是$HOME/go;Go 1.16+ 后它只影响go get(非模块项目)或go install(无模块时),一般不用显式设置。











