首页主机资讯Debian下Golang版本升级如何操作

Debian下Golang版本升级如何操作

时间2025-11-27 19:35:04发布访客分类主机资讯浏览600
导读:Debian 下升级 Golang 的推荐做法 一 升级前准备 查看当前版本与安装方式:运行 go version;若通过包管理器安装,可用 dpkg -l | grep golang 或 apt policy golang-go 查看...

Debian 下升级 Golang 的推荐做法


一 升级前准备

  • 查看当前版本与安装方式:运行 go version;若通过包管理器安装,可用 dpkg -l | grep golangapt policy golang-go 查看。
  • 备份与清理:备份项目与 GOPATH(如有);若曾手动安装,建议先移除旧版目录 /usr/local/go,并用 sudo apt remove golang golang-go 清理旧包,随后 sudo apt autoremove
  • 选择安装方式:
    • 官方二进制包(推荐,版本新、可控性强);
    • 官方 APT 仓库(便于 apt 管理);
    • 发行版仓库 .deb(简单,但版本通常较旧)。

二 方式一 官方二进制包升级(推荐)

  • 1 下载:前往 https://golang.org/dl/ 获取与你架构匹配的压缩包(如 go1.21.5.linux-amd64.tar.gz)。示例:
    wget https://golang.google.cn/dl/go1.21.5.linux-amd64.tar.gz
  • 2 安装:解压到 /usr/local(系统级):
    sudo tar -C /usr/local -xzf go1.21.5.linux-amd64.tar.gz
  • 3 配置环境变量(全局生效建议写入 /etc/profile;当前用户写入 ~/.bashrc~/.zshrc):
    echo ‘export GOROOT=/usr/local/go’ > > ~/.bashrc
    echo ‘export GOPATH=$HOME/gowork’ > > ~/.bashrc
    echo ‘export PATH=$PATH:$GOROOT/bin:$GOPATH/bin’ > > ~/.bashrc
    source ~/.bashrc
  • 4 验证:
    go version
    预期输出如:go version go1.21.5 linux/amd64

三 方式二 使用官方 APT 仓库

  • 1 添加源与密钥:
    echo “deb https://golang.org/dl/debian/ $(lsb_release -sc) main” | sudo tee /etc/apt/sources.list.d/golang.list
    wget -qO - https://golang.org/dl/gpg | sudo apt-key add -
  • 2 安装/升级:
    sudo apt update
    sudo apt install golang-go
  • 3 验证:
    go version
  • 说明:仓库版本通常滞后于官网,但便于 apt 统一升级与卸载。

四 方式三 使用发行版 .deb 包

  • 1 下载:从 https://golang.org/dl/ 获取 .deb 包(如 go1.21.5.linux-amd64.deb)。
  • 2 安装:
    sudo dpkg -i go1.21.5.linux-amd64.deb
    若依赖问题:sudo apt-get -f install
  • 3 验证:
    go version

五 常见问题与优化

  • 版本未生效:检查 PATH 是否包含 $GOROOT/bin$GOPATH/bin;确认当前终端已 source 配置文件或重启终端;必要时在 /etc/profile 中配置以对所有用户生效。
  • 权限错误:涉及 /usr/local 写入需 sudo
  • 模块下载慢:配置代理加速:
    go env -w GOPROXY=https://goproxy.cn,direct
    go env -w GO111MODULE=on

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Debian下Golang版本升级如何操作
本文地址: https://pptw.com/jishu/758197.html
Debian系统如何管理Laravel用户认证 Debian Crontab如何实现任务调度

游客 回复需填写必要信息