Howto Grubby

커널 파라미터를 변경해서 부팅을 하려면 grub2 설정을 변경해서 전달할 필요가 있습니다. 이를 위한 도구가 grubby 이며 이툴을 통해서 grub.cfg를 변경할 수 있습니다. 수동 변경을 해도 실패 확율이 높기 때문에 가급적 설정파일을 직접 고치기 보다 grubby 툴을 사용하기를 권장 드립니다.

전체 부트 파라미터 수정/삭제 하기

grubby --update-kernel=ALL --args="<NEW_PARAMETER>"
grubby --update-kernel=ALL --remove-args="<PARAMETER_TO_REMOVE>"

현재 부팅 커널의 파라미터 수정하기

grubby --update-kernel=/boot/vmlinuz-$(uname -r) --args="<NEW_PARAMETER>"

현재 부팅 커널의 파라미터 삭제하기

grubby --update-kernel=/boot/vmlinuz-$(uname -r) --remove-args="<PARAMETER_TO_REMOVE>"

모든 커널 버전의 정보 확인하기

grubby --info=ALL

특정 커널 부팅 정보 확인하기

# grubby --info /boot/vmlinuz-5.14.0-284.25.1.el9_2.x86_64
index=1
kernel="/boot/vmlinuz-5.14.0-284.25.1.el9_2.x86_64"
args="ro crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=/dev/mapper/rhel-swap rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap rhgb quiet"
root="/dev/mapper/rhel-root"
initrd="/boot/initramfs-5.14.0-284.25.1.el9_2.x86_64.img"
title="NAver Cloud Enterprise Linux (5.14.0-284.25.1.el9_2.x86_64) 9.1 (Hola)"
id="a41d5a2705524b5eaec5ff253a99bc26-5.14.0-284.25.1.el9_2.x86_64"

grub.cfg 파일 추출하기

grub2-mkconfig -o /boot/grub2/grub.cfg
grubby --update-kernel /path/to/kernel --args "new args"

9.x 버전은 BLS (Boot loader Specification) 을 사용하기 시작하면서 동적으로 부팅을 하기 때문에 대부분 grub.cfg를 사용하지 않습니다. 하드웨어에 따라서 UEFI 를 사용하기 힘들거나, BLS를 사용하기 힘든 경우 grub.cfg 생성하고, /etc/default/grub 파일의 GRUB_CMDLINE_LINUX 변수 변경으로 grub.cfg 를 사용하게 변경할 수 있습니다.

cat /etc/machine-id
a41d5a2705524b5eaec5ff253a99bc26