grubについて
概要
- linuxのブートローダー
/etc/default/grub
の設定と反映
- 最初の起動エントリの変更や、起動時のパラメータの変更を行う
GRUB_DEFAULT
でデフォルトの起動エントリを指定0>1
で0番目のエントリを選択し、次に1番目のエントリを選択する"Advanced options for Debian GNU/Linux>Debian GNU/Linux, with Linux 5.10.0-5-amd64"
のようなエントリ名を指定することも可能
grub2の設定の確認
# less /etc/default/grub
GRUB_DEFAULT=0 # デフォルトで起動するエントリ番号
GRUB_TIMEOUT=5 # 標準のタイムアウト
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX=""
grub2で設定を変更して反映する
grubファイルを編集する
# vi /etc/default/grub
編集したファイルを反映
# update-grub
再起動して反映したパラメータの確認
$ cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-5.11.0-22-generic root=UUID=a29cc0ad-4ce9-49d0-911a-41afa6818fc8 ro quiet splash mitigations=off iommu=pt intel_iommu=on amd_iommu=on vt.handoff=7
grub shellの使用例
特定のカーネルを指定して起動
grub> linux /boot/vmlinuz-5.11.0-41-generic systemd.unit=rescue.target
systemd.unit=<target-name.target>
で特定のモードで起動する
シングルユーザモードで起動
grub> linux /boot/vmlinuz-5.11.0-41-generic s
または
grub> linux /boot/vmlinuz-5.11.0-41-generic single
bashだけで起動
grub> linux /boot/vmlinuz-5.11.0-41-generic init=/bin/bash
kernelから表示される情報を抑制して起動
grub> linux /boot/vmlinuz-5.11.0-41-generic quiet
起動プションの確認
$ less /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-5.11.0-22-generic root=UUID=a29cc0ad-4ce9-49d0-911a-41afa6818fc8 ro quiet splash mitigations=off iommu=pt intel_iommu=on amd_iommu=on vt.handoff=7
grub-installの使用例
MBR,UEFIで特定のデバイスにインストールする
# grub-install /dev/<device>
- MBRでは
/boot/grub/grub.cfg
- UEFIでは
/boot/efi/EFI/<id>/grub.cfg
バージョンの確認
# grub-install -V
grub-install (GRUB) 2.04-20 # debianの例