安装golang1.20+以上的版本,默认apt中是1.18, 发现snap可以直接安装最新版本,蛮好的,其他方法是二进制,简单总结下。
snap 是一个应用程序包管理系统,它允许你从不同的频道(
stable、
candidate、
beta、
edge)安装应用程序的不同版本。
apt 和 snap 都是 Ubuntu 系统上的软件包管理工具,两者有以下主要区别:
- 来源不同
- apt 的软件包存储在 Ubuntu 的官方仓库中,由 Canonical 及社区维护
- snap 的软件包存储在 snapcraft.io 网站,任何人都可以发布自己的 snap 软件包
- 软件更新
- apt 的软件更新跟随系统发布周期,比较稳定但不够及时
- snap 的软件可以自动快速更新,支持多个发布通道,及时提供新功能和修复
- 依赖关系
- apt 软件包存在复杂的依赖关系,需要解决依赖问题
- snap 包含所需的依赖,每个软件相对隔离,避免依赖地狱
- 软件选择
- apt 拥有大量经过官方认证的软件包
- snap 数量更多,但存在不成熟的软件包
- 接口和权限
- apt 软件可以访问系统资源和硬件
- snap 软件默认被沙箱化,需要通过接口才能访问特定资源
- 卸载方式
- apt 卸载会删除应用相关的配置文件
- snap 卸载保留数据和配置,再次安装可以恢复原状
总体来说,snap 更便捷易用,但 apt 更成熟稳定;要根据使用场景选择合适的工具
使用
snap安装 Golang 的命令如下
sudo snap install --classic --channel=1.20/stable go
go version 发现找不到
需要 source ~/.bashrc && source ~/.profile
这个命令将从 `stable` 频道安装 1.20 版本的 Golang。`--classic` 参数允许 Golang 访问系统的全部资源。
golang 二进制安装
wget https://golang.org/dl/go1.20.linux-amd64.tar.gz
然后,解压下载的文件到 `/usr/local` 目录:
sudo tar -C /usr/local -xzf go1.20.linux-amd64.tar.gz
最后,将 Golang 的二进制目录添加到 `PATH` 环境变量中。你可以将以下行添加到你的 `~/.bashrc` 或 `~/.profile` 文件中:
export PATH=$PATH:/usr/local/go/bin
然后,通过运行 `source ~/.bashrc` 或 `source ~/.profile` 来使更改立即生效。
```
搜索应用程序:
你可以使用 snap find 命令搜索可用的应用程序:
snap find <application-name>
例如,要搜索名为 "docker" 的应用程序,你可以运行:
snap find docker
安装应用程序:
你可以使用 snap install 命令安装应用程序:
snap install <application-name>
例如,要安装 Docker,你可以运行:
snap install docker
如果应用程序需要完全访问系统的资源,你需要使用 `--classic` 选项:
snap install --classic <application-name>
更新应用程序:
你可以使用 snap refresh 命令更新已安装的应用程序:
snap refresh <application-name>
例如,要更新 Docker,你可以运行:
snap refresh docker
卸载应用程序:
你可以使用 snap remove 命令卸载已安装的应用程序:
snap remove <application-name>
例如,要卸载 Docker,你可以运行:
snap remove docker
列出已安装的应用程序:
你可以使用 snap list 命令列出所有已安装的应用程序:
snap list
查看应用程序的信息:
你可以使用 snap info 命令查看特定应用程序的详细信息:
snap info <application-name>
例如,要查看 Docker 的信息,你可以运行:
snap info docker