你这个问题比较开放,我先把在 Debian 上配 Golang 最常见的报错原因和对应解决办法给你列出来,基本覆盖了 90% 的情况。
Debian 仓库里的 golang 版本通常很旧,而且:
GOPATHPATHgo: command not found
cannot find package "xxx"
go: unknown subcommand
不要用 apt 装 Golang
# 删除系统版本
sudo apt remove golang golang-go
# 下载官方版本(示例 1.22)
wget https://go.dev/dl/go1.22.5.linux-amd64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.22.5.linux-amd64.tar.gz
然后加到 ~/.bashrc 或 ~/.zshrc:
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
source ~/.bashrc
go version
go: module github.com/xxx: Get "https://proxy.golang.org/...": dial tcp: i/o timeout
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
(国内推荐 goproxy.cn 或 proxy.golang.com.cn)
permission denied
mkdir /usr/local/go/pkg/mod: permission denied
不要用 sudo go build,而是:
sudo chown -R $USER:$USER $HOME/go
或者直接用用户目录:
export GOMODCACHE=$HOME/go/pkg/mod
version 'GLIBC_2.32' not found
常见于:
❌ 错误:
go run main.go
# 但项目在 module 外
✅ 正确:
go mod init myproject
go run main.go
go version
go env GOPATH
go env GOPROXY
which go
如果你愿意,可以把具体的报错信息贴出来(最好带命令 + 完整错误),我可以直接帮你定位是哪一类问题。