再起動せずにGRUBのインストールを確認することは可能ですか?


24

私はこれに何度も噛まれましたが、今日openssl、サーバーgrubの更新が「以前にインストールされたハードディスクが存在しないため」再度インストールする必要があると不平を言いました。

bootinfoscriptによると、次のセットアップでraid 1をインストールしています。

> ============================= Boot Info Summary: ===============================
> 
>  => Grub2 (v1.99) is installed in the MBR of /dev/sda and looks at
> sector 1 of the same hard drive for core.img. core.img is at this location and looks
>     for (mduuid/d2a04f98760e2b3cc23ba87845667605)/grub on this drive.  
>
> => Grub2 (v1.99) is installed in the MBR of /dev/sdb and looks at sector 1 of
>     the same hard drive for core.img. core.img is at this location and looks
>     for (mduuid/d2a04f98760e2b3cc23ba87845667605)/grub on this drive.

My mount points are:

> /dev/md2 on / type ext4 (rw) 

> /dev/md1 on /boot type ext3 (rw)

And mduuid seems to match the ones bootinfoscript mentions:

> ls -l /dev/disk/by-id/md-uuid-*
>
> lrwxrwxrwx 1 root root 9 Mar 19 11:37 /dev/disk/by-id/md-uuid-38048286:e3004e47:510ca3e1:2bae3f2e -> ../../md2 
>
> lrwxrwxrwx 1 root root 9 Mar 19 11:37 /dev/disk/by-id/md-uuid-d2a04f98:760e2b3c:c23ba878:45667605 -> ../../md1 
>
> lrwxrwxrwx 1 root root 9 Mar 19 11:37 /dev/disk/by-id/md-uuid-e099b695:0143bb58:e4ef7645:0f22ce0b -> ../../md0

grub-installの実行は機能しますが、grubの再起動後にパーティションが実際に正しく起動することを確認したいと思います。

どうすれば確認できますか?


1
私はRAIDを使用していませんし、実際には知りませんが、grubをドライブのMBRではなくRAIDのルートにインストールします。ブート修復を実行すると、次のようなメッセージが表示される場合があります。/ dev / mapper / isw_cdjacjeebj_VOLUME_0のMBRにブートローダーがインストールされていません。マッパーはRAIDボリュームです。
オールドフレッド14

回答:


19

試す前にこれが機能するかどうかを単にチェックできるとは思いませんが、代わりにGRUBのプレビューを即座に取得して、新しい構成がGRUBに正しくロードされていることを確認できます。

これはと呼ばれるツールを使用して実現できますgrub-emu

man grub-emu

NAME
       grub-emu - GRUB emulator

SYNOPSIS
       grub-emu [OPTION]...

DESCRIPTION
       GRUB emulator.

       -r, --root-device=DEV
              use DEV as the root device [default=guessed]

       -m, --device-map=FILE
              use FILE as the device map [default=/boot/grub/device.map]

       -d, --directory=DIR
              use GRUB files in the directory DIR [default=/boot/grub]

       -v, --verbose
              print verbose messages

grub-emuコマンドラインを使用して簡単にインストールします。

sudo apt-get install grub-emu

実行するには、ターミナルを使用してこのコマンドを実行します。

grub-emu

1
これはgrub2インストールの信頼できるテストですか?また、キーボード入力は表示されるメニューでは機能しないようです。有効にするためのトリックはありますか?
マイケルシェパー

私は閉じカントgrub-emuそれを停止する唯一の方法は、pkill -SIGKILL -fe grub-emuキーボード入力がいずれかの動作していない、
アクエリアスパワー

1
この修正インタラクティブ@MichaelScheper serverfault.com/a/847429/163750 :)。基本的にxterm -e grub-emuは、grub-emuウィンドウではなくxtermに焦点を合わせてください!
アクエリアスパワー

4

この回答file -s /dev/sda、GRUB MBRが正常にインストールされたかどうかを確認するために使用します。それを経て、値を確実にダブルチェックして/boot/grub/grub.cfg、UUIDがの値と一致/dev/disk/by-uuidすることを確認し、すべてがで正しく見えることを確認できます/boot/grub/device.map。そのファイルが間違っていると、grub.cfgの(hdX)仕様に問題が生じます。

update-grub代わりのドライブにgrubをインストールした後に使用している場合、これらのファイルを手動で管理する必要はありません。私の経験の最大の落とし穴は、GRUB構成を更新しないこと、すべてのドライブにGRUBをインストールしないこと、または--forceを使用せずにGRUBをインストールできないようにする不適切なパーティション分割です。


2
その答えはfile -sgrub1 のみに使用され、grub 2には2番目の提案がありますdd bs=512 count=1 if=/dev/sda 2>/dev/null | strings|grep GRUB
-rubo77

「/boot/grub/device.map」はありませんが、そのリンクのthxです!
アクエリアスパワー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.