誤って実行しましたdd if=image.img of=/dev/sda
の代わりに /dev/sdb
そしてsdaは私のメインパーティションです。入力ミスに気付いたとき、CTRL + Cですぐにプロセスを停止したので、2秒ほどしか実行されませんでした。再起動すると、どのパーティションからも起動できませんでした。BIOSブートメニューのUEFIブートが空でした。 Gpartedライブのライブイメージを作成してtestdisk
を実行すると、6つのパーティションのうち4つが見つかりました。efiパーティションはsda2にあり、現在はsda1にあり、Windowsはsda4からsda2に分かれています。 linuxとlinuxがsda5とsda6からsda3とsda4にスワップします。 efibootmgr
を実行するとefiパーティションがまだ存在し、中にいくつかのエントリがありますが、エントリが表示されず、UEFIでmanjaro liveを実行すると、efiが見つからないと表示されます。だから私がやりたいのは、OSをもう一度または少なくともWindowsで起動できるようにすることです(Linuxを再インストールし、Windowsには必要なファイルがいくつかあるため)。どんな助けでも感謝します、あなたの時間に感謝します:)!
2秒でも、少なくともディスクの最初の300MBが書き換えられます。 EFIだけでなく、MS-Windowsブートマネージャも必要なため、MS-Windowsを正しく起動できない場合があります。私がお勧めするのは、他のOSや他のコンピューターで作業しているときです。ライブLinuxをダウンロードして(CAINEをお勧めします)、ブートUSBフラッシュディスクを作成します(またはDVDに書き込みます)。破損したコンピューターをCAINEから起動し、保存する必要のあるファイルを探して、他のメディアにコピーします(書き込み用にターゲットディスクのロックを解除することを忘れないでください。CAINEは非常に厳密です)。
より高価な方法は、新しいハードディスクを購入してLinuxをインストールすることです。そうすれば、破損したディスクからLinuxの下にいくつかのパーティションをマウントできます。 NTFS(MS-Windowsのデフォルトファイルシステム)を簡単に操作するには、parted
、gparted
、ntfs-3g
などのLinuxユーティリティをインストールする必要があります。
Linuxでは、MBR/EFIパーティションテーブルが存在しなくてもパーティションをマウントできます。単にパーティションの先頭を見つける必要があり(たとえば、NTFS文字列を探すことによって)、ディスクの先頭からの正確なオフセットがわかっている場合は、次の方法でマウントできます。
mount /dev/sdX /mnt/windows -o ro,loop,offset=xxxx
一方、Linuxを正常にインストールした後、元のMS-Windowsパーティションを識別し、それをブートリストに追加するようにGrubブートローダーを構成しようとする場合があります。
まず、残っているものの画像を作成し、可能であればその画像をもう一度コピーします。そうすれば、少なくとも、すでに持っている「悪いが絶望的ではない」状況に戻ることができます。次に、それほど労力がかからないことを検討します。おそらく、影響を受けていないパーティションからデータを抽出し、OSをクリーンにインストールすることです(wipefs -a /dev/sda
最初)。 efibootmgr
は、NVRAMに保存されているものを示しています。トピックに関する ロッドの本 も参照してください(私のお気に入りのUEFIリンク:-)。