应使用系统对应包名安装:ubuntu/debian用sudo apt install golang-go,centos 7需先启用epel再sudo yum install golang,fedora/rhel 8+直接sudo dnf install golang,arch linux用sudo pacman -s go;装完确保/usr/bin在path中,which go应返回/usr/bin/go。

go 命令找不到,或 go version 报错“command not found”,说明包管理器虽已安装 golang,但二进制路径没进 PATH,或安装包名不匹配当前发行版。直接用包管理器装是最省事的方式,但必须对得上系统和包名。
Ubuntu/Debian 上 apt install golang-go 而不是 golang
Debian 系(含 Ubuntu)的官方仓库里,Go 的主包名是 golang-go,不是 golang。装错名字会导致 go 命令不可用:
-
sudo apt update && sudo apt install golang-go—— 正确命令 -
sudo apt install golang—— 在多数 Ubuntu/Debian 版本中会失败或装一个空包 - 装完后
which go应返回/usr/bin/go,go env GOROOT通常为/usr/lib/go,无需手动设GOROOT - 若仍报 command not found,请检查
/usr/bin是否在PATH中:echo $PATH | grep /usr/bin
CentOS 7 必须先启用 EPEL 源
CentOS 7 默认仓库不含 golang,直接 yum install golang 会提示 “No package golang available”。必须先补上 EPEL:
-
sudo yum install epel-release -y—— 启用扩展源 -
sudo yum install golang -y—— 此时才能成功安装 - 装完
go version通常输出类似go version go1.20.13 linux/amd64;注意该版本较旧,若项目需 Go 1.21+,得换手动安装 -
go env GOPATH默认为$HOME/go,但PATH不自动加$GOPATH/bin,如要用go install安装工具,得自己加:echo 'export PATH=$PATH:$HOME/go/bin' >> ~/.bashrc && source ~/.bashrc
Fedora/RHEL 8+ 直接 dnf install golang 即可
Fedora 和 RHEL 8+ 自带 golang 包,且版本较新(常为 Go 1.21.x 或更高),不用额外源:
-
sudo dnf install golang—— 一条命令搞定 -
go二进制默认在/usr/bin/go,GOROOT为/usr/lib/golang,全部自动注册进环境 - 验证:运行
go mod init test && go build -o test .,能生成可执行文件即说明工具链完整 - 注意:RHEL/CentOS Stream 用户可能遇到
golang包被拆成golang-bin+golang-src,此时需一起装:sudo dnf install golang-bin golang-src
Arch Linux 用户别漏掉 pacman -S go
Arch 的 go 包名就是 go,简洁但容易忽略大小写或拼写:
-
sudo pacman -S go—— 小写go,不是Golang或golang - 装完
go在/usr/bin/go,GOROOT为/usr/lib/go,PATH 已包含 - Arch 通常提供最新稳定版(如当前为 Go 1.23.x),适合尝鲜但要注意项目兼容性
- 若后续
go get失败,大概率是没开 Go Modules 或代理没设好,和包管理器安装本身无关
go 找不到——那八成是包名记错、源没启全,或者 PATH 没刷进当前 shell。别急着删重装,先 apt search golang 或 dnf list golang* 看看到底提供了哪些包名。golang免费学习笔记(深入):立即使用
在学习笔记中,你将探索golang的核心概念和高级技巧!











