最近几天我很想改变我使用多年的发行版,Debian。由于稳定性对我来说非常重要,而且我对前沿功能不感兴趣,因此我决定尝试一下 RHEL。考虑到它不是免费的并且了解 CentOS,我决定对这个问题进行进一步的调查。
在搜索时,我发现了一个有趣的用户评论克里斯托弗在这个问题,其中包含以下内容(除其他外):
“是的......重新编译源代码。但是,只有 Red Hat 拥有正确编译它们的“秘密武器”。CentOS 6 在与 RHEL 6 的二进制兼容性方面有 85% 的不同。”
这进一步加深了我最初的疑问“Red Hat 在他们的操作系统上投入了大量资金。它能与 CentOS 相似吗?他们能做些什么来让事情变得更加“闭源”吗?”
还有实际问题:
CentOS被认为与RHEL二进制兼容,但与“真实的东西”有什么区别?是否可以通过使用不同的编译配置来生成完全不同的操作系统?
答案1
Redhat 在他们的操作系统上投入了大量资金。 [...] 他们能做些什么来让事情变得更加“闭源”吗? ”
不知道你为什么这么说(好像闭源是一件好事)。 RH 确实比任何其他发行版公司开发了更多的 FOSS,但他们远非唯一一家,并且整个社区都大量参与。所以,是的,RH“失去”了他们的工作,但他们也获得了其他人在同一组限制下贡献的工作。
CentOS 被认为与 RHEL 二进制兼容
或多或少,是的。我从未见过为 RHEL 设计的东西在 CentOS 上失败。您通常会购买 RHEL 订阅以获得支持,因为更新推送到 RHEL 的时间比推送到 CentOS 的时间要早得多。
是否可以通过使用不同的编译选项来生成完全不同的操作系统?
编译时决策可能存在很多变化,但我认为 RH 的“秘密武器”不会那么神奇。真正区分发行版的很大一部分正是这一点(以及一些包选择和包发布管理)。
答案2
据我了解,CentOS 只是用于 RHEL 的相同源代码的另一个版本,它是开源的(这在 CentOS 常见问题解答中也有说明)。
使用不同的编译选项不应对操作系统的行为产生太大影响。
两者之间最大的区别在于新版本发布的速度。因为 CentOS 本质上是 RHEL 的一个分支,所以它们发布更新的速度总是较慢(因为必须先更新 RHEL,然后 CentOS 才能对更改进行分支)。根据他们的常见问题解答,CentOS 致力于在 RHEL 更新后 72 小时内更新软件包,尽管我知道 RHEL 7 发布时距 CentOS 7 发布还有几个月。
您可以深入研究 CentOS 常见问题解答,以更深入地了解这一点(https://wiki.centos.org/FAQ/General)并在 SE Unix & Linux + Google 上再次搜索您的问题