谷歌延长内核支持期限至年,以确保安卓设备安全性
IT之家7月8日消息,和其他许多操作系统一样,安卓也使用开源的Linux内核。Linux内核有多种发布版本,但对安卓最重要的是长期支持(LTS)版本,因为LTS版本会定期更新重要错误修复和安全补丁。2017年,LinuxLTS版本的支持期限从两年延长到六年,但这一延长政策在去年初被取消了。不过,现在谷歌宣布了一个好消息:他们将自己为LTS内核提供长达四年的支持
。这对于保障安卓设备安全至关重要。
图源Pexels
据AndroidAuthority报道,安卓设备使用的Linux内核大多源自谷歌的Android通用内核(ACK)分支,这些ACK分支是在上游发布新的LTS版本时从安卓主线内核分支创建的。例如,当内核版本6.6被宣布为最新的LTS版本后,不久就会出现android15-6.6的ACK分支,名称中的“android15”指代了该内核对应的安卓版本(在本例中是安卓15)。
谷歌维护自己的一套LTS内核分支主要有三方面的原因
。首先,谷歌可以将上游尚未发布的功能通过反向移植或挑选的方式集成到ACK分支中,从而满足安卓特定的需求。其次,谷歌可以在ACK分支中提前加入一些正在上游开发中的功能,使其尽早用于安卓设备。最后,谷歌还可以加入一些供应商或原始设备制造商(OEM)的功能,供其他安卓合作伙伴使用。
创建完成后,谷歌会继续更新ACK分支,不仅包含针对安卓特定代码的漏洞修复,还会集成上游内核分支的LTS合并内容。例如,2024年7月的安卓安全公告中披露的Linux内核漏洞,就会通过这些更新得到修复。
然而,区分漏洞修复和其他bug修复并非易事,因为修复bug的补丁程序也可能意外堵塞了提交者不知道或选择不披露的安全漏洞。谷歌会尽力识别这种情况,但难免有遗漏,导致上游Linux内核的漏洞修复早于安卓设备几个月发布。因此,谷歌一直敦促安卓厂商定期更新LTS内核,以免因意外披露的安全漏洞而措手不及。
显然,Linux内核LTS版本对于安卓设备的安全至关重要
,它能帮助谷歌和厂商应对已知和未知的安全漏洞。支持期限越长,谷歌和厂商就越能及时为设备提供安全更新。
遗憾的是,虽然延长支持期限对谷歌和厂商有利,但却给许多为Linux内核贡献的开发者和维护人员带来了巨大压力,其中许多人都是无偿的志愿者。此外,除去安卓和嵌入式设备,运行老旧Linux版本的设备数量也并不多。
出于以上原因,谷歌延长内核支持期限至年,以确保安卓设备安全性Linux维护者决定不再为LTS内核提供长达六年的支持,而是将期限缩短回两年。这一消息于2023年初公布,让许多观察人士担心安卓生态会受到怎样的影响。一些人认为这会迫使厂商开始进行重大内核版本升级以保持最新,另一些人则认为谷歌或芯片厂商会自行延长LTS支持。
谷歌做出了后一种选择。在ACK的开发者页面上,谷歌写道:“从内核6.6开始,稳定内核的支持期限为4年。”之前的一句话也提到,“ACK的支持期限可能会长于kernel.org上对应的上游稳定内核。在这种情况下,谷歌会提供延长的支持,直到本节所述的终止支持(EOL)日期为止。”内核到达EOL日期后,不仅会停止谷歌的官方支持,更重要的是,“运行该内核的设备将被视为存在安全漏洞”。
以前长达六年的LinuxLTS生命周期允许安卓厂商在内核生命周期的第一年、第二年甚至第三年发布设备,仍然可以享受几年的上游支持。
然而,由于谷歌现在只为新的ACK分支提供四年支持,厂商就无法再这么做了。因此,从安卓15开始,设备只能搭载android14-6.1或android15-6.6这两个最新的内核版本。其中前者会支持到2029年7月,后者会支持到2028年7月,这意味着今年发布的设备即使使用这些内核版本,也能在未来三到五年内获得支持。
展望未来,谷歌表示将只为每个内核版本提供一个新的ACK分支,这也是为什么没有推出android15-6.1分支的原因。这在一定程度上简化了流程,但最终,如果厂商想要承诺更长久的手机更新策略,就需要开始进行重大内核版本升级了。