如何管理 snapd 保留的应用程序的修订数量?

Sta*_*ell 13 package-management snap

所以我安装了 vlc 每日构建的 snap 包。

它工作得很好,没有问题。但是我注意到升级后系统有 2 个版本的 vlc(7 和 9)。这可以在浏览 /snap/vlc/ 目录和使用系统监视器时看到。

其他快照也是如此。有没有办法自动删除旧版本的快照?或者我只是使用普通的“rm”命令删除它们?以这种方式删除它们是否安全?

use*_*733 15

默认情况下,Snapd 会自动保留三个修订版(通常是当前版本加上两个旧版本),并将删除旧版本。

在 2018 年年中,snapd 进行了更新,因此修订的数量是可配置的(但绝不会少于 2)。

使用命令:

snap set system refresh.retain=N

N 不能小于二。

  • 这个超级用户的答案对于清除所有旧的快照版本非常有帮助:https://superuser.com/questions/1310825/how-to-remove-old-version-of-installed-snaps (2认同)

j1m*_*1mc 5

在与 Ubuntu 开发人员交谈时,当前的默认设置是保留快照的三个先前版本,以便您可以在需要时回滚到先前版本。此默认设置不可配置。

你可以使用命令snap remove --revision=<an old one> snapname删除快照的旧版本。

他们正在考虑是否仅将当前的快照安装为循环文件系统,但我不知道其状态。


dho*_*ach 2

道格回答,有些扩展

/snap/*是只读的,并且快照安装在那里。这样做的原因是snapd允许您回滚到给定快照的旧版本,这就是它保留多个版本的原因。调用snap remove将再次将它们全部从系统中删除。快照有 ar/w 位置,但这是不相关的。https://developer.ubuntu.com/en/snappy/guides/garbage需要更新,但它解释了一般概念。

回滚是使用以下命令完成的snap revert

daniel@daydream:~$ snap revert --help 用法: snap [选项] revert []

revert 命令将给定快照恢复到最近一次刷新之前的状态。这将重新激活先前的快照修订版,并将使用与该修订版关联的原始数据,并丢弃最新修订版所做的任何数据更改。作为例外,恢复过程不会触及快照明确选择跨修订共享的数据。

应用程序选项: --version 打印版本并退出

帮助选项:-h, --help 显示此帮助消息 daniel@daydream:~$