如何确定内核更新的原因

如何确定内核更新的原因

我有一个托管在 Azure 中的 Ubuntu 20.04 VM,是从当时流行的映像部署的。它运行几个 docker 容器,每天 17:00 关闭,每天早上 06:30 启动。

今天检查时发现虚拟机无法访问。最终发现机器不断自行重启。从 Azure 中的串行日志中,我看到重复的内核恐慌,并且虚拟机自动重新启动。追踪到这个错误:https://bugs.launchpad.net/ubuntu/+source/linux-aws-5.13/+bug/1977919

基本上,Ubuntu 5.13.0-1028.33~20.04.1-azure 5.13.19 中引入了一个更改,该更改很快在 5.13.0-1029 中得到了解决。

不过,我没有做更新。通过检查 Azure 中的更新管理,没有发生任何修补历史记录。从昨天到今天,没有其他人登录到该计算机。

将磁盘连接到不同的虚拟机,并检查内核日志。昨天启动是这样的:

Jun  9 06:08:29 myserver kernel: [    0.000000] Linux version 5.13.0-1025-azure (buildd@lcy02-amd64-007)

今天:

Jun 10 06:07:55 myserver kernel: [    0.000000] Linux version 5.13.0-1028-azure (buildd@lcy02-amd64-109)

在 dpkg.log 中,我昨天启动后就看到了这一点:

2022-06-09 06:33:49 install linux-image-5.13.0-1028-azure:amd64 <none> 5.13.0-1028.33~20.04.1

我如何确定是什么触发了这个?

答案1

/var/log/unattended-upgrades目录存在吗?如果是,请阅读其中的日志。

如果unattended-upgrades已安装该软件包(这可能是大多数基于 Debian 的发行版上的默认设置,除非您选择最小安装),则 systemd 服务apt-daily-upgrade.service(或者/etc/cron.daily/apt如果发行版不使用 systemd)将每天触发自动安全补丁升级。

答案2

如果它对其他人有帮助:在我的 VPS 中,解决方案是dpkg-reconfigure unattended-upgrades,然后在随后出现的对话框中选择“是”。然后我systemctrl restart unattended-upgrades终于看到了一个正确的/var/log/unattended-upgrades/unattended-upgrades.log文件(以前不存在)

相关内容