我可以从 btrfs 快照恢复目录 /usr 中的文件吗?

我可以从 btrfs 快照恢复目录 /usr 中的文件吗?

前段时间,我把文件夹移到/usr了它自己的分区。在此之前,它一直位于/具有文件系统文件系统。

不小心,我格式化了/usr我的 Windows XP 操作系统的分区。

使用 Xubuntu LiveCD,我可以看到有三个快照,其中两个包含我的旧/usr

我想知道我是否可以/usr从 btrfs 拍摄的快照中恢复我的内容?

我可以只将快照的内容复制到吗/usr

答案1

感谢 Btrfs 和良好的快照(至少在我看来,整个 CoW 快照 /)

您需要挂载快照(它的工作方式与子卷一样),然后它们才能正确复制文件(使用rysnc

步骤(我建议从 Live DVD/USB 系统执行此操作):

  1. 将快照挂载到临时挂载点,例如/mnt/snapshot

mount -t btrfs -o subvol=apt-snapshot-xxx block_device /mnt/snapshot

  1. 然后你就可以访问内容了,旧的 /usr 应该在/mnt/snapshot/usr

  2. 安装/usr到一个临时位置,例如/mnt/usr

  3. 将内容(注意源文件的末尾的 /)从快照复制到当前/usr

sudo rsync -axHAX --progress /mnt/snapshot/usr/ /mnt/usr

重新启动就好了。

相关内容