Alibaba Cloud Linux 3安装alinux-base-setup-3.2-7.al8后无法启动的解决方案

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

本文介绍了在Alibaba Cloud Linux 3中安装alinux-base-setup-3.2-7.al8组件后,实例无法启动的原因和解决方案,以及如何确保正常运行的实例避免出现该问题。

问题描述

在安装alinux-base-setup-3.2-7.al8组件后,Alibaba Cloud Linux 3的当前实例能够正常使用,如果重启实例则无法启动。通过VNC连接实例观察发现系统卡在了Grub界面。

image

问题原因

alinux-base-setup组件用于管理和配置系统的默认参数,并包含Grub配置。在实例重启时,Grub将被重新加载。然而,由于alinux-base-setup-3.2-7.al8版本组件存在BUG,导致实例重启时Grub配置失效,从而引发实例重启失败。

解决方案

  1. 通过VNC连接实例

  2. 执行以下命令,查看boot分区的设备ID。

    search --no-floppy --file /boot/grub2/grub.cfg
  3. 执行以下命令,使系统成功读取Grub文件。

    <ID>需替换为boot分区的设备ID。

    configfile (<ID>)/boot/grub2/grub.cfg
  4. 待实例启动后,执行以下命令,升级组件至最新版本。

    sudo yum clean all
    sudo yum update -y alinux-base-setup
  5. 重启实例,使配置生效。

    sudo reboot

避免实例无法启动

正常运行的实例,可通过以下步骤以避免受到影响。

  1. 执行以下命令,查看当前系统中alinux-base-setup的版本。

    rpm -q alinux-base-setup
  2. (可选)若alinux-base-setup3.2-7版本,执行以下命令,升级alinux-base-setup版本。

    sudo yum clean all
    sudo yum update -y alinux-base-setup
  3. 重启实例,使配置生效。

    警告

    重启实例将导致您的实例暂停运行,这可能引发业务中断和数据丢失。因此,建议您在执行此操作之前备份关键数据,并选择在非业务高峰期进行。

    sudo reboot