使用 XFS 恢复 mdadm raid5

使用 XFS 恢复 mdadm raid5

我正在尝试从发生故障的旧 Buffalo Terastation 中恢复数据。之前其他人尝试恢复数据失败,我面临以下情况。

注意:我不确定之前具体运行了什么命令,希望没有造成永久性损害!

最初的 Terastation 有四个磁盘,每个磁盘都有系统、交换和数据分区。数据分区使用 raid5 进行管理,我相信文件系统是 XFS。

已将三个数据分区分别连接到外部 USB HDD 设备,并使用以下命令将其复制到另一台设备:

dd if=/dev/sdd3 of=/share/disk1_data

对新创建的备份使用 mdadm --examine 会产生以下结果:

    Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x1
     Array UUID : deb4c6d2:c2fc193c:a9599de3:a25d0d2c
           Name : it:0  (local to host it)
  Creation Time : Tue Sep  8 08:59:06 2015
     Raid Level : raid5
   Raid Devices : 4

 Avail Dev Size : 779677543 (371.78 GiB 399.19 GB)
     Array Size : 1169515008 (1115.34 GiB 1197.58 GB)
  Used Dev Size : 779676672 (371.78 GiB 399.19 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262056 sectors, after=871 sectors
          State : clean
    Device UUID : 2eed9b35:6857b6fa:00a76842:9f5ab0ae

Internal Bitmap : 8 sectors from superblock
    Update Time : Tue Sep  8 09:40:17 2015
  Bad Block Log : 512 entries available at offset 72 sectors
       Checksum : 21f8a2ff - correct
         Events : 8

         Layout : left-symmetric
     Chunk Size : 512K

   Device Role : Active device 0
   Array State : AAA. ('A' == active, '.' == missing, 'R' == replacing)

每个设备都有不同的设备 UUID、校验和(每个都正确)并具有设备角色 0-2。所有其他信息均相同。

检查每个驱动器的启动情况表明那里有数据。

head -c=128 disk1_data

XFSB       nÙp                
†/@@––Ny»Rû“û    °                       0           € =„                 

head -c=128 disk2_data

INAÿ                      ¯A—zö:»´ FùÓ@àQqas0„P       ^                               ÿÿÿÿ     0share   @spool 

head -c=128 disk3_data

ÿØÿà JFIF   e e  ÿþ Created by AccuSoft Corp. ÿÃ    ÿÄ #        

ÿÚ    ÿ à _æŒå9±Ü‡”î³¹v

从我在其他地方读到的内容来看,如果文件系统是 XFS 并且数据在 raid5 中,这就是我所期望的。disk1 具有文件系统的开头,disk2 从 inode 开始,disk3 有数据。disk4 不存在,但包含这些的校验和。

从这个阶段开始,我已将每个设备安装到一个环路上。

losetup /dev/loop2 disk1_data
losetup /dev/loop3 disk2_data
losetup /dev/loop4 disk3_data

在此阶段,mdadm 能够组装设备。

mdadm --assemble --scan
/dev/md0 has been started with 3 drives (out of 4)

运行--detail 会得到以下好消息:

        Version : 1.2
  Creation Time : Tue Sep  8 08:59:06 2015
     Raid Level : raid5
     Array Size : 1169515008 (1115.34 GiB 1197.58 GB)
  Used Dev Size : 389838336 (371.78 GiB 399.19 GB)
   Raid Devices : 4
  Total Devices : 3
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Tue Sep  8 09:40:17 2015
          State : active, degraded 
 Active Devices : 3
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 512K

           Name : it:0  (local to host it)
           UUID : deb4c6d2:c2fc193c:a9599de3:a25d0d2c
         Events : 8

    Number   Major   Minor   RaidDevice State
       0       7        2        0      active sync   /dev/loop2
       1       7        3        1      active sync   /dev/loop3
       2       7        4        2      active sync   /dev/loop4
       6       0        0        6      removed

cat /proc/mdstat 产生以下内容

Personalities : [raid6] [raid5] [raid4] 
md0 : active raid5 loop2[0] loop4[2] loop3[1]
      1169515008 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/3] [UUU_]
      bitmap: 2/3 pages [8KB], 65536KB chunk

unused devices: <none>

但是,当我尝试挂载新创建的 /dev/md0 时,总是会出现与超级块、魔法数字等相关的错误。

fdisk -l /dev/md0

Disk /dev/md0: 1197.6 GB, 1197583368192 bytes
2 heads, 4 sectors/track, 292378752 cylinders, total 2339030016 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 524288 bytes / 1572864 bytes
Disk identifier: 0x00000000

xfs_check 似乎不喜欢该文件系统

xfs_check: /dev/md0 is not a valid XFS filesystem (unexpected SB magic number 0x00000000)
xfs_check: WARNING - filesystem uses v1 dirs,limited functionality provided.
xfs_check: read failed: Invalid argument
cache_node_purge: refcount was 1, not zero (node=0x9dd5930)
xfs_check: cannot read root inode (22)

我已经运行了 xfs_repair,它整晚都在运行,只是在屏幕上输出 .............,无法找到任何辅助超级块。

这就是我陷入困境的地方。

非常欢迎任何建议。

最好的祝愿

相关内容