mdadm RAID 6 驱动器发生故障转移,然后我的部分数据消失了

mdadm RAID 6 驱动器发生故障转移,然后我的部分数据消失了

背景

7 年来,我一直有一个运行 Fedora 的个人文件/媒体服务器(最初是 21 个,目前是 30 个)。主存储阵列由 mdadm RAID6(最初是 RAID5)中的 3TB 驱动器组成。多年来,一些驱动器坏了并被替换;我扩大了阵列;等等。最近,它是 RAID6 中的 6 个驱动器 + 热备用(12TB 可用空间)。从未出现过任何故障转移或重建阵列的问题;一切都像您对冗余 RAID 阵列的期望一样继续运行。但不幸的是,由于阵列的大小,我从未备份过,而是依靠 RAID 来实现弹性。

事件

直到上周。我随机浏览服务器时发现我的大量文件都不见了。(不过,许多其他文件完好无损,包括我其他计算机的一些备份,这很有趣。)注意到这一点后,我立即检查,/proc/mdstat发现其中一个驱动器发生故障,热备用驱动器已被替换。太好了,我想,当故障驱动器处于垂死挣扎时,一定是文件系统出了问题。

然后,我在造成更多损害之前卸载了阵列,然后我从系统中物理移除了发生故障的驱动器(在确认smartctl它确实已死之后)。这基本上是我做的最后一件聪明事。我运行它fsck,它不断发现问题(“引用计数 2,预期 1”)并询问我是否要修复它。TL;DR,48 小时后,它fsck完成了对我阵列的处理。我重新安装它并立即运行df,显示 11T 中已使用 5.8T(以前在 9.5T 范围内)。显然,我对可能无缘无故丢失 4TB 数据感到有点不安,据我所知,所以我开始研究数据恢复选项。但是,由于我没有任何其他大小接近的卷,我似乎很无助。所以我只好自己仔细检查lost+found并找出哪些数据幸存了下来。

当前状态

该阵列是一个健康的六驱动器 RAID6(不再有热备用),带有 12TB ext4 文件系统,看起来运行良好(没有安装/卸载问题,没有更多dmesg错误,fsck没有任何投诉)。据报道,在仍然存在的 5.8TB 数据中,大约 500GB 与之前一样,其余 5+TB 处于lost+found.

我的问题

在我开始实际检查这些文件并尝试将它们放回原处之前,我还能尝试其他什么方法来恢复 4TB 的“丢失”数据吗?(有可能它并没有真正消失吗?)还是因为我跑得fsck太急而完全失败了?

有没有人有处理丢失物品找回的“技巧”?根据我读过的其他帖子,例如https://unix.stackexchange.com/questions/177691/restore-from-lostfound,我希望基本上使用file脚本按类型分离文件,然后如果我幸运的话,我将能够使用内置元数据来帮助自动对大多数文件进行排序。

相关内容