Need help with Yum

I just migrated from CentOS 8 to Almalinux on a Plesk server. Trying to keep things updated and yum errors out. I suspect it is a configuration issue. I’m getting the following error. Any suggestions would be appreciated.

yum update

AlmaLinux 8 - BaseOS 4.0 MB/s | 5.4 MB 00:01
AlmaLinux 8 - AppStream 7.2 MB/s | 8.4 MB 00:01
AlmaLinux 8 - Extras 10 kB/s | 3.1 kB 00:00
Extra Packages for Enterprise Linux Modular 8 - x86_64 39 kB/s | 927 kB 00:23
Extra Packages for Enterprise Linux 8 - x86_64 755 kB/s | 10 MB 00:13
Imunify360 - Gradual Rollout Slot 1 501 B/s | 257 B 00:00
Imunify360 - Gradual Rollout Slot 2 517 B/s | 257 B 00:00
Imunify360 - Gradual Rollout Slot 3 521 B/s | 257 B 00:00
Imunify360 - Gradual Rollout Slot 4 500 B/s | 257 B 00:00
Imunify360 alt-php repository for CentOS 8 - x86_64 1.5 MB/s | 1.4 MB 00:00
EL-8 - Imunify360 2.0 MB/s | 2.1 MB 00:01
grafana extension repository 1.2 MB/s | 5.5 MB 00:04
panel-migrator extension repository 170 kB/s | 37 kB 00:00
site-import extension repository 184 kB/s | 37 kB 00:00
PLESK_18_0_36 extras 201 kB/s | 163 kB 00:00
PHP 7.3 149 kB/s | 29 kB 00:00
PHP 7.4 230 kB/s | 29 kB 00:00
PHP 8.0 133 kB/s | 28 kB 00:00
Error:
Problem 1: cannot install the best update candidate for package awstats-7.7-2.centos.8+p18.0.35.0+t210311.0745.noarch

  • nothing provides perl(Switch) needed by awstats-7.8-2.el8.noarch
    Problem 2: package alt-php-internal-sqlite3-7.4.16-1.el8.x86_64 requires alt-php-internal-common = 7.4.16-1.el8, but none of the providers can be installed
  • cannot install both alt-php-internal-common-7.4.20-2.el8.x86_64 and alt-php-internal-common-7.4.16-1.el8.x86_64
  • cannot install the best update candidate for package alt-php-internal-sqlite3-7.4.16-1.el8.x86_64
  • cannot install the best update candidate for package alt-php-internal-common-7.4.16-1.el8.x86_64
    Problem 3: problem with installed package alt-php-internal-sqlite3-7.4.16-1.el8.x86_64
  • package alt-php-internal-sqlite3-7.4.16-1.el8.x86_64 requires alt-php-internal-common = 7.4.16-1.el8, but none of the providers can be installed
  • package alt-php-internal-common-7.4.16-1.el8.x86_64 requires alt-php-internal = 7.4.16-1.el8, but none of the providers can be installed
  • cannot install both alt-php-internal-7.4.20-2.el8.x86_64 and alt-php-internal-7.4.16-1.el8.x86_64
  • cannot install the best update candidate for package alt-php-internal-7.4.16-1.el8.x86_64
    (try to add ‘–allowerasing’ to command line to replace conflicting packages or ‘–skip-broken’ to skip uninstallable packages or ‘–nobest’ to use not only best candidate packages)

You have many third-party repositories. (For example, why PHP 7.3, 7.4, and 8.0?) The more you have, the more likely it is to hit trouble.

Where are the troublemakers coming from?

dnf list --showduplicates awstats alt-php-internal-common

Thank you for the reply. To be honest, I haven’t thought of it. Probably because within my CP Plesk, I disable the older PHP versions. I’m just running 7.4 and 8.

[root@ns4 ~]# dnf list --showduplicates awstats alt-php-internal-common
Last metadata expiration check: 0:09:56 ago on Sat 07 Aug 2021 03:00:54 PM PDT.
Installed Packages
alt-php-internal-common.x86_64 7.4.16-1.el8 @imunify360
awstats.noarch 7.7-2.centos.8+p18.0.35.0+t210311.0745 @PLESK_18_0_34-dist
Available Packages
alt-php-internal-common.x86_64 7.4.12-3.el8 imunify360
alt-php-internal-common.x86_64 7.4.15-3.el8 imunify360
alt-php-internal-common.x86_64 7.4.16-1.el8 imunify360
alt-php-internal-common.x86_64 7.4.20-2.el8 imunify360
awstats.noarch 7.7-2.centos.8+p18.0.35.0+t210311.0745 PLESK_18_0_36-extras
awstats.noarch 7.8-2.el8

Note, AlmaLinux has PHP 7.4 in AppStream. RHEL 8 has “Retirement date: May 2029” for that stream.

dnf module list php
Last metadata expiration check: 0:07:51 ago on Sun 08 Aug 2021 11:59:15 AM EEST.
AlmaLinux 8 - AppStream
Name          Stream          Profiles                           Summary                       
php           7.2 [d]         common [d], devel, minimal         PHP scripting language        
php           7.3             common [d], devel, minimal         PHP scripting language        
php           7.4             common [d], devel, minimal         PHP scripting language        

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

Your PHP 7.4 is not even from “PHP 7.4” repo. It is from one of those “Imunify360” repos.
Having three different repos for PHP might not be the problem, but I would rather use only the AppStream, if possible.

Your output for awstats-7.8-2.el8 seems to cut short.

You have awstats installed from PLESK_18_0_34-dist repo. Do you even have that repo any more? See

dnf repolist all

Same version of awstats as you have is available from PLESK_18_0_36-extras

I don’t know Plesk, but it seems to be their problem, if they have created a package (awstats-7.8-2.el8) that has unsatisfied dependencies.

Helo,

Thank you for your reply. I reached out to Plesk and they provided me some help. They did have me disable EPEL repo since it conflicts with Plesk packages.

Now I get the following errors:

Error:
Problem 1: package alt-php-internal-sqlite3-7.4.16-1.el8.x86_64 requires alt-php-internal-common = 7.4.16-1.el8, but none of the providers can be installed

  • cannot install both alt-php-internal-common-7.4.20-2.el8.x86_64 and alt-php-internal-common-7.4.16-1.el8.x86_64
  • cannot install the best update candidate for package alt-php-internal-sqlite3-7.4.16-1.el8.x86_64
  • cannot install the best update candidate for package alt-php-internal-common-7.4.16-1.el8.x86_64
    Problem 2: problem with installed package alt-php-internal-sqlite3-7.4.16-1.el8.x86_64
  • package alt-php-internal-sqlite3-7.4.16-1.el8.x86_64 requires alt-php-internal-common = 7.4.16-1.el8, but none of the providers can be installed
  • package alt-php-internal-common-7.4.16-1.el8.x86_64 requires alt-php-internal = 7.4.16-1.el8, but none of the providers can be installed
  • cannot install both alt-php-internal-7.4.20-2.el8.x86_64 and alt-php-internal-7.4.16-1.el8.x86_64
  • cannot install the best update candidate for package alt-php-internal-7.4.16-1.el8.x86_64strong text

Plesk reports that this is due to: This is an upstream issue that is being addressed by CloudLinux in case ID ALTPHP-1170

I cannot not find it on their blog. Does anyone else have this issue? They recommended to go ahead and exclude the alt-php-internal* if I wanted to continue.

dnf update --exclude=alt-php-internal*

I feel like I’m just going down a rabbit hole. I then get:

dnf update --exclude=alt-php-internal*

Last metadata expiration check: 0:05:44 ago on Sun 08 Aug 2021 08:12:23 AM PDT.
Error:
Problem 1: package ai-bolit-1:30.8.9-1.el8.x86_64 requires alt-php-internal-cli >= 7.4.19-1, but none of the providers can be installed

  • cannot install the best update candidate for package ai-bolit-1:30.7.3-1.el8.x86_64
  • package alt-php-internal-cli-7.4.20-2.el8.x86_64 is filtered out by exclude filtering
    Problem 2: package imunify360-firewall-5.8.3-4.x86_64 requires ai-bolit >= 1:30.8.9-1, but none of the providers can be installed
  • package ai-bolit-1:30.8.9-1.el8.x86_64 requires alt-php-internal-cli >= 7.4.19-1, but none of the providers can be installed
  • cannot install the best update candidate for package imunify360-firewall-5.7.4-4.x86_64
  • package alt-php-internal-cli-7.4.20-2.el8.x86_64 is filtered out by exclude filtering
    Problem 3: package imunify360-firewall-5.8.3-4.x86_64 requires ai-bolit >= 1:30.8.9-1, but none of the providers can be installed
  • package imunify360-firewall-plesk-5.8.3-4.noarch requires imunify360-firewall = 5.8.3-4, but none of the providers can be installed
  • package ai-bolit-1:30.8.9-1.el8.x86_64 requires alt-php-internal-cli >= 7.4.19-1, but none of the providers can be installed
  • cannot install the best update candidate for package imunify360-firewall-plesk-5.7.4-4.noarch
  • package alt-php-internal-cli-7.4.20-2.el8.x86_64 is filtered out by exclude filtering

Any advise would be appreciated. Managing my own server can be a pain, but I strive to keep things updated.

Thanks again.

There are rabbit holes and rabbit holes.

The imunify360-firewall-plesk requires imunify360-firewall.
The imunify360-firewall requires ai-bolit.
The ai-bolit requires alt-php-internal-cli.

You could exclude those three packages. With “luck” there are no other dependent packages.

However, “firewall” is something that you definitely want Right and Proper.

Sounds like Plesk has PHP-based GUI (i.e. used with browser) for firewall that gives you list of options, concepts, and generates necessary and consistent ruleset for the concepts that you choose. That is both convenient and likely to save you from trivial errors.

If there is update to imunify360-firewall-plesk, then it can very well be important.

Did you run after disabling EPEL repo:

sudo dnf --enablerepo=* clean all

Occasionally the cache confuses dnf, so it is better to clean up and try the update again.

I would remove alt-php-internal* and all packages that depend on it, install php from Appstream and then see which of those depended packages are willing to reinstall. Alas, those packages being from Plesk and about firewall, that does not sound like a good idea.

As said, I have no experience about Plesk or any GUI management system, although I’m no “vi this file”-type either. If Plesk says that issue is in CloudLinux … AlmaLinux clearly is not CloudLinux. Therefore, you should reach someone from the AlmaLinux team.