Linux 命令速查
软件包 man snap

snap

安装和管理 snap 通用软件包

返回

补充说明

snap 是 Canonical 主导的跨发行版打包格式及其命令行客户端。每个 snap 打包为只读的 squashfs 镜像并挂载运行,自带依赖,因此同一个包能在 Ubuntu、Debian、Fedora 等系统上以相同方式安装;代价是体积较大、启动挂载稍慢。

命令的实际后端是 snapd 守护进程,所有操作都要先确保 snapd 服务在运行(systemctl status snapd)。常用流程是 snap find 搜索、snap install 安装、snap list 查看、snap refresh 升级、snap remove 卸载。

snap 有严格的沙箱(confinement):默认 strict 模式受 AppArmor/seccomp 限制,访问外部文件或设备需要 snap connect 授权;--classic 则完全不受限,仅用于官方审核过的软件。升级默认自动进行,可用 snap refresh --hold 暂停。

语法

snap [全局选项] 子命令 [参数]

常用子命令

  • find 关键词:在商店中搜索 snap
  • info 包名:查看包信息、版本和可用通道
  • install 包名:安装,--classic 使用经典模式
  • remove 包名:卸载
  • list:列出已安装的 snap
  • refresh [包名]:升级到最新版本
  • revert 包名:回退到上一个版本
  • changes:查看正在进行的变更任务
  • services 包名:查看包内的服务
  • logs 包名:查看服务日志
  • connect / disconnect:授权 / 撤销接口访问
  • interfaces:列出接口及连接状态

实例

# 搜索并安装一个应用
snap find code
sudo snap install code --classic

# 查看已安装的 snap 与版本
snap list

# 从候选通道安装并指定版本
sudo snap install nextcloud --channel=latest/stable

# 手动升级全部 snap
sudo snap refresh

# 回退到上一个版本
sudo snap revert nextcloud

# 查看服务的运行状态与日志
snap services nextcloud
snap logs -n 100 nextcloud

参考链接