YUM (DNF) Possible Confusion CentOS 8

Home » CentOS » YUM (DNF) Possible Confusion CentOS 8
CentOS 11 Comments

Folks

In a test CentOS 8 installation as a guest of VirtualBox on Windows
10, I want to install ffmpeg, and support for exfat. They’re not in the standard distribution (as far as I know), so I issue as root:

yum -y –enablerepo rpmfusion-free-updates install ffmpeg fuse-exfat exfat-utils

and that works just fine. The ffmpeg functionality works; I haven’t tested exfat yet. However, later, as part of maintenance, I want to get a list of everything that’s installed, so I issue

yum list installed

and the following diagnostics occur:
—————————–

11 thoughts on - YUM (DNF) Possible Confusion CentOS 8

  • I think its telling you that perl is NOT installed but the listed perl modules are installed although it could be looking for specifically the
    5.26 version of perl (since you mentioned the CPAN works).  What happens if you issue perl -v?  perl gets installed as a dependency of logwatch as an example so a lot of people don’t realize that they have perl installed whether they want it or not.

    Cheers, Dave


    “They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.”

    — Benjamin Franklin

  • At 08:52 AM 1/21/2020, David G. Miller wrote:

    Perl is explicitly installed, “perl -v”
    identifies v5.26.3, and comes from the standard CentOS 8 repositories. So, I suspect your interpretation doesn’t fit the facts. David K

  • Not seeing that here but it appears you are running newer versions of at least perl-DBD-MySQL, perl-DBD-SQLite and perl-DBI (snipped from “yum list installed” on my CentOS 8 VM after running “yum update”):

    perl-DBD-MySQL.x86_64                     4.023-6.el7 @anaconda perl-DBD-SQLite.x86_64                    1.39-3.el7 @anaconda perl-DBI.x86_64                           1.627-4.el7 @anaconda

    What repo are you pulling the listed packages from?  Is it the same repo as for perl?  I’m getting:

    root@bend ~]# perl -v

    This is perl 5, version 16, subversion 3 (v5.16.3) built for x86_64-linux-thread-multi

    for perl.  Since you said you’re running 5.26.3 but from a standard repo which doesn’t match what I’m seeing (5.16.3), I’m thinking your mismatches are due to the listed modules being built against a newer version of perl.

    Cheers, Dave


    “They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.”

    — Benjamin Franklin

  • Maybe it’s worth to have a look a yum.log to see what happened to perl in the history of the installation?

    Simon

  • Do you have the AppStream repo enabled? I get similar problems if I’ve installed Perl from there and then disabled it:

    # dnf –disablerepo=AppStream list perl Last metadata expiration check: 0:02:11 ago on Wed 22 Jan 2020 11:07:31 AM EST. Modular dependency problems:

    Problem 1: conflicting requests
    – nothing provides module(perl:5.26) needed by module perl-DBD-SQLite:1.58:8010020191114033549:073fa5fe-0.x86_64
    Problem 2: conflicting requests
    – nothing provides module(perl:5.26) needed by module perl-DBI:1.641:8010020191113222731:16b3ab4d-0.x86_64
    Installed Packages perl.x86_64 4:5.26.3-416.el8 @AppStream

  • At 08:10 AM 1/22/2020, you wrote:

    Jonathan:
    yum repolist shows:
    AppStream (CentOS-8)
    BaseOS (CentOS-8)
    PowerTools (CentOS 8)
    epel (Extra packages for..)
    extras (CentOS-8)
    remi-modular
    remi-safe

    I suppose that means that those are currently active.

  • At 08:05 PM 1/21/2020, you wrote:

    Simon and others Here’s a very simple and hopefully reproducible test-case

    Select as your boot ISO:
    CentOS-8.1.1911-x86_64-dvd1.iso Choose to reclaim all space on the disk Choose ‘Minimal Install’ as the software selection Connect yourself to the network (I use a wired connection)
    Don’t bother creating a user, just provide your root password. complete the install.

    After the reboot, issue as root:
    yum -y install perl chrony perl-libwww-perl perl-App-cpanminus gcc

    When that is complete, issue:
    yum list installed >nul and you get conflicting requests as follows:

    ————————–

  • Thank you for boiling that down. We’ve been seeing the symptom here, too, but the trigger was somewhere inside a thousand-like shell script.

    We do similar things to what the above test does, so we have all of those packages installed in our default install except for perl-libwww-perl.

    Note that the symptom doesn’t happen on “yum upgrade”, only on certain other operations.

  • OK.  Recreated the issue here.

    Interestingly, perl-DBI and perl-DBD-SQLite did not have an issue with
    “nothing provides module(perl:5.26)” until I installed perl-App-cpanimus and perl-YAML which pulled in perl 5.26 (and ~90 other dependencies). 
    They now show up as not being able to find module(perl:5.26) when I do a yum list installed.

    Also, perl-App-cpanimus and perl-YAML report perl 5.26 as not provided and these are the modules that pulled in perl 5.26.  I looked at the appropriate provides and requires for each package with rpm and don’t see anything that jumps out at me.

    Have you tried using these modules in a perl program?  Wondering if it’s a dnf or rpm dependency coding problem but everything works when you try to use it.  A missing dependency should cause the install to fail.

    Cheers, Dave


    “They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.”

    — Benjamin Franklin

  • I would agree.  I have the same behavior in a Redhat 8 development system, so it’s not a problem with the CentOS build.  I have not added any repositories other then the Redhat codeready-builder-for-rhel-8-x86_64-rpms. I original installed 8.0 and have applied all updates.  I did not notice the problem until recently.

    # dnf list installed | head -20
    Updating Subscription Management repositories. Modular dependency problems:

    Problem 1: conflicting requests
    – nothing provides module(perl:5.26) needed by module perl-DBD-SQLite:1.58:8010020190322125518:073fa5fe-0.x86_64
    Problem 2: conflicting requests
    – nothing provides module(perl:5.26) needed by module perl-DBI:1.641:8010020190322130042:16b3ab4d-0.x86_64
    Installed Packages GConf2.x86_64 3.2.6-22.el8 @AppStream
    ModemManager.x86_64 1.10.4-1.el8 @rhel-8-for-x86_64-baseos-rpms
    .
    .
    .

  • the redhat site.  (you need to login and it might require either a license or a developer subscription (which is what I have).

    https://access.redhat.com/solutions/4678261

    The instructions were a little unclear to me, but I did the following and it appears to have solved the problem.

    root@rhel8mail nataraj]# dnf check Updating Subscription Management repositories. Modular dependency problems:

    Problem 1: conflicting requests
    – nothing provides module(perl:5.26) needed by module perl-DBD-SQLite:1.58:8010020190322125518:073fa5fe-0.x86_64
    Problem 2: conflicting requests
    – nothing provides module(perl:5.26) needed by module perl-DBI:1.641:8010020190322130042:16b3ab4d-0.x86_64

    [root@rhel8mail nataraj]# yum module enable perl:5.26
    Updating Subscription Management repositories. Last metadata expiration check: 1:02:48 ago on Thu 23 Jan 2020 01:42:25 PM PST. Dependencies resolved.
    ================================================================================
    Package Architecture Version Repository Size
    ================================================================================
    Enabling module streams:
    perl 5.26

    Transaction Summary
    ================================================================================

    Is this ok [y/N]: y Complete!
    [root@rhel8mail nataraj]# dnf check Updating Subscription Management repositories.
    [root@rhel8mail nataraj]#