为什么同一个快照有多个循环设备?

Apu*_*urv 6 mount loop-device 16.04 snap

我曾经lsblk检查过连接的设备,当我发现同一个快照“核心”共有 3 个循环设备,带有修订号。

loop1    7:1    0  81.6M  1 loop /snap/core/4110
loop2    7:2    0  81.7M  1 loop /snap/core/4017
loop0    7:0    0  81.3M  1 loop /snap/core/3887
Run Code Online (Sandbox Code Playgroud)

在检查快照的安装目录时,这就是我得到的:

drwxr-xr-x 24 root root 321 Jan 22 13:17 3887
drwxr-xr-x 24 root root 321 Feb  6 20:48 4017
drwxr-xr-x 24 root root 321 Feb 20 22:37 4110
lrwxrwxrwx  1 root root   4 Feb 23 19:31 current -> 4110
Run Code Online (Sandbox Code Playgroud)

snap list显示:

core  16-2.31.1  4110  canonical  core
Run Code Online (Sandbox Code Playgroud)

为什么snapd不删除旧版本的 snap core?这是正常行为,还是如果不应该发生这种情况,是否有任何方法可以消除这种情况?我正在使用 Ubuntu 16.04。

j1m*_*1mc 7

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

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

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