我想在我的服务器上使用btrfs作为文件系统,我仍然在所有最糟糕的情况下研究它。
目前我想测试raid系统崩溃,我要测试的条件是:
对于我上面写的所有问题,我只能回答我的两个问题。
replace
方法。restore
方法保存我的数据对于另一个问题,我没有测试它。
问题3和4(如果我用另一个磁盘替换它),我尝试使用mount -o degraded
但我无法安装它,显示错误wrong fs type, bad option, bad superblock on /dev/sdb
。我试图用balance
方法重新平衡它,但我无法安装它。
拜托,我需要回答我的问题3和4。
答案 0 :(得分:0)
替换选项需要在之前完成磁盘完全死亡,否则替换操作将无法正常工作(并且可能会搞乱阵列)。如果磁盘已经不可读,则将其拉出并使用降级选项进行挂载。将新磁盘添加到阵列中并告诉它删除丢失的设备,并将其全部排序。
如果您的阵列在数据和元数据上都有冗余,那么单个故障磁盘不应该花费您任何数据。如果由于某种原因,阵列已损坏且无法接受替换磁盘,则可以使用btrfs recover复制尽可能多的数据,并将其从阵列中复制到另一个存储系统中。然后重建阵列。
除非您实际上不需要新的物理磁盘,否则格式化磁盘与使用磁盘有所不同。如果您的阵列是冗余的,安装降级,重新添加格式化的磁盘,并删除丢失。它应该自动重新平衡受影响的数据。在你完成后运行磨砂膏也可能是明智的。
被盗的磁盘与一个坏的磁盘相同。安装降级,添加新的,删除丢失。
您的错误超级块问题很可能是由于尝试装入已格式化/替换的磁盘造成的。格式化将删除BTRFS文件系统标识符,因此系统无法检测到阵列中的其他驱动器。使用其中一个仍然是数组的一部分的设备作为mount命令,它应该能够检测其余部分。如果它没有,那么在您删除/格式化磁盘之前,可能您的阵列未处于一致状态,并且没有足够的冗余来修复它。 btrfs recover
可能是您唯一的选择。根据具体情况,您可能需要运行btrfs device scan
来重新检测哪些设备不属于数组。