在 Ubuntu 中管理 Snap 包的完整指南
Snap 包自发布以来就已经存在 Ubuntu 16.04。 就像久负盛名的deb格式一样,它有自己的操作命令 .deb 包 也有专门用于管理 Snap 包的命令。 在本文中,我们将学习如何在 Ubuntu 中对 Snap 包进行基本的管理操作。
为什么选择 Snap?
在继续学习实际使用之前,重要的是从理论上了解 Snap 打包系统。
该包装系统的目的是使包装安装和维护更容易、更安全。 例如,与当前系统不同,在当前系统中,您可以为正在安装的程序解决所有与版本相关的依赖冲突,Snaps 允许开发人员将其软件依赖的所有内容放入同一个包中,从而有效地使其自包含并独立于系统它已安装。
有了快照,软件更新也会自动在后台进行,使用户更加友好。
包管理 snap 命令
在继续使用标准 Snap 命令之前,您首先需要在系统上安装 Express Command Line Tools,如果您还没有安装,请执行以下命令:
sudo apt install snapd
安装 Snap 包
接下来是安装 Snap 包的命令:
sudo snap install [包名]
例如,这是我用来安装“htop”应用程序的命令:
sudo snap installhtop
列出所有已安装的快照
要查看系统上安装的所有 Snap 包的摘要,请运行命令 “折断” 使用列表子命令:
捕捉列表
快照更新
要将特定快照更新到更新或更新的版本,请使用 Refresh 子命令后跟包名称。 例如,如果将来我必须更新一个小工具 “htop” 我会运行以下命令:
sudo 快照刷新 htop
查找 Snap 包
搜索子命令可用于此操作。 查询可用的包。 这是一个例子:
快速找到
您还可以搜索特定的 Snap,例如以下示例:
sudo 快速查找 htop
删除快照
与安装 Snap 的方式类似,您可以轻松地从系统中删除 Snap 包——在这种情况下使用的子命令是 remove。 在这个例子中,我删除了一个小部件 “htop”:
sudo snap 删除 htop
禁用快照
也有可能 “禁用” 您计算机中的劫持程序包。 这不会删除系统中的程序文件,但会使系统的其余部分无法访问它们。 如果您想从 PATH 中删除一个包但仍打算稍后使用它,这将很有用。
要禁用 htop 快照包,请运行以下命令:
sudo snap 禁用 htop
您可以使用 enable 将 snap 包从休眠状态中恢复:
sudo snap 启用 htop
温馨提示:虽然 Canonical 已经为 Ubuntu 开发了 Snap 包,但它们也可用于其他 Linux 发行版,例如 Arch Linux。 找出你可以 在 Arch 中安装 Aur 包.
修复 Snap 包
除了作为一个功能强大的包管理器之外,snap 还为您提供了强大的调试命令和标志。 您可以使用它来诊断软件包的问题或对您最喜欢的软件的开发版本进行故障排除。
要执行后者,您可以将 –edge 或 –beta 标志附加到安装命令的末尾:
sudo snap install --beta htop
快照设置更新存在
update 命令还可以更改已安装在系统中的快照的属性。 如果您想将开发版本包切换为普通静态包,这将很有用:
sudo snap刷新--稳定的htop
它还支持许多附加标志,允许您更改程序的安全策略。 例如,您可以使用 --jailmode 标志将包与系统的其余部分严格隔离:
sudo snap刷新--jailmode htop
提示:安全性并不止于隔离系统中的各个包。 了解如何在线保护您的数据 安装注重隐私的 Chrome 扩展程序.
恢复 Snap 包
与事务包管理器类似,snap 支持在每个包的基础上回滚更新的能力。 这使得回滚和防止任何行为不当的包破坏您的系统变得非常容易。
要恢复单个快照包,请运行以下命令:
sudo 快照恢复 htop
就像 refresh 子命令一样,您也可以在后面使用相同的标志来关闭行为不当的应用程序:
sudo snap revert --jailmode htop
经常问的问题
Q1:snap会替换我通过apt安装的包吗?
الجواب: 不。 Snap 不会更改当前系统上的任何程序或文件。 然而,快照的问题之一是 Ubuntu 它总是会在任何合适的程序之前首先加载 snap 包。 如果您在安装其 snap 版本之前配置了适当的程序,这可能会成为一个问题。
Q2:我可以在不禁用的情况下删除 snap 包文件访问吗?
الجواب: 是的。 您可以通过从您的 snap 包中拔出文件访问来做到这一点。 首先,运行:sudo snap interfaces snap-package。 接下来,找到并运行要禁用的插件:sudo snap disconnect snap-package: plug。
Q3:可否了解snap包的配置选项?
الجواب: 是的。 您可以通过 get 子命令检查 snap 包的所有可用配置选项。 例如,您可以运行 sudo snap get htop 来获取 htop 的配置选项。