在Linux系统中,Grubby是一个强大的命令行工具,用于管理和更新GRUB2引导加载程序的配置。通过Grubby,系统管理员可以方便地更改默认启动内核,这对于解决新内核与现有应用程序的兼容性问题尤为重要。
首先,我们需要确认系统中已安装的内核版本。使用以下命令可以列出所有已安装的内核:
grubby --info=ALL | egrep -i 'index|title'
此命令会显示每个内核的索引号(index)和标题(title)。索引号从0开始,最新安装的内核通常为0,而较旧的内核则依序递增。
接下来,为了将特定内核设置为默认启动项,我们需要知道该内核的索引号或完整路径。假设我们要将索引号为1的内核设置为默认,可以使用以下命令:
sudo grubby --set-default=index 1
或者,如果你知道内核的确切路径,
例如
/boot/vmlinuz-4.18.0-425.19.2.el8_7.x86_64,则可以使用:
sudo grubby --set-default="/boot/vmlinuz-4.18.0-425.19.2.el8_7.x86_64"
例如,假设我们想要将标题为“Fedora Linux, 5.15.18-301.fc35.x86_64”的内核设置为默认启动项。首先,我们需要找到该内核的索引号或路径。使用以下命令列出所有内核信息:
grubby --info=ALL | egrep -i 'index|title'
假设此命令输出的结果中,该内核的索引号为2,那么我们可以使用以下命令将其设置为默认:
sudo grubby --set-default=index 2
如果我们知道了该内核的确切路径,比如说
/boot/vmlinuz-5.15.18-301.fc35.x86_64,那么可以使用:
sudo grubby --set-default="/boot/vmlinuz-5.15.18-301.fc35.x86_64"
设置完成后,为了确保更改生效,需要重新生成GRUB配置文件:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
完成上述步骤后,系统在下次启动时将默认使用指定的内核。如果需要确认默认内核是否已正确设置,可以使用以下命令:
grubby --default-kernel
此命令将显示当前设置为默认启动的内核。
通过Grubby工具,系统管理员可以灵活地管理Linux系统的启动配置,确保系统稳定运行且兼容各种应用程序。




