Welcome to the Linux Foundation Forum!

Chapter 8 - YUM - script to list status of repositories


I guess I'm bored. "Chapter 8 - What is YUM" talks about the repository files in /etc/yum.repos.d. In my Centos VM there are quite a number of them. As it turns out, some of these repository files contain definitions for multiple repos.

Instead of printing each one and check for enabled=1, I wrote this little one-liner that lets you know which repositories are enabled:

for i in /etc/yum.repos.d/*; do echo "$i: "; cat $i | grep -e "\[" -e enabled= ; done

Hope it's useful.


  • coop
    coop Posts: 915

    no need for a script. This is a dnf command
    sudo dnf repolist --all (or --disabled or --enabled) as in
    sudo dnf repolist --all

    which generates 199 lines of output on my RHEL 8 system (CentOS I'm sure would be less) and you can easily
    grep out the enabled or disabled lines as in:

    ROOT@c8:/etc/yum.repos.d>dnf repolist --all | grep enabled
    PowerTools                                            CentOS-8 - PowerT enabled
    code                                                  Visual Studio Cod enabled
    epel                                                  Extra Packages fo enabled
    epel-modular                                          Extra Packages fo enabled
    google-chrome                                         google-chrome     enabled
    google-earth-pro                                      google-earth-pro  enabled
    rhel-8-for-x86_64-appstream-rpms                      Red Hat Enterpris enabled
    rhel-8-for-x86_64-baseos-rpms                         Red Hat Enterpris enabled
    rpmfusion-free-updates                                RPM Fusion for EL enabled
    rpmfusion-nonfree-updates                             RPM Fusion for EL enabled
    skype-stable                                          skype (stable)    enabled
    slack                                                 slack             enabled
    virtualbox                                            Oracle Linux / RH enabled
  • heiko_s

    Thanks coop!

  • nicolasmendoza
    nicolasmendoza Posts: 22
    edited October 2020

    Nice. @coop It's a good idea to install dnf "manually" in Centos 7 (yum install dnf)?, because this package manager was included starting from the Centos 8.

  • coop
    coop Posts: 915

    there is no dnf on CentOS 7, it appears only in CentOS 8 (and much earlier versions of Fedora). ON CentOS 8 you can use yum, it is simply a wrapper around dnf as for basic commands the syntax is identical. But one should probably get out of the habit of typing yum and just do dnf.

  • robbnl
    robbnl Posts: 16

    I am so used to yum, so I even use it on my Fedora laptop... Will be a shocker when CentOS 8 comes around for my servers...

  • coop
    coop Posts: 915

    To repeat, the yum command works fine on CentOS 8. It is now a wrapper around dnf. I'm sure you can find corner cases where it doesn't work for advanced purposes, but mostly you would be missing out on some new enhancements. So it is not a need to instantly redo everything.


Upcoming Training