CentOS(Community Enterprise Operating System 简称)称为社区企业操作系统,是 Linux 操作系统的一个发行版本。
CentOS 并不是全新的 Linux 发行版,在 Red Hat 家族中有企业版的产品,也就是 Red Hat Enterprise Linux (简称 RHEL),CentOS 正是它的克隆版本。RHEL 是很多企业采用的 Linux 发行版本,需要向 Red Hat 付费才可以使用,并能得到付过费用的服务和技术支持和版本升级。CentOS 可以像 RHEL 一样的构筑 Linux 系统环境,但不需要向 Red Hat 付任何的产品和服务费用,同时也得不到任何有偿技术支持和升级服务。
Red Hat 公司的产品中,有 Red Hat Linux(如 Redhat 8、9)和针对企业发行的版本 Red Hat Enterprise Linux,都能够通过网络 FTP 免费的获得并使用,但是在 2003 年的时候,Red Hat Linux 停止了发布,它的项目由 Fedora Project 这个项目所取代,并以 Fedora Core 这个名字发行并提供给普通用户免费使用。Fedora Core 这个 Linux 发行版更新很快,大约半年左右就有新的版本发布。目前的版本是 Fedora Core 6,这个 Fedora Core 试验的韵味比较浓厚,每次发行都有新的功能被加入到其中,得到的成功结果将被采用道 RHEL 的发布中。虽说这样,频繁的被改进更新的不安定产品对于企业来说并不是最好的选择,大多数企业还是会选择有偿的 RHEL 产品(这里面有很深的含义,比如说企业用 Linux 赚钱,赚到的钱回报给企业,资金在企业间流通,回报社会,提高服务水准等)。
在构成 RHEL 的大多数软件包中,都是基于 GPL 协议发布的,也就是我们常说的开源软件。正因为是这样,Red Hat 公司也遵循这个协议,将构成 RHEL 的软件包公开发布,只要是遵循 GPL 协议,任何人都可以在原有的软件构成的基础上再开发和发布。CentOS 就是这样在 RHEL 发布的基础上将 RHEL 的构成克隆再现的一个 Linux 发行版本。RHEL 的克隆版本不只 CentOS 一个,还有 White Box Enterprise Linux 和 TAO Linux 和 Scientific Linux(其他的这些都没听说过,是吧?)。
虽然说是 RHEL 的克隆,但并不是一模一样,所说的克隆是具有 100% 的互换性(真的么?)。但并不保障对应 RHEL 的软件在 CentOS 上面也能够 100% 的正常工作。并且安全漏洞的修正和软件包的升级对应 RHEL 的有偿服务和技术支持来说,数日数星期数个月的延迟情况也有(其实也没看出来多慢)。
CentOS 的特点
在 CentOS 的全称里面我们可以看到 Enterprise OS,也就是说企业系统,这个企业系统并不是企业级别的系统,而是它可以提供企业级应用所需要的要素。 例如: 稳定的环境 、长期的升级更新支持、保守性强、大规模的系统也能够发挥很好的性能等。
CentOS 满足以上的要素,满足上面要素的发行版还有 Fedora 。Fedora 和 CentOS 非常的相像,但是对 CentOS 来说,Fedora 提供更多的新的功能和软件,发布更新快等特点,这样在稳定性和管理方面就增加了很多工作。企业所需要的系统环境应该是,高效稳定的系统环境,一次构建后能够长期使用的系统环境,所以 Fedora 那样的频繁更新发布的系统环境并不对应企业的应用。另一方面, CentOS 却能够满足以上企业的需要,在众多的 RHEL 的克隆版本中,CentOS 是很出众很优秀的。
CentOS 与 RHEL 的区别
其实为什么有 CentOS? CentOS 与 RHEL 有什么关系?
RHEL 在发行的时候,有两种方式。一种是二进制的发行方式,另外一种是源代码的发行方式。 无论是哪一种发行方式,你都可以免费获得(例如从网上下载),并再次发布。但如果你使用了他们的在线升级(包括补丁)或咨询服务,就必须要付费。
RHEL 一直都提供源代码的发行方式,CentOS 就是将 RHEL 发行的源代码重新编译一次,形成一个可使用的二进制版本。由于 Linux 的源代码是 GNU,所以从获得 RHEL 的源代码到编译成新的二进制,都是合法。只是 RedHat 是商标,所以必须在新的发行版里将 RedHat 的商标去掉。
RedHat 对这种发行版的态度是:“我们其实并不反对这种发行版,真正向我们付费的用户,他们重视的并不是系统本身,而是我们所提供的商业服务。”
所以,CentOS 可以得到 RHEL 的所有功能,甚至是更好的软件。但 CentOS 并不向用户提供商业支持,当然也不负上任何商业责任。
我(或者说公司)正逐步将 RHEL 转到 CentOS 上,因为不希望为 RHEL 升级而付费。当然,也是因为有多年的 UNIX 使用经验,因此 RHEL 的商业技术支持从某些方面来说并不重要。
但如果你是单纯的业务型企业,那么还是建议选购 RHEL 软件并购买相应服务。这样可以节省的 IT 管理费用,并可得到专业服务。
一句话,选用 CentOS 还是 RHEL,取决于所在公司是否拥有相应的技术力量。