将 snap 的多 GB 子目录“/var/lib/snapd/snaps”移动到不同的分区,然后符号链接到它?

将 snap 的多 GB 子目录“/var/lib/snapd/snaps”移动到不同的分区,然后符号链接到它?

我“仅”有一个 64 GB 的根分区,/因此/var目录隐式地位于此分区上,Snap 的多 GB 子目录也是如此/var/lib/snapd/snaps。Snap 将快照图像存储在此目录中。这占用了相当多的磁盘空间。

我刚刚安装了这些 snap:,boxy-svg, core, core18, core20, core22, eclipse, fx, gnome-3-34-1804, gnome-3-38-2004, go, gtk-common-themes, inkscape, minizinc, postman, powershell, rustup, slack, snapd, tidy, youtube-dl, zoom-client单实例安装需要 2.7G。对于备份,这个空间会很快增加到 10 GB,因为从长远来看,snap 还会存储前 2 个镜像。

我想将这 10 GB 移至/var/lib/snapd/snaps不同的分区,不同的 SSD 上。我该如何正确执行此操作?

我试过

  1. 只需停止 snapd 即可sysctl
  2. 移至/var/lib/snapd/snaps 不同的分区
  3. 符号链接到该分区ln -s /mnt/big-disk/snaps /var/lib/snapd/snaps
    1,重新启动 snapd

但是,这种结构无法在重启后“存活”(启动时无法安装 snap),而且 snap 也无法轻易更新。为了解决这个问题,我尝试编写脚本命令
mount /var/lib/snapd/snaps/inkscape_10426.snap /snap/inkscape/10426
/var/lib/snapd/snaps/使用符号链接),但维护起来非常困难,因为 release id 总是10426会变化。

相关内容