Articles

Ubuntuや他のLinuxディストリビューション上でGrubを更新する方法

このチュートリアルでは、Ubuntuや他のLinuxディストリビューション上でgrubを更新する方法を学びます。 また、このgrub更新プロセスがどのように機能するかについても1つまたは2つ学習します。

grubを更新する方法

Ubuntuや他の多くのLinuxディストリビューションは、update-grubと呼ばれる便利なコマンドラインユーティリティを提供します。grubを更新するには、sudoを使用して端末でこのコマンドを実行するだけです。p>

sudo update-grub

次のような出力が表示されるはずです:p>

:~$ sudo update-grub password for abhishek: Sourcing file `/etc/default/grub'Generating grub configuration file ...Found linux image: /boot/vmlinuz-5.0.0-37-genericFound initrd image: /boot/initrd.img-5.0.0-37-genericFound linux image: /boot/vmlinuz-5.0.0-36-genericFound initrd image: /boot/initrd.img-5.0.0-36-genericFound linux image: /boot/vmlinuz-5.0.0-31-genericFound initrd image: /boot/initrd.img-5.0.0-31-genericFound Ubuntu 19.10 (19.10) on /dev/sda4Found MX 19 patito feo (19) on /dev/sdb1Adding boot menu entry for EFI firmware configurationdone

update-grub2という同様のコマンドが表示されることがあります。 Update-grubとupdate-grub2の間で心配したり混乱したりする必要はありません。 これらのコマンドはどちらも同じ操作を行います。 10年ほど前、grub2が導入されたばかりの頃、update-grub2コマンドも導入されました。 今日、update-grub2はupdate-grubへの単なるシンボリックリンクであり、両方ともgrub2設定を更新します(grub2がデフォルトであるため)。

update-grubコマンドが見つかりませんか? その場合の対処方法は次のとおりです。

あなたのLinuxディストリビューションにupdate-grubコマンドが利用できない可能性があります。その場合、あなたは何をしますか?

あなたは何をしますか?

このようなLinuxディストリビューションでgrubをどのように更新しますか?パニックになる必要はありません。

パニックになる必要はありません。

pdate-grubコマンドは、単に’grub-mkconfig-o/boot/grub/grubを実行するためのスタブです。cfg’grub2設定ファイルを生成します。

つまり、任意のLinuxディストリビューションで次のコマンドでgrubを更新できることを意味します:もちろん、update-grubコマンドを覚えておくことは、上記のコマンドよりもはるかに簡単であり、これが最初に作成された理由です。

update-grubはどのように機能しますか?

Linuxディストリビューションをインストールすると、(通常は)grubブートローダーのインストールを求められます。

grubの一部がMBR/ESPパーティションにインストールされています。 Grubの残りの部分は、Linuxディストリビューションの/boot/grubディレクトリにあります。そのmanページによると、update-grubは/bootディレクトリを調べることで動作します。 Vmlinuz-で始まるすべてのファイルはカーネルとして扱われ、grubメニューエントリを取得します。 また、見つかったカーネルと同じバージョンで見つかったramdiskイメージのinitrd行を追加します。

また、os-proberを使用して他のオペレーティングシステムのすべてのディスクパーティションも調べます。 他のオペレーティングシステムが見つかった場合は、それらをgrubメニューに追加します。P>

Grub画面
Grubメニューの表現イメージ

なぜgrubを更新する必要がありますか?grubを更新する必要がある場合は、いくつかのシナリオがあります。 デフォルトの起動順序を変更するか、デフォルトの起動時間を短縮するために、grub設定ファイル(/etc/default/grub)を変更したとします。 Grubを更新しない限り、変更は有効になりません。

別のシナリオは、同じシステムに複数のLinuxディストリビューションがインストールされている場合です。 たとえば、私のIntel NUCには2つのディスクがあります。 最初のディスクにはUbuntu19.10があり、Ubuntu18.04をインストールしました。 第二のOS(Ubuntuの18。04)また、独自のgrubをインストールし、今grub画面はUbuntuの18.04grubによって制御されます。2番目のディスクに、MX Linuxをインストールしましたが、今回はgrubをインストールしませんでした。 既存のgrub(Ubuntu18.04によって制御される)がすべてのOSエントリを処理するようにします。ここで、このシナリオでは、UBUNTU18.04のgrubを更新して、MX Linuxを表示できるようにする必要があります。上の画像でわかるように、grubを更新すると、18にインストールされているさまざまなLinuxカーネルが見つかります。04別のパーティション上のUbuntu19.10とMX Linuxと一緒に。MX Linuxでgrubを制御したい場合は、grub-installコマンドを使用してMX Linuxにgrubをインストールすると、MX Linuxのgrubがgrub画面の制御を開始します。 あなたは要点を得ますよね?

Grub CustomizerのようなGUIツールを使用すると、grubに変更を加える簡単な方法です。最後に…

最初は、私はそれを簡単なヒントとして短い記事に保つことを意図していました。 しかし、(比較的)新しいLinuxユーザーが単純なコマンド以上のことを学ぶことができるように、それに関連するいくつかのことを説明することを考えました。