El problema
La ejecución del comando 'dnf update' falla con el siguiente error:
# dnf update Error: Problem 1: package perl-4:5.26.3-419.el8.x86_64 requires perl-interpreter(x86-64) = 4:5.26.3-419.el8, but none of the providers can be installed - cannot install both perl-interpreter-4:5.26.3-419.el8_4.1.x86_64 and perl-interpreter-4:5.26.3-419.el8.x86_64 - cannot install the best update candidate for package perl-interpreter-4:5.26.3-419.el8.x86_64 - cannot install the best update candidate for package perl-4:5.26.3-419.el8.x86_64 Problem 2: package perl-devel-4:5.26.3-419.el8.x86_64 requires perl-libs(x86-64) = 4:5.26.3-419.el8, but none of the providers can be installed - cannot install both perl-libs-4:5.26.3-419.el8_4.1.x86_64 and perl-libs-4:5.26.3-419.el8.x86_64 - cannot install the best update candidate for package perl-libs-4:5.26.3-419.el8.x86_64 - cannot install the best update candidate for package perl-devel-4:5.26.3-419.el8.x86_64 Problem 3: perl-libs-4:5.26.3-419.el8.i686 has inferior architecture - package perl-utils-5.26.3-419.el8.noarch requires perl-libs = 4:5.26.3-419.el8, but none of the providers can be installed - cannot install both perl-libs-4:5.26.3-419.el8_4.1.x86_64 and perl-libs-4:5.26.3-419.el8.x86_64 - package perl-Errno-1.28-419.el8_4.1.x86_64 requires perl-libs(x86-64) = 4:5.26.3-419.el8_4.1, but none of the providers can be installed - cannot install the best update candidate for package perl-utils-5.26.3-419.el8.noarch - cannot install the best update candidate for package perl-Errno-1.28-419.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)
Intentar actualizar los paquetes informados anteriormente de forma individual también da como resultado un error similar.
# dnf update perl-interpreter Error: Problem: problem with installed package perl-4:5.26.3-419.el8.x86_64 - package perl-4:5.26.3-419.el8.x86_64 requires perl-interpreter(x86-64) = 4:5.26.3-419.el8, but none of the providers can be installed - cannot install both perl-interpreter-4:5.26.3-419.el8_4.1.x86_64 and perl-interpreter-4:5.26.3-419.el8.x86_64 - cannot install the best update candidate for package perl-interpreter-4:5.26.3-419.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)
Borrar el caché dnf "dnf clean all" no supuso ninguna diferencia.
# dnf clean all
La solución
En este caso, el paquete perl-interpreter y perl-libs está causando un problema. Esto podría deberse a algún problema de metadatos con estos paquetes. Ejecute los siguientes comandos para solucionar el problema.
1. Ejecute el siguiente comando y vea si la actualización continúa. Si aún no se actualiza, esto nos ayuda a identificar el paquete que no se puede eliminar con la opción '-best-allowerasing'. En este caso, es el paquete perl-libs el que sigue bloqueando la actualización.
# dnf update --best --allowerasing Error: Problem: cannot install the best update candidate for package perl-4:5.26.3-419.el8.x86_64 - problem with installed package perl-4:5.26.3-419.el8.x86_64 - package perl-4:5.26.3-419.el8.x86_64 requires perl-libs(x86-64) = 4:5.26.3-419.el8, but none of the providers can be installed - cannot install the best update candidate for package perl-libs-4:5.26.3-419.el8.x86_64 - cannot install both perl-libs-4:5.26.3-419.el8_4.1.x86_64 and perl-libs-4:5.26.3-419.el8.x86_64 (try to add '--skip-broken' to skip uninstallable packages)
2. Ejecute la actualización del paquete desde la salida del comando del paso 1. En este caso es perl-libs.
# dnf update perl-libs.x86_64 --best --allowerasing
3. Luego intente una actualización normal:
# dnf update