恢复失败的 RAID1 软件分区/丢失的分区表或超级块

恢复失败的 RAID1 软件分区/丢失的分区表或超级块

我已经阅读并尝试了两天的各种方法,但似乎都不起作用。我有 2 个硬盘,每个硬盘上都有一个 200GB 的分区,我将其设置为 RAID1。然后我安装了 XBMC 并尝试再次启动 RAID。阵列启动了,但缺少文件系统(我认为是 ext4),因此无法安装。输出:

ubuntu@ubuntu:~$ sudo fdisk -l

Platte /dev/sda: 1000.2 GByte, 1000204886016 Byte
255 Köpfe, 63 Sektoren/Spur, 121601 Zylinder
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xf3b92028

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/sda1   *           1       97379   782196786   83  Linux
/dev/sda2           97380      121601   194563215   fd  Linux raid autodetect

Platte /dev/sdb: 1500.3 GByte, 1500301910016 Byte
255 Köpfe, 63 Sektoren/Spur, 182401 Zylinder
Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0c41a682

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/sdb1   *           1        9362    75194336   83  Linux
/dev/sdb2            9362       10199     6724609    5  Erweiterte
/dev/sdb3           10200       34421   194563215   fd  Linux raid autodetect
/dev/sdb4           34515      182401  1187902327+  83  Linux
/dev/sdb5            9362       10199     6724608   82  Linux Swap / Solaris

Platte /dev/sde: 1977 MByte, 1977614336 Byte
64 Köpfe, 63 Sektoren/Spur, 957 Zylinder
Einheiten = Zylinder von 4032 × 512 = 2064384 Bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/sde1               1         957     1929244+   6  FAT16

sda2 和 sdb3 已处于 RAID1 阵列中。

ubuntu@ubuntu:~$ sudo mdadm -E -s
ARRAY /dev/md0 level=raid1 num-devices=1 UUID=5c001a6c:9e51fa30:e368bf24:bd0fce41
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=ed6394c7:53941634:e368bf24:bd0fce41

当我尝试用 1 个磁盘创建一个阵列来恢复数据(但没有成功)时,就创建了具有 1 个设备的 raid。我还没有删除该阵列,因为我不知道会发生什么。我希望我没有让情况变得更糟。

然后我尝试了这个指南:http://linuxexpresso.wordpress.com/2010/03/31/repair-a-broken-ext4-superblock-in-ubuntu/

ubuntu@ubuntu:~$ sudo fsck.ext4 -v /dev/sdb3
e2fsck 1.41.11 (14-Mar-2010)
fsck.ext4: Superblock ungültig versuche es mit Backup-Blöcken...
fsck.ext4: Bad magic number in super-block beim Versuch, /dev/sdb3 zu öffnen

SuperBlock ist unlesbar bzw. beschreibt kein gültiges ext2
Dateisystem.  Wenn Gerät gültig ist und ein ext2
Dateisystem (kein swap oder ufs usw.) enthält,  dann ist der SuperBlock
beschädigt, und sie könnten e2fsck mit einem anderen SuperBlock:
    e2fsck -b 8193 <Gerät>


ubuntu@ubuntu:~$ sudo mke2fs -n /dev/sdb3
mke2fs 1.41.11 (14-Mar-2010)
Dateisystem-Label=
OS-Typ: Linux
Blockgröße=4096 (log=2)
Fragmentgröße=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
12165120 Inodes, 48640803 Blöcke
2432040 Blöcke (5.00%) reserviert für den Superuser
Erster Datenblock=0
Maximale Dateisystem-Blöcke=0
1485 Blockgruppen
32768 Blöcke pro Gruppe, 32768 Fragmente pro Gruppe
8192 Inodes pro Gruppe
Superblock-Sicherungskopien gespeichert in den Blöcken: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624, 11239424, 20480000, 23887872

ubuntu@ubuntu:~$ sudo e2fsck -b 11239424 /dev/sdb3
e2fsck 1.41.11 (14-Mar-2010)
e2fsck: Das Argument ist ungültig beim Versuch, /dev/sdb3 zu öffnen

SuperBlock ist unlesbar bzw. beschreibt kein gültiges ext2
Dateisystem.  Wenn Gerät gültig ist und ein ext2
Dateisystem (kein swap oder ufs usw.) enthält,  dann ist der SuperBlock
beschädigt, und sie könnten e2fsck mit einem anderen SuperBlock:
    e2fsck -b 8193 <Gerät>

ubuntu@ubuntu:~$ sudo e2fsck -b 20480000 /dev/sdb3
e2fsck 1.41.11 (14-Mar-2010)
SuperBlock has an ungültig Journal (Inode 8).
Bereinige<j>? ja

*** ext3 journal has been deleted - filesystem is now ext2 only ***

Die Dateisystem Größe ( laut SuperBlock) ist 48827559 Blocks
Die physikalische Größe von Gerät ist 48640803 Blocks
Entweder der SuperBlock oder die Partionstabelle ist beschädigt!
Abbrechen<j>? ja

我真的不知道它是分区表还是超级块。起初我认为我应该删除带有一个设备的阵列,我该怎么做才能不破坏任何东西(现在是这样:D)?之后 - 我下一步应该做什么?

提前谢谢大家!


编辑:我刚刚发现这个 https://bbs.archlinux.org/viewtopic.php?id=136766

我认为我在创建数组时也弄乱了一些事情。但是当我sudo e2fsck -cc /dev/md0这样做时,它再次出现以下错误:

ubuntu@ubuntu:~$ sudo e2fsck -cc /dev/md0
e2fsck 1.41.11 (14-Mar-2010)
e2fsck: Superblock ungültig versuche es mit Backup-Blöcken...
e2fsck: Bad magic number in super-block beim Versuch, /dev/md0 zu öffnen

SuperBlock ist unlesbar bzw. beschreibt kein gültiges ext2
Dateisystem.  Wenn Gerät gültig ist und ein ext2
Dateisystem (kein swap oder ufs usw.) enthält,  dann ist der SuperBlock
beschädigt, und sie könnten e2fsck mit einem anderen SuperBlock:
    e2fsck -b 8193 <Gerät>

我是否必须运行 resize2fs 以使物理大小和 fs 大小再次匹配?(我还没有运行此命令)?或者重新创建阵列就足够了吗?

答案1

也许我太笨了,但我没有在任何地方找到评论按钮,如果我没有注册,我只能评论一次吗?

您还保留着原始的 ARRAY 系列吗/etc/mdadm.conf? – psusi

不,不幸的是,旧系统的所有内容都消失了。我现在正在做 photorec,我已经制作了一个磁盘的 dd 映像。可以使用 -file 吗.img?(iso无法安装)。我真的认为由于物理和文件系统的块大小不同,分区表已经消失了。当 photorec 完成后,我应该尝试重建它吗?

编辑:已解决,恢复了我的数据。raid 仍然很乱,但现在我可以重建它,然后将我的数据复制回去。请参阅此处的线程: http://ubuntuforums.org/showthread.php?t=2122138&p=12540725

所以我做了以下事情:

  1. 我制作了其中一个 RAID1 分区 (在本例中为 /dev/sdb2) 的 DD 映像。

  2. 我下载了 IMAGE 并在其上运行了 testdisk,而不是分区本身。

    sudo ./testdisk_static /path/to/dd-image

  3. 按回车键,在分区表类型中选择“无”

  4. 选择分析并运行,然后按回车键

  5. 选择“更深层次的搜索”,并在出现 ext-4 条目时按 Enter 停止搜索

  6. 选择其中一个 ext4 条目并按“p”列出文件(注意:如果显示“文件系统损坏”,您可能必须进行更深入的搜索并测试每个条目)

  7. 在下一页上选择文件夹并将其复制到另一个硬盘

  8. 完毕

相关内容