snap 是由 Canonical 推出的通用 Linux 打包格式,通过 snapd 服务管理,具备自动更新、沙箱隔离和跨发行版兼容特性。使用 snap list 可查看已安装的 snap 包,sudo snap install 安装软件,如 sudo snap install code –classic 用于需系统权限的软件。snap 软件默认每夜自动更新,可使用 sudo snap refresh 手动更新单个或全部软件,snap changes 查看更新历史,sudo snap set system refresh.timer 设置更新时间窗口。卸载使用 sudo snap remove 软件名,相关数据通常被清除。snap info 软件名 可查看软件版本、开发者及权限信息。从 snapd 2.57 起支持快照功能,snap save 创建快照,snap saved 列出,snap restore 恢复,snap forget 删除,便于系统迁移或重装时备份。snap 设计目标为“开箱即用”,管理统一且自动化,适合桌面用户和新手,尽管占用较多磁盘空间,但提升了兼容性与安全性。
Linux 上通过 snap 安装的软件由 snapd 服务统一管理,snap 是一种由 Canonical 推出的通用 Linux 打包格式,具备自动更新、沙箱隔离和跨发行版兼容等特点。管理 snap 软件非常简单,主要通过命令行工具 snap 来完成。
查看已安装的 snap 软件
要查看系统中所有已安装的 snap 包,运行:
snap list
该命令会列出所有 snap 应用的名称、版本、发布渠道和安装来源。如果某个软件未出现在列表中,说明它可能是通过其他方式(如 apt 或 flatpak)安装的。
安装 snap 软件
使用以下命令安装 snap 软件(以安装 code 编辑器为例):
sudo snap install code –classic
其中 –classic 表示使用经典模式运行,这类 snap 不受严格沙箱限制,常用于需要广泛系统访问权限的软件(如开发工具)。普通应用无需该参数。
更新与自动更新
snap 软件默认会自动更新。系统每夜检查一次更新,并在后台完成升级。你也可以手动触发更新:
- 更新某个软件:sudo snap refresh 软件名
- 更新所有 snap 软件:sudo snap refresh
- 查看更新历史:snap changes
如果需要禁用自动更新,可使用:
sudo snap set system refresh.timer=mon,10:00~12:00
这将更新时间限制在每周一上午 10 点到 12 点之间。设为 disable 可关闭自动更新,但不推荐。
卸载 snap 软件
卸载命令也很直观:
sudo snap remove 软件名
卸载后,相关的数据和配置通常也会被清除(部分数据可能保留在用户目录中,如 ~/snap/)。
查看 snap 信息与权限
使用以下命令查看某个 snap 的详细信息:
snap info 软件名
输出包括版本、描述、开发者、安装通道以及所请求的系统权限(如访问摄像头、网络、文件系统等)。
管理 snap 的存储与快照
从 snapd 2.57 开始,支持创建系统快照以备份已安装的 snap 应用及其配置:
- 创建快照:snap save
- 列出快照:snap saved
- 恢复快照:snap restore <编号>
- 删除快照:snap forget <编号>
这个功能在系统迁移或重装时特别有用。
基本上就这些。snap 的设计目标是“开箱即用”,管理方式统一且自动化程度高,适合桌面用户和新手。虽然它占用略多磁盘空间,并使用独立运行时,但换来的是更强的兼容性和安全性。了解这些基本操作后,你就能轻松掌控系统中的 snap 软件了。