• home
  • about
  • 全ての投稿
  • ソフトウェア・ハードウェアの設定のまとめ
  • 分析関連のまとめ
  • ヘルスケア関連のまとめ
  • 生涯学習関連のまとめ

grub

date: 2021-11-28 excerpt: grubについて

tag: linuxbootloadergrub


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の例

参考

  • GRUB


linuxbootloadergrub Share Tweet