我有四个来自 Buffalo Terastation NAS 的驱动器。我的理解是 Terastation 要么使用 mdadm 进行 RAID,要么至少与其兼容。
我已经获取了我的驱动器并使用 dd 克隆了每个驱动器,现在我正尝试从 dd 映像重新创建我的 raid。
如果我查看每张图片,我会得到以下信息:
[me@workstation ~]$ sudo fdisk -l /dev/loop0p1 磁盘 /dev/loop0p1:500 MiB,524288000 字节,1024000 个扇区 单位:扇区 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x73736572 设备启动开始结束扇区大小ID类型 /dev/loop0p1p1 1920221984 3736432267 1816210284 866G 72 未知 /dev/loop0p1p2 1936028192 3889681299 1953653108 931.6G 6c 未知 /dev/loop0p1p3 0 0 0 0B 0 空 /dev/loop0p1p4 27722122 27722568 447 223.5K 0 空 分区表条目不按磁盘顺序排列。 [me@workstation ~]$ sudo fdisk -l /dev/loop1p1 磁盘 /dev/loop1p1:500 MiB,524288000 字节,1024000 个扇区 单位:扇区 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x73736572 设备启动开始结束扇区大小ID类型 /dev/loop1p1p1 1920221984 3736432267 1816210284 866G 72 未知 /dev/loop1p1p2 1936028192 3889681299 1953653108 931.6G 6c 未知 /dev/loop1p1p3 0 0 0 0B 0 空 /dev/loop1p1p4 27722122 27722568 447 223.5K 0 空 分区表条目不按磁盘顺序排列。 [me@workstation ~]$ sudo fdisk -l /dev/loop2p1 磁盘 /dev/loop2p1:500 MiB,524288000 字节,1024000 个扇区 单位:扇区 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x73736572 设备启动开始结束扇区大小ID类型 /dev/loop2p1p1 1920221984 3736432267 1816210284 866G 72 未知 /dev/loop2p1p2 1936028192 3889681299 1953653108 931.6G 6c 未知 /dev/loop2p1p3 0 0 0 0B 0 空 /dev/loop2p1p4 27722122 27722568 447 223.5K 0 空 分区表条目不按磁盘顺序排列。 [me@workstation ~]$ sudo fdisk -l /dev/sda 磁盘 /dev/sda:465.8 GiB,500107862016 字节,976773168 个扇区 单位:扇区 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 4096 字节 I/O 大小(最小/最佳):4096 字节 / 4096 字节 磁盘标签类型:dos 磁盘标识符:0x734de3f1 设备启动开始结束扇区大小ID类型 /dev/sda1 * 2048 1026047 1024000 500M 7 HPFS/NTFS/exFAT /dev/sda2 1026048 976771071 975745024 465.3G 7 HPFS/NTFS/exFAT
如果我使用 mdadm 检查它们,我会得到以下结果:
[me@workstation ~]$ sudo mdadm --examine /dev/loop0p1 /dev/loop0p1: MBR 魔法 : aa55 分区[0]:1816210284 个扇区,位于 1920221984(类型 72) 分区[1] :1953653108 个扇区,位于 1936028192 (类型 6c) 分区[3] :27722122 处的 447 个扇区(类型 00) [me@workstation ~]$ sudo mdadm --examine /dev/loop1p1 /dev/loop1p1: MBR 魔法 : aa55 分区[0]:1816210284 个扇区,位于 1920221984(类型 72) 分区[1] :1953653108 个扇区,位于 1936028192 (类型 6c) 分区[3] :27722122 处的 447 个扇区(类型 00) [me@workstation ~]$ sudo mdadm --examine /dev/loop2p1 /dev/loop2p1: MBR 魔法 : aa55 分区[0]:1816210284 个扇区,位于 1920221984(类型 72) 分区[1] :1953653108 个扇区,位于 1936028192 (类型 6c) 分区[3] :27722122 处的 447 个扇区(类型 00) [me@workstation ~]$ sudo mdadm --examine /dev/sda /dev/sda: MBR 魔法 : aa55 分区[0]:1024000 个扇区,位于 2048(类型 07) 分区[1] :1026048 处的 975745024 个扇区(类型 07)
最后一个磁盘(/dev/sda)实际上不是一个图像,它是阵列中的原始物理磁盘,但我提供该信息是为了让您了解磁盘最初的样子。
该阵列采用 RAID5 配置,上面有一个 NTFS 分区。我绝不是 MDADM 专家,我只是试着摆弄它(希望)恢复我的数据。
不幸的是,我没有备份这些数据(吸取了教训)。话虽如此,但这个驱动器上的数据还是不错的,但如果丢失了,世界也不会灭亡。
所以我的问题是如何使用 MDADM 重新创建 RAID 阵列并再次访问我的数据?或者我可以吗?我完全被困住了吗?:) 任何帮助都将不胜感激。
谢谢你,布拉德
更新
在@DerfK 的帮助下,我现在看到以下内容:
[me@worstation ~]$ sudo mdadm --create /dev/md0 --assume-clean --level=5 --verbose --chunk=64 --raid-devices=4 --metadata=0.90 /dev/loop0 /dev/loop1 /dev/loop2 /dev/loop3 mdadm:布局默认为左对称 mdadm:/dev/loop0 似乎是 raid 阵列的一部分: 级别=raid0 设备=0 ctime=1969 年 12 月 31 日星期三 19:00:00 mdadm:分区表存在于/dev/loop0上,但将会丢失或 创建数组后毫无意义 mdadm:/dev/loop1 似乎是 raid 阵列的一部分: 级别=raid0 设备=0 ctime=1969 年 12 月 31 日星期三 19:00:00 mdadm:分区表存在于/dev/loop1上,但将会丢失或 创建数组后毫无意义 mdadm:/dev/loop2 似乎是 raid 阵列的一部分: 级别=raid0 设备=0 ctime=1969 年 12 月 31 日星期三 19:00:00 mdadm:分区表存在于/dev/loop2 上,但将会丢失或 创建数组后毫无意义 mdadm:/dev/loop3 似乎是 raid 阵列的一部分: 级别=raid0 设备=0 ctime=1969 年 12 月 31 日星期三 19:00:00 mdadm:分区表存在于/dev/loop3上,但将会丢失或 创建数组后毫无意义 mdadm:大小设置为 488386496K mdadm:自动在大型数组上启用写意图位图 是否继续创建数组?n mdadm:创建已中止。
我不确定为什么 MDADM 将其选择为 RAID0 而不是 RAID5。
我还能够将设备重新连接到 terastation 阵列,并且看到以下信息:
~# /sbin/mdadm --misc --detail /dev/md0 /dev/md0: 版本:00.90.00 创建时间:2004 年 11 月 15 日星期一 22:02:27 突袭级别:raid1 数组大小:385408(376.38 MiB 394.66 MB) 设备大小:385408(376.38 MiB 394.66 MB) 突袭设备:4 设备总数:2 首选辅修科目 : 0 持久性:超级块是持久的 更新时间:2016年10月27日星期四15:45:24 状态:活跃、降级、恢复 活跃设备:2 工作装置:2 故障设备:0 备用设备:0 重建状态:完成 36% UUID:255e2f38:69d2ef57:dd46a9d4:ed86dcee 事件:0.3522 编号 主要 次要 RaidDevice 状态 0 0 0 0 故障已移除 1 22 1 1 活动同步 /dev/hdc1 2 0 0 2 故障已移除 3 34 1 3 活动同步 /dev/hdg1
阵列中的一个磁盘发生故障,另一个磁盘部分发生故障。我的意思是,有时它可以读取,有时它不会读取。因此我使用 dd 对其进行映像处理,但... 不确定该 dd 映像是否有效 :(
这也是来自 terastation webUI 的屏幕截图: