LIS 升级后,Linux VM 无法正确启动内核 3.10.0-514.16
11/26/2020
本文内容
本文针对 Linux 集成服务 (LIS) 升级后 Linux VM 无法正确启动内核 3.10.0-514.16 的问题提供了解决方法。
原始产品版本: Microsoft Linux 集成服务;运行 Linux 的 Microsoft Azure 虚拟机
原始 KB 编号: 4022897
症状
如果在使用内核 3.10.0-514.16.1 的 Linux 虚拟机 (VM) 中安装 Linux 集成服务 (LIS) 4.1.3 驱动程序,则虚拟机无法正确重新启动,并且会收到类似下面的错误消息:
depmod: WARNING: /lib/modules/3.10.0-514.16.1.el7.x86_64/weak-updates/microsoft-hyper-v/hv_netvsc.ko 需要未知符号 vmbus_setevent depmod: WARNING: /lib/modules/3.10.0-514.16.1.el7.x86_64/weak-updates/microsoft-hyper-v/hv_sock.ko needs unknown symbol vmbus_send_tl_connect_request depmod: WARNING: /lib/modules/3.10.0-514.16.1.el7.x86_64/weak-updates/microsoft-hyper-v/hv_sock.ko 需要未知符号 vmbus_set_chn_rescind_callback depmod: WARNING: /lib/modules/3.10.0-514.16.1.el7.x86_64/weak-updates/microsoft-hyper-v/hv_sock.ko needs unknown symbol vmbus_hvsock_device_unregister
原因
发生此问题的原因是对 kABI 应用程序中的内核应用程序二进制 (进行了) 。 由于这些更改,在内核 3.10.0-514.16.1 上的 LIS (4.1.3) 升级失败。
解决方法
提示
如果你有 VM 的最新备份,可以尝试从备份还原 VM 以修复启动问题。
我们建议不要升级使用内核 3.10.0-514.16.1 的 VM 上的 LIS 驱动程序 4.1.3。 相反,如果你使用内核 3.10.0-514.16.1,我们建议你安装 LIS 4.2.0 或更高版本。
如果 LIS 版本 4.2.0 或更高版本在 Linux 分发包管理系统中不可用,可以手动下载LIS 4.2.0。
LIS 4.2.0 中的已知问题
安装 LIS 4.2.0 驱动程序时,可能会遇到一个问题,即只能在最新内核中启动 VM。
Microsoft 正在致力于在即将推出的 LIS 更新中解决此问题。
卸载 LIS 4.1.3
如果已安装 LIS 4.1.3,但无法启动 VM,请按照以下步骤删除 LIS 4.1.3(根据设置需要)。
对于具有Hyper-V访问的 Linux 主机
使用媒体在"审核"模式下启动 VM。
在命令提示符下,运行以下命令将根目录更改为系统映像:
chroot /mnt/sysimage
运行以下命令以删除 LIS 包:
packages=($(rpm -qa *microsoft-hyper-v*))
rpm -e ${packages[@]}
对于在 Azure 中运行的 Linux VM
运行以下命令以将根目录更改为系统映像:
chroot /mnt/troubleshootingdisk
运行以下命令以删除 LIS 包:
packages=($(rpm -qa *microsoft-hyper-v*))
rpm -e ${packages[@]}