How to Register and Activate Red Hat Subscription for RHEL 9

After the last tutorial on minimal installation of Red Hat Enterprise 9.4, it’s time to register your system to the Red Hat Subscription Service, enable your system repositories, and perform a full system update.

The subscription service is responsible for identifying registered systems and the products installed on them. The local Subscription Manager service tracks installed software products, and available and used subscriptions, and communicates with the Red Hat Customer Portal using tools like dnf and subscription-manager.

This tutorial guides you through tasks like registering a new RHEL 9.4 system, activating a subscription, enabling repositories, and performing a system update.

Step 1: Register and Active Red Hat Subscription

1. To register your system to Customer Portal Subscription Management use the following command followed by the credentials used to login to Red Hat Customer Portal.

subscription-manager register --username your_username --password your_password
Activate Your Red Hat Subscription
Activate Your Red Hat Subscription

NOTE: After the system is successfully authenticated an ID will be displayed on your prompt for your system.

2. To get a list of all your available subscriptions use the list switch and note down the Subscription Pool ID that you want to active on your system.

subscription-manager list -available

3. To activate a subscription use the Subscription Pool ID, but be aware that when purchasing one, it is valid for a specified period of time, so make sure you buy a new period of time before expiring.

Because this system is for tests, I only use the 30-day Self-Supported RHEL free subscription. To activate a subscription use the following command.

subscription-manager subscribe --pool=Pool ID number

Replace Pool ID number with the actual Pool ID of the subscription you want to use.

4. To get the status of your consumed subscriptions use the following command.

subscription-manager list --consumed

5. To check your enabled subscriptions use the below command.

subscription-manager list
Check RedHat Subscription
Check RedHat Subscription

6. If you want to remove all your active subscriptions use --all argument or just provide a subscription serial if you want to remove a specific pool only.

subscription-manager remove --all
subscription-manager unsubscribe --serial=Serial number

7. To list the available service levels on your RHEL system use the following command and if you want to set your desired level use the switch --set on service-level command.

subscription-manager service-level --list
subscription-manager service-level --set=self-support

Step 2: Enable Yum Repositories

8. After your system has been registered to Red Hat Customer Portal and a Subscription has been activated in your system you can start listing and enabling system Repositories.

To get a list of all your provided repositories through a certain subscription use the following command.

subscription-manager repos --list

NOTE: A long repositories list should appear and you can status to see if certain repositories are enabled (the ones with 1 on Enabled).

9. A more simple output the command yum repolist all should generate through, and you can, also, verify if certain repos are enabled.

yum repolist all

10. To view only the enabled system repositories use the following command.

yum repolist

11. Now if you want to enable a certain repo on your system, open /etc/yum.repos.d/redhat.repo file and make sure you change the line enabled from 0 to 1 on every specific repo you want to activate.

vi /etc/yum.repos.d/redhat.repo

NOTE: Here I’ve enabled RHEL 9 Server Optional RPMs repositories which I will need later to install some important PHP modules on a LAMP server.

12. After you edit the file and enable all your needed repositories using the procedure above, run yum repolist all or just yum repolist, again to verify the repos status like in the screenshots below.

yum repolist all

Step 3: Full Update RHEL 9

13. After everything concerning subscriptions and repositories has been set, upgrade your system to make sure your system has the latest packages, kernels, and security patches up to date, issuing the following command.

dnf update

That’s all! Now your system is up to date and you can start performing another important task like starting to build a complete web environment for productions by installing all the necessary software packages, which will be covered in future tutorials.

Two small things before you go

If something didn’t work on your setup, leave a comment and tell me which distro and version you’re on. I read every one, and most of these articles got better because a reader pointed out what was missing.

And if it did work, share it. TecMint has stayed free for 14 years because people pass these articles around, and that traffic is what pays for writing the next one.

Leave a comment
Get two free Linux courses

Learn the Linux basics with two free courses and join 34,000+ readers getting practical TecMint tutorials and selected Pro TecMint articles every week.

Pro TecMint
Get lifetime access for $99

If you want to go beyond the free tutorials, Pro gives you 18 courses, 5 ebooks, and every future course I add. One payment, lifetime access, no renewals.

Matei Cezar
Matei Cezar
Contributor
About the author

I'am a computer addicted guy, a fan of open source and linux based system software, have about 4 years experience with Linux distributions desktop, servers and bash scripting.

19 Comments

Leave a Reply
  1. I am getting the error as “subscription-manager command not found” when I run “subscription-manager refresh“.

    Reply
  2. Matei in Centos we were receiving this error.

    “User cannot register with any organizations”
    until we executed
    subscription-manager register –username your_username –password your_password –auto-attach

    Reply
    • @Roman,

      It seems you don’t have a RedHat subscription, means you can’t register your system to RedHat network repository.

      Reply
      • I actually had a username registered but still got that error. It wasn’t until I used the –auto-attach parameter that it worked as expected.

        Reply
        • @Roman,

          I didn’t noticed that –auto-attach parameter in the command you posted, anyways thats great it worked for you finally..:)

          Reply
  3. There is an error in the code for listing all the services

    you have “-available” but in the print screen you have “–available”

    Please look into resolving that – Cheers.

    Great blog otherwise.

    Reply
  4. do you have to register the core edition of centos 7? I used the minimal installation disk from the online centos source page. it does not a redhat any where in the boot up. is that still consider redhat to..

    Reply
    • @Patrick,

      Only RedHat distributions needs to be registered to RedHat subscription to get package updates, CentOS distributions is free and doesn’t required any registration to get package updates..

      Reply
    • @Dilshath,

      Yes, they have yearly RedHat subscription plans, you need check out official RedHat subscription page to know more about it..

      Reply
  5. Hi Matei nice tutorial, l have redhat 7.2 and l need repos for rhscl for installing php55, but seems not to find them, can you help me how to get those repository ?

    Reply
  6. Simple as that, no! The packages will remain installed on your system forever and ever, unless you manually choose to uninstall them! Feel free to upgrade the system, but after that month support, you wont be able to upgrade packages anymore!

    Reply
  7. Hi Matei,

    Thank you for the detailed post. If I subscribe 30 Day Self-Supported RHEL free subscription, can I upgrade my system to latest version? and what will happen after one month? all the packages that I have installed in system will lost?

    Reply

Got Something to Say? Join the Discussion...

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.