Ubuntu 上如何安装和使用 Snap:完整新手指南(2025)

LightNode
By LightNode ·

简介

Snap 是由 Ubuntu 背后的公司 Canonical 开发的革命性软件包管理系统。它代表了 Linux 系统上软件分发和安装的现代方法,相比传统的包管理器具有多个独特优势。

Snap 的特别之处在于它能够将应用程序与其所有依赖项一起打包,创建可以在不同 Linux 发行版上运行的独立应用程序。这种容器化方法确保了应用程序无论在什么系统环境下都能一致运行,消除了 Linux 用户经常遇到的"依赖地狱"问题。

使用 Snap 的主要优势:

  1. 独立包装:每个 Snap 软件包都包含运行所需的所有库和依赖项,避免与其他已安装软件发生冲突。

  2. 自动更新:Snap 软件包可以在后台自动更新,确保您始终使用最新版本,无需手动干预。

  3. 安全性:Snap 与系统其他部分隔离运行,通过容器化提供额外的安全层。

  4. 通用兼容性:同一个 Snap 软件包可以在任何支持 Snap 的 Linux 发行版上运行,使开发者的软件分发更容易,用户的安装更简单。

本指南将带您完成在 Ubuntu 上安装 Snap 的过程,向您展示如何使用基本的 Snap 命令,并解答新用户可能遇到的常见问题。

安装步骤

在安装 Snap 之前,请确保您在 Ubuntu 系统上拥有 sudo 权限。以下是使用命令行安装 Snap 的方法:

  1. 更新软件包列表
    sudo apt update
    

apt update

  1. 安装 Snap
    sudo apt install snapd
    

Snap installed

  1. 验证安装
    snap version
    

snap check

如果安装成功,此命令应显示 snapd 和 snap 的版本信息。

使用 Snap

安装 Snap 后,您就可以开始使用它来管理应用程序了。以下是您需要的最常用命令:

查找应用程序

# 搜索应用程序
snap find 应用程序名称

# 获取特定 snap 的详细信息
snap info 应用程序名称

安装应用程序

# 安装 snap 软件包
sudo snap install 应用程序名称

# 安装特定版本
sudo snap install 应用程序名称 --channel=版本/stable

管理已安装的应用程序

# 列出所有已安装的 snap
snap list

# 更新所有 snap 软件包
sudo snap refresh

# 更新特定 snap
sudo snap refresh 应用程序名称

# 删除 snap
sudo snap remove 应用程序名称

使用 Snap 服务

# 查看运行中的 snap 服务
snap services

# 启动/停止 snap 服务
sudo snap start/stop 服务名称

请记住,Snap 软件包默认会自动更新。但是,您可以使用 snap refresh 命令手动检查更新。某些应用程序可能需要在安装或更新后重启系统才能正常运行。

常见问题解答(FAQ)

问:为什么我第一次安装 Snap 需要这么长时间?

答:第一次安装 Snap 软件包时,系统需要下载并设置 Snap 核心运行时。由于核心组件已经就位,后续安装会快得多。

问:如何修复"snap: command not found"错误?

答:这个错误通常是因为 Snap 二进制文件不在您的 PATH 中。尝试以下解决方案:

  1. 重启系统
  2. 运行 source /etc/profile
  3. 确保已安装 snapd:sudo apt install snapd

问:我可以同时使用 Snap 和 apt 吗?

答:是的,您可以同时使用两个包管理器而不会发生冲突。它们独立运行并管理不同类型的软件包。

问:为什么 Snap 软件包通常比 apt 对应的包大?

答:Snap 软件包包含了所有依赖项,使其成为独立包。虽然这增加了包的大小,但确保了更好的兼容性和隔离性。

问:如何禁用 Snap 软件包的自动更新?

答:您可以使用以下命令禁用特定 snap 的自动更新:

sudo snap refresh --hold 应用程序名称

要重新启用更新:

sudo snap refresh --unhold 应用程序名称

问:如果 Snap 软件包不工作该怎么办?

答:尝试以下故障排除步骤:

  1. 检查应用程序状态:snap list 应用程序名称
  2. 尝试删除并重新安装:sudo snap remove 应用程序名称 && sudo snap install 应用程序名称
  3. 确保 snapd 正在运行:sudo systemctl status snapd
  4. 检查系统日志:journalctl -u snapd