How to Configure Fedora/CentOS Yum Repositories on RHEL6 for GCC Installation Without RHN Subscription


2 views

When managing an unsubscribed RHEL6 system, you'll hit immediate roadblocks trying to install development tools like GCC due to dependency resolution issues. The official Red Hat Network (RHN) repositories become inaccessible without an active subscription.

Both Fedora EPEL and CentOS repositories can serve as viable substitutes because:

  • CentOS is built from RHEL source packages
  • EPEL provides additional packages for Enterprise Linux
  • Package versions maintain reasonable compatibility

First, clean any existing repo configurations:

sudo yum clean all
sudo rm -rf /etc/yum.repos.d/*

For CentOS 6 repositories (most compatible with RHEL6):

sudo bash -c 'cat > /etc/yum.repos.d/CentOS-Base.repo << EOF
[base]
name=CentOS-6 - Base
baseurl=http://vault.centos.org/6.10/os/x86_64/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

[updates]
name=CentOS-6 - Updates
baseurl=http://vault.centos.org/6.10/updates/x86_64/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
EOF'

The EPEL repository provides additional packages:

sudo rpm -Uvh https://archives.fedoraproject.org/pub/archive/epel/6/x86_64/epel-release-6-8.noarch.rpm

With repositories configured, install the GCC toolchain:

sudo yum groupinstall "Development Tools"

For just GCC and essential build dependencies:

sudo yum install gcc glibc-devel kernel-headers

Check repository availability:

yum repolist enabled

Common issues and fixes:

  • SSL errors: sudo yum update --nogpgcheck ca-certificates
  • Mirror issues: Replace baseurl with a working mirror from vault.centos.org
  • 404 errors: Verify the CentOS 6.10 paths as archives may change

When using third-party repositories:

  • Always enable GPG checking
  • Prefer vault.centos.org over random mirrors
  • Consider creating local mirrors for production systems
  • Test updates in staging environments first

For ongoing maintenance:

sudo yum install yum-cron
sudo service yum-cron start
sudo chkconfig yum-cron on

This ensures automatic security updates while maintaining your custom repository configuration.


When working with RHEL 6 without Red Hat Network (RHN) subscription, package management becomes challenging. The solution lies in leveraging compatible third-party repositories like CentOS or Fedora EPEL while maintaining system stability.

Before proceeding, understand these critical points:

  • CentOS repositories generally provide better compatibility with RHEL 6 than Fedora
  • EPEL (Extra Packages for Enterprise Linux) offers additional packages while maintaining stability
  • Mixing repositories can cause dependency conflicts - careful configuration is essential

First, remove any existing RHN configuration:

sudo rm -f /etc/yum.repos.d/*.repo

Create a new CentOS-Base.repo file:

sudo vi /etc/yum.repos.d/CentOS-Base.repo

[base]
name=CentOS-6 - Base
baseurl=http://vault.centos.org/6.10/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

[updates]
name=CentOS-6 - Updates
baseurl=http://vault.centos.org/6.10/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

For additional packages, install EPEL:

sudo rpm -Uvh https://archives.fedoraproject.org/pub/archive/epel/6/x86_64/epel-release-6-8.noarch.rpm

Now you can install development tools:

sudo yum groupinstall "Development Tools"
sudo yum install gcc

To prevent conflicts, install and configure yum-priorities:

sudo yum install yum-plugin-priorities

Then add priority settings to repository files. For CentOS-Base.repo:

priority=1

For EPEL repositories:

priority=10

Check repository configuration:

yum repolist
yum check-update

Test package installation:

sudo yum install gcc-c++
  • If seeing 404 errors, check the CentOS vault URL versions
  • For signature errors, import proper GPG keys
  • Use --skip-broken flag with yum if encountering dependency issues