跳至内容

Jixun's Blog 填坑还是开坑,这是个好问题。

在 Ubuntu 部署 Go (编程语言) 工具链

同样是在 Linux (Ubuntu) 下部署 golang 的脚本。

需要先找到需要安装的版本,可以在官网找到,本文撰写时的最新版为 1.21.1

# 必须的依赖
sudo apt install curl -y

# 当前最新为 1.21.1
GO_VERSION="1.21.1"

# 系统架构
# x86:    386
# x86-64: amd64
# armv6:  armv6l
# arm64:  arm64
GO_ARCH="amd64"

sudo install -d -m 0755 -o 0 -g 0 "/opt/golang/v${GO_VERSION}"
curl -fsL "https://go.dev/dl/go${GO_VERSION}.linux-${GO_ARCH}.tar.gz" \
    | sudo tar -zxf - -C "/opt/golang/v${GO_VERSION}" --strip-components=1

sudo install -d -m 0755 -o 0 -g 0 /opt/golang/bin/
for ENTRY in go gofmt; do
    # 安装软链接至 /opt/golang/bin
    sudo ln -sf "/opt/golang/v${GO_VERSION}/bin/${ENTRY}" "/opt/golang/bin/${ENTRY}"
    sudo ln -sf "/opt/golang/v${GO_VERSION}/bin/${ENTRY}" "/opt/golang/bin/${ENTRY}${GO_VERSION}"

    # 安装软链接至系统常用的 /usr/local/bin 目录,方便使用
    sudo ln -sf "/opt/golang/bin/${ENTRY}" "/usr/local/bin/${ENTRY}"
    sudo ln -sf "/opt/golang/bin/${ENTRY}${GO_VERSION}" "/usr/local/bin/${ENTRY}${GO_VERSION}"
done

# 刷新指令路径缓存
hash -r

# 查看版本
go version

# 注意: 该脚本还会注册带版本号的可执行文件,如 "go1.21.1" 也可以使用;
# 如果安装多个版本可以通过该方法安装。
go${GO_VERSION} version

知识共享许可协议 本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。

评论区