如何删除 btrfs 快照?

如何删除 btrfs 快照?

sudo btrfs subvolume show /输出

/
    Name:           @
    uuid:           1f0da442-cdf3-144c-a4ce-f6c06248cfde
    Parent uuid:        -
    Creation time:      2014-08-16 19:06:51
    Object ID:      257
    Generation (Gen):   30683
    Gen at creation:    6
    Parent:         5
    Top Level:      5
    Flags:          -
    Snapshot(s):
                @apt-snapshot-release-upgrade-utopic-2014-11-28_15:10:02

现在,我想删除快照@apt-快照-发布-升级-utopic-2014-11-28_15:10:02

我试过:

sudo btrfs subvolume delete @apt-snapshot-release-upgrade-utopic-2014-11-28_15:10:02

仅得到:

Transaction commit: none (default)
ERROR: error accessing '@apt-snapshot-release-upgrade-utopic-2014-11-28_15:10:02'

答案1

我有一组 3 个运行 btrfs 的驱动器用于存储数据(不是操作系统驱动器),经过测试后我发现 btrfs 快照的行为类似于子卷。

例如,您可以像这样创建只读快照:

sudo btrfs subvolume snapshot -r /mnt/data/some_dir /mnt/data/@some_dir-snapshot-test

然后,再次删除快照:

sudo btrfs subvolume delete /mnt/data/@some_dir-snapshot-test

要非常小心,不要删除原始子卷!如果不小心,很容易意外删除原始子卷而不是快照。确保已测试备份

答案2

这是很好的答案

快照存在于文件系统的实际根目录中,而不是您在 / 中挂载的目录。您在 / 中挂载了 /@ 子卷,因此不存在具有该名称的文件。您必须在某处挂载实际根卷并使用该路径引用快照。

或者您可以改用 apt-btrfs-snapshot delete。

相关内容