154

I'm sure this question has been asked again and again elsewhere (I did not find anything specific to CentOS vs RHEL in SE), but I would still like to ask and confirm a few specific points.

I am well aware that CentOS removes all RH trademarks, logos, etc. and is based on the same codes with packages built by the community.

  • Are the packages built for CentOS exactly the same? Will the contents of the packages and the behavior of the programs be identical to those found on RHEL?
  • What is RHN other than a medium for license registration? What is it to CentOS?

I'm an Ubuntu desktop user. Attended a RH299 course which did not really touch anything about the support aspect (i.e. RHN). Other than that I've no professional Linux knowledge or experience.

EDIT

I did read the CentOS 6.2 release notes, but I found the details unsatisfactory. The release notes mentions packages modified, removed or added to upstream. But it neither explains nor links to any document detailing what exactly is different in the modified packages. Granted the branding packages are self-explanatory, but it mentions packages like kernel, ntp, anaconda, etc. which have nothing to do with branding as far as I'm aware.

  • This was just a guess on my side - derived from your question. I deleted that comment. So diff the source? Or rpm -q --changelog on the CentOS-package? Or ask Karanbir directly. – Nils Dec 27 '11 at 21:34
  • A bad guess, since I've mentioned my Linux experience. Who exactly is Karanbir? – Oxwivi Dec 28 '11 at 4:25
  • Karanbir is the guy building and maintaining the x86_64 and i386 line of CentOS. The changelogs of the CentOS-specific packages are full of entries from him. – Nils Dec 28 '11 at 21:38

11 Answers 11

100

CentOS is very close to being RHEL without the branding and support. In particular, the library versions are the same, so binaries that work on one will work on the other. The administration tools are the same and configured in similar ways. However, there are a few differences, as the two distributions sometimes apply different minor patches. For example, in this question, it was apparent that RHEL 5 and CentOS 5 apply different rules to identify files under /etc/cron.d.

In other words, at the level of your course, you can treat CentOS and RHEL as interchangeable. But if you needed to look up the precise behavior of a program in a corner of the man page, you may encounter differences.

  • 2
    Is there anywhere I can find what those differences are? I read the CentOS 6.2 release notes, but other than modified packages (which I think are related to branding) and packages added or missing, no possible discrepancies with upstream is mentioned. – Oxwivi Dec 21 '11 at 17:53
  • And could you explain the RHN matter as well, please? – Oxwivi Dec 21 '11 at 17:55
  • CentOS explicitly aims for complete binary compatibility with RHEL. The only real difference is that they replace the branding-related packages from RHEL and recompile everything else from the sources provided by Red Hat. – vonbrand Jan 23 '13 at 13:37
  • @vonbrand CentOS ships the same library versions (I believe that's what they mean by “complete binary compatibility”). Evidently they do more than rebrand and recompile, some programs are configured differently (e.g. cron). – Gilles 'SO- stop being evil' Jan 23 '13 at 13:41
  • @Gilles, no, it goes further than that. They try to set up a build environment as closely similar to the one used by RHEL to rebuild the sources, and rebuild everything (except for the branding bits). That isn't so easy, as you start using version N to build N + 1, and mix with pieces of the new N + 1 to build the rest. Details aren't exactly published by Red Hat. This has been (part of) the reason for delays in the release of some CentOS major versions. – vonbrand Jan 23 '13 at 14:20
18

This may answer your question. Here's an excerpt from the page.

CentOS is a free operating system distribution based upon the Linux kernel. It is derived entirely from the Red Hat Enterprise Linux (RHEL) distribution. CentOS exists to provide a free enterprise class computing platform and strives to maintain 100% binary compatibility with its upstream source, Red Hat.[2] CentOS stands for Community ENTerprise Operating System. CentOS is the most popular Linux distribution for web servers with almost 30% of all Linux web servers using it

16

No. Although it's close. There are some key differences.

  • CentOS lacks certified cryptographic protection required on government networks.
  • CVEs (Common Vulnerabilities and Exposures) are not tested on CentOS, and it is expensive to test them properly.
10

For all intents and purposes, CentOS is RedHat. CentOS, however is more flexible in what they can do.

From the CentOS website:

CentOS is developed by a small but growing team of core developers.  In turn the core developers are supported by an active user community including system administrators, network administrators, enterprise users, managers, core Linux contributors and Linux enthusiasts from around the world.

CentOS has numerous advantages over some of the other clone projects including:  an active and growing user community, quickly rebuilt, tested, and QA'ed errata packages, an extensive mirror network, developers who are contactable and responsive, multiple free support avenues including IRC Chat, Mailing Lists, Forums, a dynamic FAQ.

In a nutshell, CentOS is a community version of RedHat. You use Ubuntu, so you may understand this analogy a bit better: CentOS is to RedHat as Linux Mint is to Ubuntu.

  • 2
    I come from the CentOS world myself, and your final analogy seems a little off to me. After all, anyone can install Ubuntu on any machine, for free, right? Not the case with RHEL. – Wildcard Apr 6 '16 at 22:41
  • 1
    Agreed. Ubuntu comes in server and desktop flavors and support is available for purchase yet purely optional in both versions. A better analogy should have been chosen although this concept of an exact clone of a commercial product isn't that common. – tresf Nov 4 '17 at 17:35
7

With RHEL you pay RedHat for support.
With CentOS you do not get commercial support from RedHat.

Most updates are first available for RedHat, then for CentOS.

Other than that they are the same. See this for further reference: CentOS vs RHEL.

5

Look at the release-notes on the CentOS-pages. There is a list of rpms that are added/different from RH. These are about branding or about the update mechanism (which requires a license in RH).

  • 2
    I did (please refer to my comments on @Gilles answer). The release notes only says the list of different packages, not what is different about them. And RHN, I'm not sure how it works, and how it is replaced in CentOS - that's what the reason I mentioned it in the question. – Oxwivi Dec 25 '11 at 6:05
  • Ok - so at least I can give you the hint that anaconda seems to be about kickstart - wich works very well with CentOS, using the same (kickstart) syntax. For updates there is yum. For your question what is RedHat to CentOS? It is the "upstream" source-code-provider. – Nils Dec 25 '11 at 20:20
  • What is RHN to CentOS, not RedHat. – Oxwivi Dec 26 '11 at 6:11
  • RedHatNetwork is the means to communicate with RH support - since there is no direct support in CentOS they do track bugs with reference to RHN (like: Yes - this is a bug - see RH bug-id XYZ). The solution has to come from RH. Only then it will come to CentOS. So if you need real fast reactive support you need RH. – Nils Dec 26 '11 at 21:26
1

I did read the CentOS 6.2 release notes, but I found the details unsatisfactory. The release notes mentions packages modified, removed or added to upstream. But it neither explains nor links to any document detailing what exactly is different in the modified packages. Granted the branding packages are self-explanatory, but it mentions packages like kernel, ntp, anaconda, etc. which have nothing to do with branding as far as I'm aware.

If you are curious about the differences between the RHEL and CentOS versions of a particular package (ntp, for example), you should compare the source RPMs:

  • 1
    As commented in the comment on @Gilles's answer, compile-time configuration options. Can make a difference too. Plus, CentOS is supposed to be an exact replica, so I don't see why they would modify the source code. – Oxwivi Mar 15 '13 at 18:11
  • 2
    Indeed, CentOS's FAQ states they don't: "Does CentOS change the upstream Source RPMs? No." – ignis Oct 24 '13 at 22:45
1

Read the Centos FAQ one question that has the answer:

How is CentOS different from Red Hat Enterprise Linux?

CentOS is a community project that is developed, maintained, and supported by and for its users and contributors. Red Hat Enterprise Linux is a subscription product that is developed, maintained, and supported by Red Hat for its subscribers.

While CentOS is derived from the Red Hat Enterprise Linux codebase, CentOS and Red Hat Enterprise Linux are distinguished by divergent build environments, QA processes, and, in some editions, different kernels and other open source components. For this reason, the CentOS binaries are not the same as the Red Hat Enterprise Linux binaries.

The two also have very different focuses. While CentOS delivers a distribution with strong community support, Red Hat Enterprise Linux provides a stable enterprise platform with a focus on security, reliability, and performance as well as hardware, software, and government certifications for production deployments. Red Hat also delivers training, and an entire support organization ready to fix problems and deliver future flexibility by getting features worked into new versions.

Once in use, the operating systems often diverge further, as users selectively install patches to address bugs and security vulnerabilities to maintain their respective installs. In addition, the CentOS Project maintains code repositories of software that are not part of the Red Hat Enterprise Linux codebase. This includes feature changes selected by the CentOS Project. These are available as extra/additional packages and environments for CentOS users.

  • 1
    This is a bit "wall of text"; it might be a more useful answer if you bolded the most relevant lines. – Wildcard Apr 6 '16 at 22:42
1
  1. CentOS is the same of Redhat but without cost of support.
  2. CentOS is community driven, Redhat it supported by Redhat themselves.

So, ideally CentOS is a perfect choice for poor Redhat lovers :)

1

Technically, they are the same in the sense that Red Hat Enterprise Linux makes use of the GPL, meaning that the source code must be made available and that the CentOS project uses that source code to make CentOS.

However, this is a simplification. Red Hat Enterprise Linux is tied to Red Hat's business model. CentOS is a community project.

To be honest, I regret getting the subscription. Not that it isn't a good product. It is. However, for the home user there's no added value over CentOS and CentOS is less restrictive. I now run CentOS and consider the RHEL subscription a sunk cost.

0

Please read the below note form CentOS.

It clearly says:

CentOS is an Enterprise-class Linux Distribution derived from sources freely provided to the public by Red Hat1.CentOS conforms fully with Red Hat's redistribution policy and aims to have full functional compatibility with the upstream product. CentOS mainly changes packages to remove Red Hat's branding and artwork.

So I believe this clears all your doubts.

protected by dr01 Jul 4 at 9:13

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.