mdadm raid1 阵列上的文件损坏(但没有文件系统损坏)

mdadm raid1 阵列上的文件损坏(但没有文件系统损坏)

我刚刚搭建好新服务器,由于尝试重新连接磁盘时出现失误,导致 raid1 中的所有数据都丢失了。我使用了相同的磁盘并创建了一个带有 ext3 的新阵列,但在恢复备份后,我发现复制到新 raid 阵列的文件已损坏,似乎主要是我的音乐收藏,尤其是 .flac 和 .ape 文件等大文件。

我最初使用 samba 从我的 ubuntu karmic 台式机上复制了文件,但是当我遇到上述问题时,我尝试了 NFS,结果发生了同样的事情。

根据 fsck 看来文件系统没有问题。

该服务器是 Intel Atom 330(Intel D945GCLF2 主板),配有 2GB 内存,运行的是 Ubuntu 9.04 amd64 版。我不知道是什么原因导致了这个问题,希望大家能给些建议,或者在复制文件时检查每个文件的完整性,看看哪里出了问题。

答案1

首先,文件在源头上是否已损坏?GIGO。

别忘了硬盘并非万无一失。读取时可能会出现无声错误,从而损坏数据。

如果源上的文件正常但接收器上的文件损坏,请开始测试单个组件。

  • 网络损坏?使用 ttcp 检查。
  • 内存损坏?使用 memtest 检查内存。
  • 磁盘损坏?检查 SMART 并生成一些测试数据,这些数据在写入磁盘之前和之后都会进行校验。

答案2

大量 md5summing 将完成完整性验证工作。我不会猜测损坏的原因,这里确实没有足够的信息来做出合理的诊断。

答案3

我觉得这有点可疑,如果我是你,我会“偷偷摸摸地上网”(将文件复制到闪存驱动器并将它们移动到有问题的桌面),然后尝试从闪存驱动器复制到 RAID 阵列。如果成功,那么我们就知道这是一个基于网络的问题。我建议采取 MikeyB 所说的步骤。

然而,如果复制失败,那么就会发生一些糟糕的事情。

您可以尝试 cp -v(详细模式),看看 cp 是否会抱怨任何事情。如果没有,那么我会尝试 cpio,可能不会有什么不同,但我会尝试。

相关内容