CentOS 7.x GRUB2の設定変更
CentOS7.xではブートローダがGRUBからGRUB2へ変わった。 それに伴い設定方法も変わっている。
CentOS 6.xでは
GRUBだったCentOS 6.xでは /etc/grub.conf
または /boot/grub/grub.conf
を直接編集。
設定ファイル
設定ファイルの名称が変わり、ファイルの中身も自動生成。
旧来のBIOSの場合
- /etc/grub2.cfg
- /boot/grub2/grub.cfg
UEFIの場合
- /etc/grub2_efi.cfg
- /boot/efi/EFI/centos/grub.cfg (CentOS)
- /boot/efi/EFI/redhat/grub.cfg (RHEL)
自動生成の元になるファイル
- /etc/grub.d
- /etc/default/grub
設定の変更方法
自動生成の元になるファイルを編集し、grub.cfgを生成し直す。
カーネルオプションやタイムアウトの変更
/etc/default/grub
を編集する。
GRUB_TIMEOUT=1 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet" GRUB_DISABLE_RECOVERY="true"
メニューエントリの追加など
ファイルを変更したらgrub.cfgを再生成する
旧来のBIOSの場合
grub2-mkconfig -o /boot/grub2/grub.cfg
UEFIでCentOSの場合
grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
UEFIでRHELの場合
grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
custom.cfg
起動時にcustom.cfg
があれば読み込むように、/etc/grub.d/41_custom
で定義されている。
このファイルを作成してGRUBのコマンドを記述した場合は、grub2-mkconfigを実行する必要はない。
custom.cfg
を作成する場所は、grub.cfg
と同じディレクトリ。
旧来のBIOSなら/boot/grub2/custom.cfg
になる。