ubuntu24.04配置go环境最佳实践

641 阅读3分钟

一.切换镜像

在 Ubuntu 24.04 系统中,如果你想将 软件源(APT 源) 更改为 阿里云镜像(淘宝云镜像) 以加速软件包下载,可以按照以下步骤操作:


1. 备份原有软件源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

2. 修改 sources.list 为阿里云镜像

方法 1:手动编辑(推荐)

sudo nano /etc/apt/sources.list

删除原有内容,替换为 阿里云 Ubuntu 24.04 镜像源

deb https://mirrors.aliyun.com/ubuntu/ noble main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ noble-updates main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ noble-backports main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ noble-security main restricted universe multiverse

Ctrl + O 保存,Ctrl + X 退出。


方法 2:使用 sed 命令自动替换

sudo sed -i 's|http://.*archive.ubuntu.com|https://mirrors.aliyun.com|g' /etc/apt/sources.list
sudo sed -i 's|http://.*security.ubuntu.com|https://mirrors.aliyun.com|g' /etc/apt/sources.list

3. 更新软件包列表

sudo apt update
sudo apt upgrade -y

4. 验证是否生效

检查 /etc/apt/sources.list 是否已替换为阿里云镜像:

cat /etc/apt/sources.list | grep aliyun

如果输出包含 mirrors.aliyun.com,说明配置成功。


5. 可选:其他国内镜像源

镜像名称替换命令
阿里云`sudo sed -i 's
腾讯云`sudo sed -i 's
华为云`sudo sed -i 's
清华源`sudo sed -i 's

6. 恢复默认源

如果出现问题,可以恢复备份:

sudo cp /etc/apt/sources.list.bak /etc/apt/sources.list
sudo apt update

总结

  • 推荐使用阿里云镜像,速度稳定且国内访问快。
  • 修改后运行 sudo apt update 确保更新生效。
  • 如果遇到 GPG 签名错误,可以运行 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <KEY> 修复。

现在你的 Ubuntu 24.04 软件源已经切换到阿里云镜像,软件包下载速度会大幅提升! 🚀

二.安装go

在 Ubuntu 24.04 上安装最新版 Go 语言可以通过以下步骤完成:


方法 1:通过官方二进制包安装(推荐)

1. 下载最新版 Go

访问 Go 官方下载页面,找到最新版本的 Linux 二进制包(如 goX.Y.Z.linux-amd64.tar.gz),复制链接地址。

使用 wget 下载(替换链接为最新版本):

wget https://go.dev/dl/go1.xx.x.linux-amd64.tar.gz
2. 解压并安装
sudo rm -rf /usr/local/go  # 删除旧版本(如有)
sudo tar -C /usr/local -xzf go1.xx.x.linux-amd64.tar.gz
3. 配置环境变量
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
echo 'export GOPATH=$HOME/go' >> ~/.bashrc  # 可选:设置工作目录
source ~/.bashrc  # 立即生效
4. 验证安装
go version

输出应显示版本号(如 go1.22.1 linux/amd64)。

三.配置go env

1. 修改 GOPROXY(加速 Go 模块下载)

方法 1:临时生效(仅当前终端)

export GOPROXY=https://goproxy.cn,direct  # 使用七牛云镜像(推荐国内)
# 或
export GOPROXY=https://mirrors.aliyun.com/goproxy/,direct  # 阿里云镜像

方法 2:永久生效(推荐)

go env -w GOPROXY=https://goproxy.cn,direct

或直接写入 ~/.bashrc~/.zshrc

echo 'export GOPROXY=https://goproxy.cn,direct' >> ~/.bashrc
source ~/.bashrc
验证是否生效
go env | grep GOPROXY

输出示例:

GOPROXY="https://goproxy.cn,direct"

2. 修改 GOROOT(Go 安装路径)

查看当前 GOROOT

go env GOROOT

默认路径通常是 /usr/local/go(官方二进制安装)或 /usr/lib/go(系统包管理器安装)。

方法 1:通过环境变量修改

如果 Go 安装在其他路径(如手动编译或自定义安装),需设置 GOROOT

export GOROOT=/path/to/your/go  # 替换为你的 Go 路径
echo 'export GOROOT=/path/to/your/go' >> ~/.bashrc
source ~/.bashrc

方法 2:修复错误的 GOROOT

如果 go env GOROOT 显示路径不存在,可能是安装方式冲突(如同时存在 apt 和手动安装)。解决步骤:

  1. 卸载旧版本:

    sudo apt remove golang-go golang-*  # 卸载 apt 安装的 Go
    sudo rm -rf /usr/lib/go             # 删除残留文件
    
  2. 重新安装 Go(推荐官方二进制包):

    wget https://go.dev/dl/go1.22.1.linux-amd64.tar.gz
    sudo tar -C /usr/local -xzf go1.22.1.linux-amd64.tar.gz
    
  3. 更新环境变量:

    echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
    source ~/.bashrc
    

3. 其他相关配置

设置 GOPATH(工作区目录)

echo 'export GOPATH=$HOME/go' >> ~/.bashrc  # 默认 ~/go
echo 'export PATH=$PATH:$GOPATH/bin' >> ~/.bashrc
source ~/.bashrc

关闭模块校验(仅限测试环境)

go env -w GOSUMDB=off  # 不推荐生产环境使用

4. 验证所有配置

go env
GOROOT="/usr/local/go"
GOPROXY="https://goproxy.cn,direct"
GOPATH="/home/yourname/go"

常见问题

Q1: 修改后 go 命令仍报错 "command not found"

  • 原因:PATH 未包含 Go 的 bin 目录。

  • 解决:

    echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
    source ~/.bashrc
    

Q2: 如何恢复默认 GOPROXY

go env -w GOPROXY=https://proxy.golang.org,direct

Q3: 多个 Go 版本如何管理?

推荐使用工具 gvm 或手动切换 GOROOT


总结

配置项修改方式示例命令
GOPROXYgo env -w 或环境变量go env -w GOPROXY=https://goproxy.cn
GOROOT环境变量(仅需自定义安装时设置)export GOROOT=/usr/local/go
GOPATH环境变量(默认 ~/goexport GOPATH=$HOME/go