阿里雲已確認Alibaba Cloud Linux 3.8版本的鏡像在升級核心時會有報錯資訊出現,本文將描述該問題的影響及解決方案。
問題現象
在Alibaba Cloud Linux 3.8版本的鏡像中升級核心版本時,會在安裝核心包的同時出現報錯資訊,但對應的核心包可以正常安裝成功,報錯資訊類似如下圖所示。
問題原因
Alibaba Cloud Linux 3.8版本鏡像為支援更多規格的機型,對鏡像的dracut配置新增了額外的核心模組。因新增的部分核心模組已經被built-in整合到核心vmlinuz檔案中,導致後續在安裝核心包的過程中,dracut工具因無法找到對應的核心模組而報錯。但是該報錯不會影響核心軟體包的安裝、升級等。
影響範圍
鏡像ID中日期在20230727~20230925範圍內且版本為如下所示的Alibaba Cloud Linux 3鏡像:
Alibaba Cloud Linux 3.2104 LTS 64位
Alibaba Cloud Linux 3.2104 LTS 64位 快速啟動版
Alibaba Cloud Linux 3.2104 LTS 64位 UEFI版
Alibaba Cloud Linux 3.2104 LTS 64位 ARM版
您可以運行cat /etc/image-id
命令,查詢鏡像ID和鏡像版本,回顯類似如下資訊:
image_name="Alibaba Cloud Linux 3.2104 LTS 64 bit"
image_id="aliyun_3_x64_20G_alibase_20230727.vhd"
release_date="20230728162541"
解決方案
遠程登入Alibaba Cloud Linux 3.8版本鏡像的ECS執行個體。
具體操作,請參見通過密碼或密鑰認證登入Linux執行個體。
運行以下命令,移除核心中重複的核心模組。
x86架構
sudo sed -i "s/virtio_blk//" /etc/dracut.conf.d/virt-drivers.conf
ARM架構
sudo sed -i "s/xen-blkfront xen-netfront//" /etc/dracut.conf.d/virt-drivers.conf
運行以下命令,重新升級核心版本,確認報錯是否解決。
sudo yum install kernel