在 CentOS 上配置 Golang 失败,常见原因可以分成几类。下面按最常见 → 较少见的顺序说明,并给出排查方法。
yum install golang,但版本太旧CentOS 自带的 Golang 往往很老:
yum install golang
go version
可能显示:
go version go1.13 ...
而你的项目可能需要 go 1.18+。
✅ 正确做法(推荐):
wget https://go.dev/dl/go1.21.5.linux-amd64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.21.5.linux-amd64.tar.gz
PATH 没加 /usr/local/go/bin很多人解压完就以为装好了。
检查:
which go
如果没输出,说明 PATH 没配。
✅ 编辑 ~/.bashrc 或 ~/.profile:
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
然后:
source ~/.bashrc
go version
⚠️ 注意:
zsh,要改 ~/.zshrc例如:
tar -C /opt/go ...
但当前用户无写权限。
✅ 建议用:
/usr/local/go
或确保目录可写。
例如:
amd64检查:
uname -m
x86_64 → amd64aarch64 → arm64go mod 下载失败即使 go 命令可用,但:
go mod tidy
失败。
✅ 配置代理:
go env -w GOPROXY=https://goproxy.cn,direct
go env -w GOSUMDB=off
新 Golang(1.20+)需要较新 glibc。
检查:
ldd --version
CentOS 6 基本不支持新 Go。
✅ 解决:
go version
echo $PATH
go env GOPATH
go env GOROOT
uname -m
你可以直接贴出:
cat /etc/centos-release)我可以精准告诉你哪一步错了。