Linux RAID 1アレイからのパーティションの回復

Linux RAID 1アレイからのパーティションの回復

最近終了した古いサーバー(Fedora 4 - はい、古い!)がありました。ソフトウェアRAID 1アレイに2つのIDEディスクが構成されており、データを回復しようとしています。残念ながら、mdadmを台無しにしてかなり時間が経ち、何かが台無しになっているのではないかと心配です。また、アレイに2つのディスクがありますが、そのうちの1つが完全に死んでいるようです。別のコンピュータに接続すると、コンピュータはBIOS画面で停止し、起動しません。だから別のミラーディスクを使用することにしました。

ディスクを別のコンピュータに置き、最初に試したのは実行でした。

mdadm --create /dev/md0 -v --force --raid-devices=1 --level=raid1 /dev/sdb2

ただし、これによりファイルシステムをマウントできなくなります。

# mount -t ext3 /dev/md0 /mnt mount: wrong fs type, bad option, bad superblock on /dev/md0, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so

しかし、明らかにいくつかの内容をディスクに書き戻すので、私はそれを台無しにするのではないかと心配です。

# mdadm --examine /dev/sdb2
/dev/sdb2:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : b6babdfb:e99e3bd3:398fcebe:dd38faab
           Name : bluto:0  (local to host bluto)
  Creation Time : Thu Dec 29 15:36:10 2016
     Raid Level : raid1
   Raid Devices : 1

 Avail Dev Size : 310277362 (147.95 GiB 158.86 GB)
     Array Size : 310277218 (147.95 GiB 158.86 GB)
  Used Dev Size : 310277218 (147.95 GiB 158.86 GB)
    Data Offset : 2048 sectors
   Super Offset : 8 sectors
          State : active
    Device UUID : 0f3d948b:398095cc:9621f72f:fcd11310

    Update Time : Thu Dec 29 15:36:10 2016
       Checksum : c58ea2b6 - correct
         Events : 0


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

ここで作成時間は現在であり、ホスト名「bluto」は元のサーバではなく、リカバリに使用するシステムです。それで、この文は復元作業をしながら書いたもので、重要な内容が消えたのではないか心配になります。

その後、同じディスク上の他のパーティションで実際に動作するより簡単なmdadmトリックを思い出しました。残念ながら、パーティションは単に/bootなので、データは興味深いものではありませんが、この技術が機能するはずです。

# mdadm --assemble --run /dev/md0 /dev/sdb1
mdadm: /dev/md0 has been started with 1 drive (out of 2).
# mount -t ext3 /dev/md0 /mnt
# ls /mnt
config-2.6.11-1.1369_FC4  grub                          initrd-2.6.17-1.2142_FC4.img  System.map-2.6.11-1.1369_FC4  vmlinuz-2.6.11-1.1369_FC4
config-2.6.17-1.2142_FC4  initrd-2.6.11-1.1369_FC4.img  lost+found                    System.map-2.6.17-1.2142_FC4  vmlinuz-2.6.17-1.2142_FC4

ただし、マウントを解除してmdデバイスを停止してから物理データパーティション(sdb2)で同じ操作を試みると、以前と同じエラーが発生します。

# umount /mnt
# mdadm --stop /dev/md0
mdadm: stopped /dev/md0
# mdadm --assemble --run /dev/md0 /dev/sdb2
mdadm: /dev/md0 has been started with 1 drive.
# mount -t ext3 /dev/md0 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/md0,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

次は何を試すべきかわかりません。私はe2fsckを実行しようとしましたが、/dev/sdb2に対して直接実行する必要がありますか、または実行時に/dev/md0に対して実行する必要がありますか?また、fsがすでに悪い場合、状況がさらに悪化する可能性があることも心配です。

関連情報