检查您的 Linux 内核版本。 您可能会发现您的系统使用的内核版本已经达到 Linux Kernel 网站上列出的生命周期结束 (EOL)。
生命周期结束意味着软件将不再获得错误修复和支持。
这提出了一些有效的问题。 为什么我的 Linux 发行版使用已报废的内核? 这不是安全风险吗? 我的系统安全吗?
让我在这篇文章中解释所有这些问题。
概括
上游内核支持和你的发行版的内核支持是两个不同的东西。
例如,Linux 内核 4.15 可能已经结束生命(根据官方 Linux 内核网站),但 Ubuntu 18.04 LTS 版本将使用它并通过向后移植安全补丁和错误修复将其维护到 2023 年 4 月。
检查 Linux 内核版本并查找其生命周期结束状态
让我们首先检查您系统上的 Linux 内核版本:
uname -r
我在这里使用的是 Ubuntu 18.04,它显示的 Linux 内核版本如下:
[email protected]:~$ uname -r 5.0.0-37-generic
现在,您可以访问 Linux 内核官方网站,查看仍然支持哪些 Linux 内核。 它显示在主页本身上。
您应该看到如下状态:
如果您在内核网站的主页上没有看到某个内核版本,则表示该特定版本已结束生命周期。
如您所见,此处未列出内核 5.0。 这表明不再支持此内核版本。 其实它 2019 年 6 月达到使用寿命.
不幸的是,Linux 内核的生命周期并不遵循固定的模式。 这不像常规内核稳定版本将支持 X 个月,而长期支持 (LTS) 内核将支持 Y 年。
根据需求和要求,可能会有多个具有不同 EOL 的 LTS 内核版本。 您可以在以下位置找到它们及其预计的 EOL 这一页.
现在来了一个大问题。 如果 Linux 内核网站显示它已经到了生命的尽头,为什么 Ubuntu 提供内核 5.0?
您的发行版使用 EOL Linux 内核,但没关系!
你有没有想过为什么 Ubuntu/Debian/Fedora 等被称为Linux发行版? 这是因为他们“分发”了 Linux 内核。
他们对 Linux 内核进行了自己的修改,添加了 GUI 元素(桌面环境、显示服务器等)和软件,并将其提供给用户。
在典型的工作流程中,Linux 发行版会选择一个内核来提供给它的用户。 然后,即使在内核寿命结束后,它也会保留这个内核数月或数年。
那怎么安全呢? 这是因为 发行版通过向后移植其内核的所有重要修复来维护内核.
换句话说,你的 Linux 发行版确保你的 Linux 内核得到了很好的修补,并且有所有的错误修复和重要的新特性向后移植到它。 在“旧的过时的 Linux 内核”之上将会有数以千计的变化。
当 Linux 内核网站说某个内核版本已达到 EOL 时,这意味着核心 Linux 内核维护者将不再更新/修补该内核版本。
但与此同时,Debian/Ubuntu 或其他发行版的开发人员通过将新内核版本(由核心内核团队维护)的相关更改带到您的发行版的旧内核来保持相同的旧版本存活。
底线是,即使您的发行版看起来使用的是过时的 Linux 内核,它实际上也得到了很好的维护,并没有真正过时。
你应该使用最新的稳定内核版本吗?
每 2-3 个月发布一个新的稳定 Linux 内核版本。 这让许多用户想知道谁可以得到这个闪亮的新东西。
坦率地说,除非您有充分的理由,否则您不应该这样做。 您的发行版不会提供给您。 你不能只使用 ‘sudo apt-me-the-latest-stable-kernel’。
现在,手动 安装主线 Linux 内核版本 本身可能是一个挑战。 即使您设法安装它,现在也由您来确保每次修复错误时更新此内核。 当这个新内核达到使用寿命时,您有责任升级到较新的内核版本。 它不会像常规的 Ubuntu 更新那样通过 apt upgrade 来处理。
您还应该记住,如果您切换到主线内核,您的发行版也有可能无法使用的驱动程序和补丁。
作为 格雷格·克罗-哈特曼 说,“您可以使用的最好的内核是其他人支持的内核“。 谁能比你的 Linux 发行版更擅长这项工作!
我希望你对这个话题有更好的理解,下次当你发现你的系统使用的内核版本已经结束时,你不会惊慌失措。
我欢迎您提出问题和建议。 请随时使用评论部分。