私はすでに「グルーブ構造」から回復する方法を知っているので、これについては尋ねません。
私はハードドライブがほとんどなく、いくつかの目的でパーティションを変更します。しかし、これを行うたびに "grub構造"が発生しますが、それを処理することはできますが面倒です。それを防ぐ方法はありますかgrub rescue
? (例:grubを別のローダーに置き換え、独自のスクリプトをインストールするなど)
修正する:詳細を追加
私はパーティショニングを使用していませんが
/boot
、/
私のルートパーティションは、より大きな拡張パーティションの一部です。
私のルートパーティション
/dev/sda1
は/dev/sda5
。デュアルブートを使用します(Windowsはにあります/dev/sda1
)。拡張パーティションの一部を変更すると、そのアドレス/名前(つまり
(hd0,msdosX)
それが何であるかわからない)が変わるため、grubの使用中に「grub構造」を回避することはできません。たぶんブートローダを変更することが唯一の解決策かもしれませんls
「grub構造」では、grubはパーティションの数とパーティションがext2/3/4かどうか(および経由で)を知っているため、ls (hdX,msdosY)
grubがパーティションをスキャンして見つけた最初のextパーティションを起動できるようにすることができれば問題が発生します。解決しました!
答え1
grubが構造モードに入った理由によって異なります。
これは、grubが最初にロードされた部分を見つけることができないために発生する可能性があります。従来のPCパーティションテーブルの場合、これらの部分は通常、パーティションテーブルと最初のパーティションの間の類似の安全ポイントにインストールされます。この場合は、別のブートローダをインストールしたり、ディスクを完全に消去したり、パーティションを再構成してこの領域を妨げたりしないでください。 GPTパーティションの場合、これらの部分は専用のBIOSブートパーティションにインストールされます。この場合、パーティションを妨害/移動しないでください。
あるいは、グルーブがそれ自体、またはモジュールまたは構成の遅くロードされた部分を見つけることができないために発生する可能性があります。/boot
ファイルシステムがある場合はファイルシステムにあり、そうでない場合はルートファイルシステムにあります。
- 仕切りを使用する場合は、仕切りに
/boot
触れたり移動したりしないでください。安全です。 - パーティションを使用せずに
/boot
ルートファイルシステムのパーティションを、grubの検索機能を妨げる方法で使用している場合は、/boot
grubが見つけることができるパーティション(小さくて決して触れられないパーティション)を使用することを検討してください。より安定して。
答え2
kaliで起動したら、ターミナルを開き、次のように入力します。
sudo apt-get update
sudo apt-get install --reinstall grub-pc
sudo grub-install /dev/sda
sudo update-initramfs -u
sudo update-grub