如何btrfs check --repair
在没有完整dd
备份的情况下使操作可逆?
使用以下内容是否足够:
btrfs-image -w <device> <image-file>
也可能使用-t <#-threads>
and (最高压缩)?-c9
恢复此图像是否会逆转所有check --repair
操作的效果,包括
--init-csum-tree
--init-extent-tree
?
有什么用
答案1
我不熟悉 btrfs 的详细信息,但我看到损坏文件系统的元数据转储可能不完整的风险。
我建议您dmsetup
设置一个快照设备并btrfs check --repair
在快照上运行,您可以将其丢弃,以便获得原始状态。
修复运行后,此快照将仅占用很少的空间。
答案2
dmsetup
快照(官方文档)可用于存储更改,如果可以接受,则可以将其合并到原始设备中。
这篇 Reddit 帖子有详细的例子。
全部记下dm设置(8)表扇区为 512 字节:
设备是通过加载一个表来创建的,该表指定逻辑设备中每个扇区(512 字节)的目标。