Windows のインストール後に「消えた」パーティションを復元する

Windows のインストール後に「消えた」パーティションを復元する

私のパーティション テーブルは次のようになっていました:

[/boot (ext2)] [logical: [linux(ext4) /][linux(ext4) /home][linux swap] ] [windows 7]

Windows が正しく起動しなかったので、再インストールすればいいだけだと考えました。大したことではないです。予想通り、MBR が上書きされたので、Linux ライブ CD を起動して grub-install を実行しました。しかし、残念なことに、論理パーティションがなぜか空になっています。Windows と Linux の両方で、論理パーティション内にあるにもかかわらず、未割り当ての空き領域として認識されます。ドライブの先頭のブート パーティションは変更されていないようです。

私はこれにかなり腹を立てています(マジで、ウィンドウズって何なの?)もし誰か知っている人がいたらなぜこれが起こったのか、知りたいです。しかし、もっと重要なのは、パーティションをどうやって元に戻すかということです。

アップデート:

実行するとgpart、次のようになります:

Begin scan...
Possible extended partition at offset(101mb)
   Possible partition(Linux ext2), size(39997mb), offset(102mb)
   Possible partition(Linux ext2), size(381143mb), offset(40099mb)
End scan.

Checking partitions...
   Partition(Linux ext2 filesystem): logical 
   Partition(Linux ext2 filesystem): orphaned logical 
Ok.

Guessed primary partition table:
Primary partition(1)
   type: 005(0x05)(Extended DOS)
   size: 429343mb #s(879294464) s(208845-879503308)
   chs:  (13/0/1)-(1023/254/63)d (13/0/1)-(54746/139/62)r

Primary partition(2)
   type: 000(0x00)(unused)
   size: 0mb #s(0) s(0-0)
   chs:  (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r

Primary partition(3)
   type: 000(0x00)(unused)
   size: 0mb #s(0) s(0-0)
   chs:  (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r

Primary partition(4)
   type: 000(0x00)(unused)
   size: 0mb #s(0) s(0-0)
   chs:  (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r

どうやらのみ不足しているパーティションが見つかりました (オフセットはほぼ正しいようです)。出力の最初の 2 行にまとめられている 2 つのパーティションは、不足しているパーティションの正しいサイズとオフセットです。ただし、以下の情報には、拡張パーティション全体を表す 1 つのパーティションのみが表示され、上に表示された論理パーティションに関する情報は表示されません。

アップデート2:

この時点で、拡張パーティション全体にまたがる新しい論理パーティションを作成し、非常に大きなforループを実行しています。

dumpe2fs /dev/sda5 -o superblock=$i

それは意味をなすのでしょうか? 絶望してきてます :(

答え1

最終的にTestDiskを使ってパーティションを復元できました(https://www.google.com/search?sugexp=chrome,mod=5&sourceid=chrome&ie=UTF-8&q=testdisk) は驚くほど速く、うまく機能しました。しかし、復元したパーティション テーブルが重複していたため、状況が複雑になりました。そのため、個別にマウントして外付けハード ドライブに tar し、ファイル システムを削除して新しいファイル システムを作成し、ファイルをコピーし直しました。夜の大半を費やしましたが、そうですね...

これからはパーティション テーブルのバックアップを取っておきます。特に頻繁に変更されるわけではないので、バックアップを取らない理由はありません。コピーを作成して、Google Drive や Web スペースなどにアップロードするだけです。

関連情報