为什么openSUSE和CentOS都不用长期支持的内核

刚刚试用了CentOS8,发现最新的CentOS的内核是4.18。我就觉得特别有意思,openSUSE leep 15.1的内核是4.12,然后CentOS是4.18,都不是长期支持的内核版本。这是怎么一回事呢?

emmm,这个问题你好像已经问过一次了……
leap 15的内核竟然是4.12.14!

我的那个帖子主要想问的是为什么用那么老的内核,而且那个内核已经EOL,这个帖子我主要想问的是,为什么不用长期支持版本的。
而且官方的回答也让人不满意。既然知道适配一个内核要话费很大的精力,选好了,就不好改。但是为什么不在一开始选择的时候就选择长期支持的版本呢?
难道说SUSE/Redhat官方故意不使用长期支持的版本的内核,就是为了排除kernel开发的干扰吗,kernel你开发你的,我自己找个你已经放弃的自己愿意咋改就咋改?

SUSE和Redhat都是这样做的,我觉得原因真的不像SUSE官方说的那么简单。

LTS 内核未必刚好赶上发布周期,15.0那个时候去用最新的 LTS 4.14应该是赶不上测试周期的。

CentOS, openSUSE Leap其都源与相对的企业版本(RHEL, SLE),这些版本都是要维护很长时间

以RHEL为例,RHEL从GA版本开始有7年的生命周期,按照今年上半年的内核更新速度,那么7年后的内核会有相当大的变化,但是比如Kernel 4.17 LTS仅支持至2023年

也许RedHat和SUSE可以跟的上对应的速度发布相对应的内核/系统软件升级,但是其他提供商呢?一套企业级软件编写所耗费的人力物力相当可观,不可能因为内核升级就频频重写。因为内核可能会因为添加/删除/修复而使得接口有所变更,这就加大了软硬件供应商的成本,这些成本提高了,同时对于客户也是一种负担,这个负担,从表面上来看可能是金钱,而其内部可能就是因为软硬件厂商无法跟上速度而导致的各种生产环境的隐患

以VMware为例,VMware Workstation至今无法在5.x内核上由其本身自动编译vmnet等组件,只能依靠外部补丁再每次升级后手动编译相应组件。如果这是在生产环境中,这就可能会导致经济损失,这个损失的源头就是高版本的内核使得客户端软件无法正常使用,所以对于企业级Linux来说稳定是最重要的。

在这个稳定的过程中企业要联合供应商进行各种各样的测试,这些测试要使用相当大的人力物力以及时间,据传RH需要耗费一年的时间去稳定选中的内核,去测试,去做backport,去修复在发布之前的主线版本中所暴露出来的问题,在这段时间里有约300人去干这件事情,如果要求企业跟上主线的内核更新速度,这显然是不可能的,因为这是时间+精力+金钱的问题而不是纯粹靠人就可以完成的。

就是这么简单

2赞

我想我明白你的意思了,谢谢你的认真回答!

本主题在最后一个回复创建后60分钟后自动锁定。不再允许添加新回复。