linux – 如何将bcache设备恢复到规则文件系统

我的笔记本电脑上有一个20 GB的SSD设备,我决定尝试使用bcache.它似乎工作,但一段时间以来,我一直在启动时收到错误

error on 0f3bbb55-6839-4ed6-8127-7976a969f726: corrupted btree at bucket 17571,block 483,61 keys,disabling caching

我想我可以尝试修复这个,但我已经决定我可能更好的只是禁用bcache – 我不太了解这可能会丢失数据/头发如果出现问题,我认为我会更好关闭使用分区作为交换更快的冬眠.

我的问题是,如何在不重新格式化支持设备的情况下安全地停止在设备上使用bcache?

我使用/ dev / sda7作为我的后备设备,/ dev / sdb2作为缓存设备(/ dev / sdb1是root).

如果重要的话,我正在使用内核3.13.0-21-generic运行Ubuntu 14.04.

更新:我基本上正在寻找一种能够恢复make-bcache -B所做更改的解决方案. FWIW,我最终通过将所有内容移动到新分区并删除旧分区来解决这个问题(请参阅下面的评论),但我会留下这个问题以防万一有人有实际的解决方案.

最佳答案
我最近对此有一个时间敏感问题,以下文字保存了我的培根:

D) Recovering data without bcache:

If bcache is not available in the kernel,a filesystem on the backing
device is still available at an 8KiB offset. So either via a loopdev
of the backing device created with –offset 8K,or any value defined by
–data-offset when you originally formatted bcache with make-bcache.

For example:
losetup -o 8192 /dev/loop0 /dev/your_bcache_backing_dev

https://www.kernel.org/doc/Documentation/bcache.txt起.

这具有不修改驱动器上的分区表的附加好处,因此您可以复制一些数据并可能将其重新安装回其原始主机.

相关文章

文件查找(find) 1 find 简单的说,就是实时查找指定的内容或条件。特点:最新、最快、最准确。 用法:...
非交互式添加分区 方法一 添加/deb/sdb 下的分区,其实位置为1到1000M,第二个分区位置为1001至3000M,...
编译安装httpd 1 去官网下载源码包 为避免非法软件,一定要去官网下载http://www.apache.org httpd-2.4...
gdisk用法 gdisk - InteractiveGUIDpartitiontable (GPT) manipulator GPTfdisk (akagdisk) isatext-mo...
1 一定用快捷键 这里简单的说下几个常用的快捷按键。 1.1 移动光标快捷键 Crtl + a 光标回到命令行...
bash shell中测试命令 test命令提供了if-than语句中测试不同条件的途径。如果test命令中列出的条件成立...