3

“维护者都快累死了!”Linux 宣布:LTS 版本的维护期,将从 6 年变回 2 年

 11 months ago
source link: https://blog.csdn.net/csdnnews/article/details/133327043
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

“维护者都快累死了!”Linux 宣布:LTS 版本的维护期,将从 6 年变回 2 年

CSDN资讯 于 2023-09-26 09:12:54 发布 1559
cfdfc54c347684a20cae31998a8753bd.gif

整理 | 郑丽媛

出品 | CSDN(ID:CSDNnews)

在本周举行的欧洲开源峰会上,Linux 内核开发者兼《Linux 每周新闻(Linux Weekly News)》执行主编 Jonathan Corbet 宣布了一个重大变化:

Linux 内核的长期支持(LTS)版本,维护期将从六年变回两年。

对此,Corbet 给出的理由是:缺乏使用 & 缺乏支持。

14168138ea049d20aa2eb2d6f4406857.jpeg
7b2a99ed1a6c5216e0e55d3fcc8c36a3.png

2017 年之前,LTS 版本的维护期就是两年

为什么说是“变回”?因为在 2017 年之前,Linux 内核 LTS 版本的维护期就是两年。

具体来说,Linux 内核 LTS 版本 (Long Term Support,简称 LTS)是相对稳定和可靠的版本,能够提供长期的维护和升级,因此多数企业和用户都会优先选择使用 LTS 版本。

在 2017 年之前,Linux LTS 内核基本上每两年发布一次,并会在发布之后的两年内提供安全和错误修复——但六年前,也就是在 2017 年 9 月的 Linaro Connect 大会上,谷歌高级工程师 Iliyan Malchev 宣布:Linux 内核团队已同意将 LTS 的维护期从两年延长到六年。

“所有的 Android 设备都是基于 Linux LTS 内核的,LTS 以前的维护期只有两年,如果幸运的话,你可能会赶上一年的 LTS 支持,但如果不快速支持的话,它可能就结束了。好在,Greg Kroah-Hartman( Linux 基金会 LTS 内核维护者)已经同意延长 LTS 的支持周期到六年了。”

这是首次 Linux LTS 内核的生命周期发生延长,为此当时各大技术网站都有相关报道,而 Linux 基金会 IT 基础架构安全总监 Konstantin Ryabitsev 也对此进一步说明:这一改变从 Linux Kernel 4.4 开始实施,且并不意味着未来所有的 Linux LTS 版本都将有六年的支持期限。

现在六年过去了,截至目前共有 6 个支持期限为六年的 Linux LTS 内核,分别是:6.1、5.15、5.10、5.4、4.19 和 4.14 版本。

而此次 Corbet 宣布 LTS 版本的支持期限再次变回两年,也进行了相关补充:支持周期缩减至两年的计划,针对的是之后的新内核版本,Linux 社区仍将遵守当前的生命周期结束时间表,即 Linux 6.1、5.15、5.10、5.4、4.19 和 4.14 版本的支持周期依旧是六年,具体到期时间如下:

ac5d1e490bc86d83327bb8dbe2ab14c5.png
5a2708479702326b4da08926b6193c58.png

Linux 代码维护者们早已疲惫不堪

在解释 LTS 版本支持周期缩短的原因时,Corbet 直白表示:“因为人们不使用它们,所以维护(旧内核)那么长时间真的没有意义。”

正如 Corbet 所说,以 Linux 4.14 版本为例:该版本的维护期是六年,将于明年 1 月份到期——可在能选择更多新版本 Linux LTS 内核的情况下,目前还有在使用 Linux 4.14 的人吗?肯定有,但应该不会有很多。

除了旧版本 Linux LTS 内核的使用人数不多,Corbet 表示还有一个更大的问题,那就是:Linux 代码维护者们早已疲惫不堪了。

据了解在过去的几个 Linux 版本中,平均每个版本都有 2000 多名程序员参与,其中包括约 200 名新加入的开发人员——看起来人数不少?但是内核维护者,也就是那些检查代码是否合适、工作是否正常的人,却完全是另一回事。

通常来说,Linux 内核维护者在维护工作中会遇到许多障碍:

  • 障碍一:许多维护者的维护工作没有报酬,因此需要在日常工作之外维护代码;

  • 障碍二:他们面临着越来越多的时间要求,因为人手不足,也因为用模糊测试来找 Bug。虽然模糊测试很有帮助,但也会发现太多的小 Bug,而维护者必须对每个小 Bug 进行检查并修复。

  • 障碍三:Linux 目前正在尝试使用 Rust 语言。虽然 Rust 消除了 Linux 的主语言 C 容易出现的错误,也给维护者带来了问题——如果一个维护者已经在 C 语言上工作了 30 年,那么要求他们再次成为 Rust 专家是一个很大的要求。

这些障碍导致了怎样的结果呢?Linux 内核文件系统开发者和维护者 Josef Bacik 一句话总结:“维护者都快累死了,(因为)维护者不会扩展。”另一位资深 Linux 内核维护者 Darrick Wong 也补充道:“这种情况不能再继续下去了,我们需要帮助。”

cfd5a16499bb8f6edaa8fa7190e3f1dd.png

新内核的维护期为两年,但可根据情况再延长

基于这些难点,Corbet 宣布 Linux LTS 内核的生命周期将从六年缩短至两年。此外,他还建议维护者可以与其雇主商量,为他们的 Linux 维护工作支付报酬——许多公司必须意识到,如果他们想继续从 Linux 中获益,就必须回馈 Linux。

Darrick Wong 研究了许多同是 Linux 内核维护者的朋友,发现多数都在小公司、非营利组织和地方政府工作,并且与他遇到了一样的情况:普遍工作过度、时常会有恐惧和愤怒的情绪,以及难以理解和适应新思想。“我们不明白,为什么会遇到这种情况,而我们的工作却服务于那些收入高达数千亿美元的公司?”

至于不适应 Rust 语言的 Linux 内核维护者,Corbet 只是表示:决定 Rust 是否将成为 Linux 内核主流语言的关键点即将到来——Linux 内核代码中将新增三个基于 Rust 的重要组件,分别是 PuzzleFS 的一个实现,一个读/写 Plan9 文件系统服务器,以及最引人注目的苹果 M1 GPU 驱动程序。

虽然名义上来看,Linux LTS 内核的生命周期将从六年减少至两年,但正如 2017 年从两年变成六年时的情况一样,未来的新内核版本并非绝对只有两年的维护期:“预计每个新 LTS 内核的维护期只有两年,但如果整个行业有足够的兴趣来帮助支持它更长的时间,那其生命周期就可以被进一步延长。”

ae18f0a9c6c93eb37f89f8759b26e470.png

对 Android 的影响可能颇大?

虽然没有明说,但 2017 年提出延长 Linux LTS 内核维护期的是谷歌,此次 Linux 的这一变化也令不少人开始担忧谷歌的 Android。

在 PC 上,两年只代表内核更新之间的时间间隔,所以影响可能不太大;但嵌入式设备往往不会更新内核,“两年”代表了大部分的开发周期和对消费者的整个支持周期——显然,两年的时间绝对不够。

根据谷歌在 2017 年描绘的最初图景,手机需要两年的时间才能开发出来,而内核更是在开始阶段就被锁定了:首先,谷歌从一个新的 Linux LTS 中分叉出“Android Common”内核,然后将其发送给高通等 SoC 供应商,并针对每种型号的 SoC 进行分叉,然后将分叉结果发送给设备制造商,后者再针对每种型号的设备进行分叉。这一整个流程完整走下来,就需要花费不少时间了。

举个例子,Linux 于 2017 年 11 月发布了 4.14 版内核,而首批使用 4.14 版内核的 Android 手机于 2019 年春季才发布。另外,谷歌即将发布的 Android 14 也基于 Linux 5.4,这是一个发布于 4 年前且生命周期是 6 年的内核版本,但 Android 14 正式发布后,其内核对于消费者来说也只有两年的维护期了。

为了解决上游内核发布与产品发布之间的这种长时间延迟,谷歌推出了通用内核映像(GKI),即通过统一核心内核并将 SoC 和板级支持从核心内核移至可加载模块中,为内核模块提供稳定的内核模块接口(KMI),使模块和内核可以独立进行更新。

但即使是用了通用内核映像(GKI),也只能同步一些小的 LTS 安全更新,也并不能进行重大的内核更新:例如第一款采用了 GKI 的手机 Pixel 6 就基于 Linux 5.10,现在依旧是 Linux 5.10(这是一个发布于 3 年前的内核)。

这也就意味着,变成两年维护期的 Linux LTS 内核,很可能会导致 Android 手机最终发货时,其 LTS 内核的维护期恰好结束,消费者只能在设备的生命周期内使用过时的内核。

因此对于 Linux 的这一重大变化,诸多开发者和网友都十分关注:

  • “难道就没有人想过那些价值万亿美元的公司,它们为这个对其整个业务起着承重作用的内核支付了 0 美元吗?”

  • “也许像谷歌这样的公司可以在这一领域提供更多支持,因为这有助于他们解决目前面临的问题:销售已经过时的产品。”

  • “这与识别和反向移植安全修复程序的工作并不相同。如果供应商有 6 年 LTS 的业务需求,那他们就可以为这项工作付费啊。”

那么对于这个变化,你又有什么想法吗?

参考链接:

https://arstechnica.com/gadgets/2023/09/linux-gives-up-on-6-year-lts-thats-fine-for-pcs-bad-for-android/

https://www.zdnet.com/article/want-an-elegant-user-friendly-windows-alternative-try-manjaro-23-0-with-kde-plasma/

推荐阅读:

▶做瑜伽、分类物品,特斯拉“擎天柱”人形机器人再进化,Get 新技能!

▶【专属福利】全球云原生技术顶会即将开幕!

▶中国首个接入大模型的 Linux 操作系统来了

7410f25d6e14294aaa32c81da04467b5.jpeg

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK