( 683/4944) Installieren: rpm-4.20.1-160000.2.2.x86_64 ..........................................................................................................................................[fertig]
warning: Found bdb_ro Packages database while attempting ndb backend: using bdb_ro backend.
warning: /var/cache/zypp/packages/openSUSE:neu_16_0:repo-oss/x86_64/p11-kit-tools-0.25.5-160000.2.2.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 09d9ea69: NOKEY
warning: Found bdb_ro Packages database while attempting ndb backend: using bdb_ro backend.
warning: Converting database from bdb_ro to ndb backend
error: cannot add record originally at 1847
warning: failed to rebuild database: original database remains in place
warning: Found bdb_ro Packages database while attempting ndb backend: using bdb_ro backend.
error: cannot open Packages database in /usr/lib/sysimage/rpm
It did not rebuild the rpm database. So I did that only step manually for rpm-4.20.1-160000.2.2.x86_64.rpm:
# cd /root
wget http://cdn.opensuse.org/distribution/leap/16.0/repo/oss/x86_64/rpm-4.20.1-160000.2.2.x86_64.rpm
rpm -Uvh --force rpm-4.20.1-160000.2.2.x86_64.rpm
# make a bakup of rpm, then rebuilddb
cd /var/lib/rpm
cp -r /usr/lib/sysimage/rpm /usr/lib/sysimage/rpm.bak
cd /var/lib/
rpm --rebuilddb
# seems all right
Then I get stuck:
zypper --releasever 16.0 dup --auto-agree-with-licenses
zypper: error while loading shared libraries: librpm.so.8: cannot open shared object file: No such file or directory
How can I resolve it or what can I do, to proceed the distribution upgrade?
It looks like youâve got a mix of packages from 15.6 and 16.0 installed - librpm.so.10 is from Leap 16, librpm.so.8 is from Leap 15.6.
It seems youâve got the version of RPM from 15.6 and the version of RPM from Leap 16, which doesnât provide the library needed by the version of zypper from 15.6.
I would probably revert to the pre-upgrade snapshot and run the upgrade again, probably doing some verification on the database before starting.
Otherwise, you could try installing the 15.6 release of rpm and see if that lets you move forward.
Yes. Well the distribution upgrade got stuck in step 683 of 4944. Now the 16.0 version of rpm-4.20.1-160000.2.2.x86_64.rpm is installed. It is probably a mix of rpm-interdepended packages but I donât which are related to what and if I could resolve only the clean rpm-basic installation. How can I resolve it, or find out why the system or which package searches for the old librpm.so.8 from 15.6, although the new rpmis basically installed. Can I update manually the rpm-related package(s) that cause trouble that search for the old librpm.so.8?
PS.: I do not have any snapshot of the old system (I know ⌠the documentation tells me to do backups beforehand ⌠but unfortunately it is what is is now, and I try to solve it as good as possible)
Sorry, now I get where youâre at. Something to tryâŚBoot a live ISO, and from a shell do
mount /dev/sdaX /mnt # root partition of target system
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt /bin/bash
Youâll have to try installing the packages (downloaded from an intenret connected PC) using the ârpmâ command. That can lead to dependency hell so YMMV. Youâll need to invoke something like
Or do I need also include rpm-config-SUSE-20250328-160000.2.2.noarch.rpm from the /noarch folder? The reason Iâm asking, I tried with the AI to find answers, but Iâm also very cautious because it is often only 70-100% right and it suggested to also include rpm-config as a core library, thats why Iâm asking.
zypper lr -u
# Die Repository-Prioritäten sind ohne Effekt. Alle aktivierten Repositorys teilen sich die gleiche Priorität.
# # | Alias | Name | Enabled | GPG Check | Refresh | URI
# ---+---------------------------------+---------------------------------------------+---------+-----------+---------+-------------------------------------------------------------------------------------
# ...
# 6 | openSUSE:neu_16_0:repo-non-oss | openSUSE:neu_16_0:repo-non-oss | Ja | (r ) Ja | Nein | http://cdn.opensuse.org/distribution/leap/16.0/repo/non-oss
# 7 | openSUSE:neu_16_0:repo-openh264 | openSUSE:neu_16_0:repo-openh264 | Ja | (r ) Ja | Nein | http://codecs.opensuse.org/openh264/openSUSE_Leap
# 8 | openSUSE:neu_16_0:repo-oss | openSUSE:neu_16_0:repo-oss | Ja | (r ) Ja | Nein | http://cdn.opensuse.org/distribution/leap/16.0/repo/oss
# ...
zypper seems working , hopefully all right .
So is now the time to try zypper dup right away? Or should I check some rpm-database stuff before?
My try would be to proceed with the distribution upgrade via: zypper --releasever 16.0 dup --auto-agree-with-licenses. Would it work (fingers crossed ) ?
I did so far â aiming to come to the point, that zypper and rpm can work it out:
stuck from rpm not rebuilding the database, download rpm-4.20.1-160000.2.2.x86_64.rpm manually, backup of rpm-data directory, rebuild rpm database. Was all right
attempting resolve the Leap 16.0 rpm-core libraries and zypperâs core libraries, in my case these were (in summary):
here zypper lr -u turned out to complain about libyaml, which was old as of 15.6
libyaml-cpp0_8-0.8.0-160000.2.2.x86_64.rpm
here zypper lr -u was working, but zypper --gpg-auto-import-keys ref was complaining of librpmio.so.8, and following AI recommendations I confirmed (by querying rpm -q libsolv-tools-base libsolv-tools that 2 packages are old, then checking for new ones âŚ)
It might be more fruitful to download installation media and do an in-place upgrade from media. That would give you a cleaner starting point. If the full offline install media isnât feasible due to bandwidth or other reasons, the net install media would also be a reasonable choice.
But if your 15.6 was installed with btrfs, you should have snapshots enabled automatically for a rollback - if you can, take a look at the output of the mount command and see what the root partition filesystem is.