Centos 8.5 to RockyLinux 8 migration failed

I’m trying to migrate an existing centos server to rockylinux

installed migration script using git

$ more /etc/centos-release
CentOS Linux release 8.5.2111

I get the following errors, but can’t find anything in the forum

Any advice on how to proceed please, errors below

---
Running dnf update before we attempt the migration.
Repository packages-microsoft-com-prod is listed more than once in the configuration
Last metadata expiration check: 0:00:35 ago on Tue Oct 18 15:26:09 2022.
Error:
 Problem 1: cannot install the best update candidate for package gdal-libs-3.0.4-10.el8.x86_64
  - nothing provides libjson-c.so.4(JSONC_0.14)(64bit) needed by gdal-libs-3.0.4-11.el8.x86_64
 Problem 2: package gdal-devel-3.0.4-11.el8.x86_64 requires gdal-libs(x86-64) = 3.0.4-11.el8, but none of the providers can be installed
  - cannot install the best update candidate for package gdal-devel-3.0.4-10.el8.x86_64
  - nothing provides libjson-c.so.4(JSONC_0.14)(64bit) needed by gdal-libs-3.0.4-11.el8.x86_64
 Problem 3: package gdal-libs-3.0.4-10.el8.x86_64 requires libarmadillo.so.9()(64bit), but none of the providers can be installed
  - cannot install both armadillo-10.8.2-1.el8.x86_64 and armadillo-9.700.2-1.el8.x86_64
  - problem with installed package gdal-libs-3.0.4-10.el8.x86_64
  - cannot install the best update candidate for package armadillo-9.700.2-1.el8.x86_64
  - nothing provides libjson-c.so.4(JSONC_0.14)(64bit) needed by gdal-libs-3.0.4-11.el8.x86_64
 Problem 4: package containers-common-2:1-2.module_el8.5.0+890+6b136101.noarch requires runc, but none of the providers can be installed
  - package containerd.io-1.6.8-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  - package containerd.io-1.6.8-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  - cannot install the best update candidate for package runc-1.0.2-1.module_el8.5.0+911+f19012f9.x86_64
  - cannot install the best update candidate for package containers-common-2:1-2.module_el8.5.0+890+6b136101.noarch
  - package runc-1.0.0-56.rc5.dev.git2abd837.module_el8.3.0+569+1bada2e4.x86_64 is filtered out by modular filtering
  - package runc-1.0.0-66.rc10.module_el8.5.0+1004+c00a74f5.x86_64 is filtered out by modular filtering
  - package runc-1.0.0-72.rc92.module_el8.5.0+1006+8d0e68a2.x86_64 is filtered out by modular filtering
(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)

Error running pre-update.  Stopping now to avoid putting the system in an
unstable state.  Please correct the issues shown here and try again.

@DanishJanjua The biggest thing I can think of is that you need to disable third-party repositories before you start (the Microsoft reference is a big red flag that you at least have some of those enabled)… You can re-enable the repositories that you need after the migration is complete. I’m not a migration expert though. You are using the script migrate2rocky.sh I’m assuming?

@sspencerwire Thanks. Yes I ran migrate2rocky.sh. That makes sense, will disable and retry.

I’m noticing that migrate2rocky.sh tries a dnf update first to sync. to baseline. Does this mean that ‘mirate2rocky.sh’ is not the way to migrate if dnf has been broken already almost an entire year? My alternative is to wait until a spare transition machine is available to start a safer install since it would be foolhardy to migrate with a broken dnf (something to do with my CentOS Stream credentials not being recognised at the RHEL CentOS Linux side of things I think - the failure uses the term like unregistered at ‘entitlement server’ for dnf).

Final resolution on this, I successfully managed to upgrade Centos to Rocky.

  1. I forgot to say I was working on a cloned copy of the actual server (both VMs)
  2. I removed duplicate MS repositories
  3. Disabled all MS repositories
  4. Uninstalled gadm and docker-ce

I then ran the upgrade script successfully.

System is now fully operational.

Thanks to @sspencerwire and @mkhomo for your help.

Glad to know. You also verified that the migration script works when the administrative tool-set (dnf here) is in a ‘sane’ state. Mine is still to await a free machine for a fresh RockyLinux install. Every free machine so far got higher priority than my lame CentOS replacement.