查看: 23|回复: 0

Ubuntu 终于支持禁用 snap软件包自动更新

[复制链接]

2

主题

0

回帖

0

积分

积极分子

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2011-3-28
发表于 2022-11-17 16:15:17 | 显示全部楼层 |阅读模式

snap 是 Canonical 为使用 Linux 内核和 systemd init 系统的操作系统开发的软件打包和部署系统。这些被称为 snap 的软件包和使用它们的工具 snapd 可以在一系列的 Linux 发行版中使用,并允许上游软件开发者直接向用户发布他们的应用程序。

借助 snap,用户可以轻松地安装 Linux 应用程序,在默认情况下,snapd 一天内会检查四次更新,并自动将 snap 应用更新到最新的版本。虽然有很多方法可以控制更新的安装时间和频率,但为了安全用户无法完全关闭自动更新。

虽然 snap 的初衷很好,但很多开发者都深受它的困扰,时不时就会发现常用的开发工具自动更新了,导致插件、依赖出现了不兼容的情况,不得不手动回退版本。正因如此,不少开发者在安装 Ubuntu 之后第一件做的事情就是卸载 snap。

Canonical 今天宣布,允许用户对 snap 格式软件包执行暂时或者永久禁用自动更新。在默认情况下,snap 软件包会自动更新,以便于确保你的应用始终处于最新的状态。

但由于 snap 软件包格式的自动更新模式,有时候会导致某款软件出现不兼容、无法使用的情况。好消息是虽然 Canonical 现在允许用户设置临时禁用或者永久禁用,但不支持图形化操作,需要在终端里用命令行方式执行。

我们了解到,例如,你想要让 VLC 媒体播放器的 snap 软件包临时禁用自动更新,可以输入:

snap refresh --hold=72h vlc

然后输出结果会是这样的:

General refreshes of "vlc" held until 2022-11-17T12:04:59Z

如果你想要暂时禁用 snap 软件包自动更新,命令为:

snap refresh --hold=48h

如果你想要永久禁用 snap 软件包自动更新,命令为:

snap refresh --hold

反之,通过 --unhold 参数重新启用自动更新。

snap refresh --unhold

要重新启用特定应用程序的自动更新,例如 Firefox,则在命令中添加名称即可:

snap refresh --unhold firefox

该命令目前并没有出现在 Ubuntu 正式版本中,如果你想尝试的话需要通过命令将 snapd 切换到 edge 通道:

snap refresh snapd --edge

测试完成后,如果需要将 snapd 切换回稳定通道,则需要使用命令:

snap refresh snapd --stable 

天下苦 snap 久矣,但随着 snap 更新机制的不断完善,Ubuntu 终于增加了对禁用 snap 应用程序自动更新的支持,大家还会给 snap 一个机会吗?

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部