Ubuntu 20.04(Focal)内核更新不再归为安全更新的原因及配置恢复方法咨询
嗨,我来帮你捋捋这个问题~
为啥内核更新跑到「其他更新」里去了?
从你贴的apt list --upgradable输出能看到,内核相关的包(比如linux-generic)只来自focal-updates仓库,没挂focal-security的标签。这其实是Ubuntu LTS内核维护的正常变化:
- Canonical现在把LTS内核的安全补丁(包括CVE修复)直接整合到
focal-updates的内核更新包里,不再同步到focal-security仓库。毕竟内核团队会把安全修复和常规功能更新打包在一起,统一通过-updates渠道推送。 - 系统的GUI更新管理器是按仓库类型分类的:
focal-security被默认标记为安全更新源,而focal-updates则归为「其他更新」,所以内核更新就被分到这个类别里了,自然不会触发安全更新的即时通知。
有没有办法改回之前的显示逻辑?
想要让GUI把内核更新识别成安全更新,你可以试试下面几个配置调整:
调整Update Manager的通知规则
创建或编辑/etc/apt/apt.conf.d/99update-notifier文件,添加以下内容:APT::Update::Post-Invoke-Success {"if /usr/lib/update-notifier/apt-check --human-readable 2>&1 | grep -E 'linux-.*security'; then /usr/bin/notify-send 'Critical Kernel Security Update' 'Kernel updates with security fixes are ready to install.'; fi;"};这个脚本会在每次更新检查后,专门检测内核相关的安全更新,并弹出通知提醒你。
提升内核包的优先级,让系统优先识别为安全级
创建/etc/apt/preferences.d/99-linux-security文件,写入:Package: linux-generic linux-image-generic linux-headers-generic linux-libc-dev Pin: release a=focal-updates Pin-Priority: 1001这样可以把这些内核包的优先级调高,配合Update Manager的逻辑,让它把这些更新归为安全更新类别。
检查Update Manager的源配置
确认/etc/update-manager/release-upgrades.d/ubuntu-advantage-upgrades.cfg里的Pockets已经包含updates(你的配置里已经有了),同时/etc/update-manager/release-upgrades里的Prompt=lts保持不变,这能确保系统正确识别LTS版本的更新源。
另外,你也可以手动查内核更新的安全内容:用apt changelog linux-generic命令就能看到每次更新包含的CVE修复清单,不用担心错过关键补丁哦~
备注:内容来源于stack exchange,提问作者Aktendulli

