从 grub2 引导服务器使更改持久化

从 grub2 引导服务器使更改持久化

我尝试将我的服务器切换到与我的托管提供商提供的不同的内核。这应该只是从托管提供商管理页面更新内核的情况,重新启动并使用默认的 CentOS 内核。这在一台服务器上有效,但在另一台服务器上无效。

在损坏的服务器上,它只会启动到 grub2 菜单。我已成功通过运行以下命令再次启动它:

set gfxpayload=text
insmod gzio
insmod ext2
linux16 /boot/vmlinuz-3.10.0-693.5.2.el7.x86_64 root=/dev/sda ro crashker
nel=auto rhgb console=ttyS0,19200n8 net.ifnames=0
initrd16 /boot/initramfs-3.10.0-693.5.2.el7.x86_64.img
boot

我通过查看服务器上的 /boot/grub2/grub.conf 来获取这些内容,该服务器确实没有问题。

执行以下操作后,服务器成功启动,但更改并不持久,如果重新启动,我将返回 grub2 菜单,并且需要再次执行此操作。

我查看了一下,发现有些地方说要运行 update-grub,但我没有该命令。

我还发现尝试以下操作:

grub2-mkconfig -o "$(readlink /etc/grub2.conf)"

这似乎只是打印出脚本并没有执行任何操作。如果我再次重新启动,我将返回到 grub2 菜单。

有谁知道如何解决这个问题吗?

我正在运行CentOS 7并且内核现在已开启3.10.0-693.5.2.el7.x86_64

感谢您的任何帮助,您可以提供。

答案1

我发现我应该跑去grub2-mkconfig -o /boot/grub/grub.cfg保存更改。

相关内容