如何批量删除 ZFS 快照并升级到非 LTS 版本?

如何批量删除 ZFS 快照并升级到非 LTS 版本?

两个问题.....

  1. 几个小时前,我安装了带有 ZFS 和加密的 Ubuntu LTS 20.04.3,但不知道如何删除快照,因为它们堆积得很快,我正在设置安装,安装了 zfs-auto-snapshot 包,但由于某种原因,它没有检测到快照

$sudo zfs-auto-snapshot --keep NUM

无论我给出什么数字,它都说没有检测到快照或类似的东西,也浏览了 ZFS 手册页,但只有一个接一个地删除快照的方法,这非常繁琐,因为我已经堆积了 15/20 个快照......

那么我应该使用什么方法/解决方案来解决它?

  1. 虽然我现在已经转向 LTS 版本,但我想要非 LTS 版本,那么有没有什么方法可以实现从 LTS 版本到非 LTS 版本的平稳转变,而不会弄乱任何事情?

答案1

您可以使用以下命令在终端中列出 ZFS 快照:

zfs list -t snapshot

要删除特定快照,您可以执行以下操作:

sudo zfs destroy rpool/USERDATA/MHT@FRIDAY09-03-21

如果你想删除全部快照 —该死的鱼雷!- 你可以这样做:

sudo zfs list -H -o name -t snapshot | xargs -n1 zfs destroy

发出命令时要小心zfs destroy,因为无法撤消。

至于您的第二个问题,从 20.04 ⇢ 20.10 ⇢ 21.04 升级的窗口已关闭,因为 20.10 不再受支持。让您的机器升级到 21.04 的最简单方法是使用较新的安装重新安装操作系统.iso

答案2

您可以通过列出要删除快照的文件系统来避免错误Error: The filesystem argument list is empty.。例如:

zfs-auto-snapshot --destroy-only -k 1 --label=hourly rpool/USERDATA

此命令不会删除任何手动创建的快照或由 zsys 创建的快照。

要升级到最新的普通 Ubuntu 版本,您可以使用以下命令:

sudo sed -i 's/^Prompt=.*/Prompt=normal/' /etc/update-manager/release-upgrades
sudo do-release-upgrade

相关内容