CentOS Stream
CentOS was once the most popular free RHEL alternative in the enterprise Linux world. In late 2020, Red Hat announced the shift from traditional CentOS Linux to CentOS Stream, triggering a massive transformation across the entire community. Understanding this history and CentOS Stream’s new positioning is essential for every EL user.
CentOS History
Section titled “CentOS History”Traditional CentOS (2004-2021)
Section titled “Traditional CentOS (2004-2021)”CentOS (Community Enterprise Operating System) was originally an independent community project that recompiled RHEL’s publicly available source code into a binary-compatible free distribution.
Core concept: Remove Red Hat branding, rebuild RHEL source RPMs (SRPMs), and provide a fully compatible free alternative.
This model made CentOS extremely popular for:
- Budget-constrained small and medium businesses
- Web hosting and server hosting
- Development and testing environments
- Educational and research institutions
Red Hat Acquires CentOS Project (2014)
Section titled “Red Hat Acquires CentOS Project (2014)”In 2014, Red Hat brought the CentOS project under its umbrella. The CentOS team joined Red Hat, and the project received more resources — but this also set the stage for the later transformation.
During this phase, CentOS continued its original model as a downstream rebuild of RHEL.
The CentOS Stream Pivot (2020-2021)
Section titled “The CentOS Stream Pivot (2020-2021)”In December 2020, Red Hat announced:
- CentOS Linux 8 would reach EOL by the end of 2021 (originally planned for support until 2029)
- CentOS Linux 7 would continue as planned until June 2024
- The CentOS project would henceforth focus on CentOS Stream
This decision caused enormous community backlash and directly spawned AlmaLinux and Rocky Linux as RHEL-compatible alternatives.
What is CentOS Stream
Section titled “What is CentOS Stream”CentOS Stream is the continuously delivered upstream for RHEL. Its positioning has fundamentally changed:
Old model: Fedora → RHEL → CentOS (downstream rebuild)New model: Fedora → CentOS Stream → RHEL (midstream development)Key Differences from Traditional CentOS
Section titled “Key Differences from Traditional CentOS”| Feature | Traditional CentOS | CentOS Stream |
|---|---|---|
| Relationship to RHEL | Downstream (follows) | Upstream (leads) |
| Update frequency | Follows RHEL minor releases | Continuous rolling updates |
| Package versions | Identical to RHEL | Slightly ahead of current RHEL minor version |
| Stability | Equal to RHEL | Slightly less than RHEL GA, but much more than Fedora |
| Positioning | Free RHEL replacement | Open collaboration platform for RHEL development |
CentOS Stream Update Model
Section titled “CentOS Stream Update Model”CentOS Stream rolls updates within a major version. For CentOS Stream 9:
- It contains changes destined for the next RHEL 9.x minor release
- Updates are continuous — there are no “9.1” or “9.2” point releases
- Every update passes CI testing, but does not go through RHEL’s full QA process
In practice, the gap between CentOS Stream updates and the next RHEL minor release is usually small. For most workloads, CentOS Stream’s stability is sufficient.
Use Cases
Section titled “Use Cases”Good Fit for CentOS Stream
Section titled “Good Fit for CentOS Stream”-
Development and Testing
- Test changes coming to RHEL ahead of time
- Ensure your applications are compatible with upcoming RHEL releases
-
Contributing to RHEL
- CentOS Stream is the public channel for submitting bug fixes and improvements to RHEL
- Anyone can participate in RHEL development through CentOS Stream
-
CI/CD Pipelines
- Use CentOS Stream in CI for building and testing
- Discover potential compatibility issues early
-
Non-critical Production
- Internal services that do not require strict RHEL compatibility
- Web development and application deployment
Not Ideal For
Section titled “Not Ideal For”- Production environments requiring 100% RHEL binary compatibility
- Environments needing long-term fixed package versions
- Running commercial software certified specifically for RHEL
Installation and Usage
Section titled “Installation and Usage”Getting CentOS Stream
Section titled “Getting CentOS Stream”Download: www.centos.org/centos-stream/
Currently available versions:
- CentOS Stream 9: Active development (tracks RHEL 9.x)
- CentOS Stream 10: Active development (tracks RHEL 10.x)
Basic Commands
Section titled “Basic Commands”# Check version informationcat /etc/centos-release
# Update the systemdnf update -y
# List available repositoriesdnf repolist
# Install EPEL (Extra Packages for Enterprise Linux)dnf install -y epel-releaseRepository Structure
Section titled “Repository Structure”CentOS Stream repositories correspond to RHEL:
| Repository | Description |
|---|---|
| baseos | Core OS packages |
| appstream | Applications and runtimes |
| crb | CodeReady Builder equivalent |
| extras-common | Additional community tools |
SIGs (Special Interest Groups)
Section titled “SIGs (Special Interest Groups)”An important part of the CentOS project is its SIGs, which provide additional packages and infrastructure around specific topics:
| SIG | Focus Area |
|---|---|
| Cloud | Cloud infrastructure (OpenStack, etc.) |
| Virtualization | Virtualization technologies (KVM, oVirt, etc.) |
| Storage | Distributed storage (Ceph, GlusterFS, etc.) |
| NFV | Network Function Virtualization |
| Automotive | In-vehicle Linux |
| Hyperscale | Hyperscale infrastructure optimization |
| Kmods | Kernel modules |
SIG-provided packages are distributed through dedicated repositories that can be enabled on demand:
# Example: List available CentOS SIG repositoriesdnf repolist --all | grep -i sigMigrating from Traditional CentOS
Section titled “Migrating from Traditional CentOS”If you are still running traditional CentOS Linux, here are your migration paths:
CentOS Linux 7 (EOL)
Section titled “CentOS Linux 7 (EOL)”- Use AlmaLinux’s ELevate tool to upgrade to EL 8/9
- Fresh install of CentOS Stream 9 or another EL 9 distribution
CentOS Linux 8 (EOL)
Section titled “CentOS Linux 8 (EOL)”CentOS Stream 8 also reached EOL on 2024-05-31, so don’t migrate to it. Recommended paths:
- Migrate in place to AlmaLinux 8 or Rocky Linux 8 (still in maintenance support)
- Upgrade directly to EL 9 / EL 10
Source Code and Build System
Section titled “Source Code and Build System”All CentOS Stream source code is publicly available through GitLab:
- Source repository: gitlab.com/redhat/centos-stream
- Build system: Koji
This is the best way to see what changes are coming to RHEL, and it is the primary source for all RHEL-compatible distributions to obtain source code (since Red Hat restricted SRPM access in 2023).
Summary
Section titled “Summary”CentOS Stream is no longer “free RHEL” — it is “the development frontier of RHEL.” For users who need a free RHEL-compatible distribution, AlmaLinux and Rocky Linux are more direct choices. But CentOS Stream continues to play an important role in development, testing, and contributing to the RHEL ecosystem.
Understanding CentOS Stream’s positioning helps you make the right choice among the many EL distributions available.
Further Reading
Section titled “Further Reading”- EL 11 Preview — CentOS Stream 11 branch timing predictions and RHEL 11 planning status