grubを使用してブートパーティションを完全に再構築するには?

grubを使用してブートパーティションを完全に再構築するには?

openSUSE 11.4、ペンドライブにブートパーティションがあります。

問題は、コンピュータを起動すると、grubがすぐに「ファイルが見つかりません」(どんなファイルなのかわからない)エラーを表示し、「構造モード」に切り替えることです。

別のペンドライブからコンピュータを起動できますが、元のペンドライブ(上記のもの)を使用したいと思います。 Yast を使用して grub を更新しようとしたか、次の手順を実行して手動で更新を試みました。

grub --batch < /etc/grub.conf

または、動作しているペンドライブ上のすべてのファイルを機能していないペンドライブにコピーしても(後でdevice.mapを編集)、まだ成功しておらず、「回復モード」のみが表示されます。

システム全体を再インストールして、ペンドライブの内容(ブートパーティションのみを含む)を再構築する方法を知っています。これにより、ブートパーティションが再び正しく構築されますが、よりスマートな方法を探しています。

それでは、2〜3個のファイルをトリムするのではなく、ブートパーティション+ grub全体を再構築する方法は何ですか?

ベストアンサー1

いいですね。既存のペンドライブを2番目のペンドライブとして使用したい場合は、次の手順に従います。

  1. 既存のUSBフラッシュドライブの内容をバックアップしてください。
  2. 2つのペンドライブが接続され、システムが実行されると、既存のペンドライブを再パーティションします。同様に2番目はパーティションを分割する方法です。つまり、/boot古いパーティションのパーティションを新しいパーティションと同じ番号とタイプにします(出力を参照fdisk -l)。起動可能にすることを忘れないでください。
  3. /boot/古いpendrvの内容を消去し(どこかにバックアップを保存します)、新しいpendrvのすべてのファイルをコピーします。
  4. 削除2つのペンドライブ、どちらが何であるか覚えておいてください(ちょっと待ってください/dev/sd[ab]
  5. 既存のUSBフラッシュドライブの起動セクタを新しいUSBフラッシュドライブの起動セクタで上書きします。

    /dev/sdbここでは、既存のUSBフラッシュドライブであり、/dev/sdc新しいUSBフラッシュドライブであると仮定します。- 作る確かに適切なデバイス名に変更してください。それ以外の場合は、システム全体を台無しにすることができます!

    dd if=/dev/sdc bs=512 個=1/dev/sdb

繰り返しますが、パラメータif=は新しいペンドライブ(現在は正しく機能しています)を指し、パラメータは古いof=ペンドライブ(修理中のペンドライブ)を指す必要があります。

そうする必要があります。これで、古いペンドライブが新しい​​ドライブのように動作します。

おすすめ記事