関連する質問と回答をたくさん経験しましたgrub rescue
が、とても分からない別の問題に封着しました。
いくつかの回答に基づいて、この問題を解決するために以下の手順を実行しました。
まず、
ls
コマンドを使用してすべてのパーティションをインポートします。私の場合(hd0)
、、、、&(hd0,msdos5)
(hdo,msdos1)
(hd1)
(hd1,msdos1)
上記の5つのパーティションのうち
Filesystem is ext2
メッセージを残してください(hd0,msdos1)
運転する。提供された回答の一部に基づいてアクブンツ&スタック交換設定しようとしています。
root
&prefix
使用(hd0,msdos1)
ドライブ(ls
コマンドを使用して見つかりました)セットアップ中に、選択したドライブにそのディレクトリが存在しないことに
prefix
気づきました。/boot/grub
(hd0,msdos1)
その結果、発射しようとすると
insmod normal
コマンドを実行すると、Grub Rescueで次のエラーが発生します。/boot/grub/i386-pc/normal.mod
見つかりませんそれに加えて、ubuntu 14、16、17、18、およびWindows OSで起動可能なUSBドライブを試してみましたが、常にgrub回復ウィンドウに入ります。
これにより、次のような質問が残ります。
間違ったドライブをルートドライブとして設定していますか?
含める方法はありますか?
/boot/grub
私が実行できるように、ルートディレクトリのフォルダ`insmodノーマル注文する?
答え1
/boot
システムの起動時に起動パーティションがマウントされるため、そこには見つかりません/boot/grub
。
検索するディレクトリは/grub
このboot
パーティションにあります。
システム全体をインストールするには、最初のシステムをインストールしてからその上/
に/boot
インストールする必要があります。
実際、同じアーキテクチャのLive DVDにある場合は、以下をマウントすることがよくあります。
/mnt -> root partition
/mnt/boot -> boot partition
/mnt/proc /proc
/mnt/sys /sys
/mnt/dev /dev
それからchroot /mnt
カーネルモジュールをロードする場合は、ライブブートシステムからロードします。
答え2
ls (hdo,msdos1)
ここで提供されているファイルシステムはext2と言われました。
set boot=(hdo,msdos1)
set prefix=(hdo,msdos1)/boot/grub
insmod normal
normal
次に、kaliを起動し、ターミナルを開き、次のように入力します。
sudo apt-get update
sudo apt-get install --reinstall grub-pc
sudo grub-install /dev/sda
sudo update-initramfs -u
sudo update-grub