Serious mess when upgrading select machines from 15.6 to 16.0 - similar thread

trying to opensuse-migration-tool on select boxes, i already ran into complete mess with two of my machines, before i found this thread here:

now my question is, right now, i have one machine still sitting in the state that the migration tool finished with some errors at the very end about the selinux step, with rmp so errors and stuff

so that other thread there talks about booting into rescue or recovery mode and what not, right now i am remote to my machine and can not go there for a while yet, so is it still possible to fix those apparently leftover packages from 15.6 being still inside the partly upgraded 16.0 system (still not having rebooted the old 15.6 stage)

? any hints on this?
opensuse-migration-tool exited at the very end with:

[INFO] Running post-migration task: 10_keepselinux
[MIGRATION] Uninstalling packages: patterns-base-apparmor
zypper: error while loading shared libraries: librpm.so.8: cannot open shared object file: No such file or directory
[MIGRATION][ERROR] Package uninstallation failed. Please check zypper logs or try again manually.
Migration process completed. A reboot is recommended.

i dare not to reboot this machine as this will possibly never come back up i guess, i even “had” to switch over another machine from opensuse to debian, i started from scratch only importing some of my ssh keys and configs, i was really frustrated about this.

only today was i able to find the discussion above with its valuable hints (hopefully) maybe i can still fix this right now in this stage with this machine? thanks for helping.

i only have/had normal 15.6 repos all default and nothing fancy, oh and this is a mbr/bios booting style machine, but i tested this way inside a virtualbox, it upgraded there fine, i have three simple partitions

swap
/
/home

and thats all mostly.

I am sorry that I can not help you, but I am in a somewhat similar situation, and I agree that the upgrade procedure from 15.6 to 16.0 is a complete mess. The people responsible for it apparently have no instinct for the difficulties they provide their users with. THEY know how it works, because they constructed it, but WE do not. Their instructions are woefully insufficient. (I never heard of “Agama” before".) No wonder Linux (and openSUSE) is not gaining a much wider base among desktop users much faster.

2 Likes

i kind of figure from that other discussion thread that we now need to fetch those .rpm files from original 16.0 repo and apply them “forcefully” to make rpm work again on the stranded partially upgraded system and then re-apply a zypper dup with the proper simple 16.0 repos activated.

i am only unsure if i would mess this system up farther and even more right now or if its exactly now the right time to take those steps… :confused:

Whenever I get around to it I’ll be doing a fresh install of 16 on a new drive and keeping 15.6.

additional note: this pending-to-be-rebooted system doesnt have dns name resolution any more, i can ping ip addresses but i cant make dns/name lookups work any more. thus i can not fetch via wget or curl that easily? from http servers at the moment … wanted to fetch those .rpm packages from that other thread already…

trying some stuff on the hosed pending system now:

tux01:~/repair16 # rpm --rebuilddb
warning: Converting database from bdb_ro to ndb backend

# downloaded those files and then:
~/repair16 # rpm -Uvh --force  --nodeps  rpm-4.20.1-160000.2.2.x86_64.rpm  rpm-build-4.20.1-160000.2.2.x86_64.rpm libsolv1-0.7.34-160000.2.2.x86_64.rpm libzypp-17.37.18-160000.1.1.x86_64.rpm zypper-1.14.93-160000.1.2.x86_64.rpm libyaml-cpp0_8-0.8.0-160000.2.2.x86_64.rpm libsolv-tools-0.7.34-160000.2.2.x86_64.rpm libsolv-tools-base-0.7.34-160000.2.2.x86_64.rpm  libzypp-17.37.17-160000.1.2.x86_64.rpm

but apparently i have a more and or differently mixed and messed up system as zypper now reports:

zypper lr -d
zypper: error while loading shared libraries: libboost_thread.so.1.86.0: cannot open shared object file: No such file or directory

additional note: this pending-to-be-rebooted system doesnt have dns name resolution any more, i can ping ip addresses but i cant make dns/name lookups work any more. thus i can not fetch via wget or curl that easily? from http servers at the moment … wanted to fetch those .rpm packages from that other thread already…that library from the mirror servers as well (i am fetching via curl -H “Host: host.name.here” http://ip-address/opensuse/distro/etc/et/al/…) and am trying to make this work now. i have temporary dns resolution with adding some nameserver entry in etc/resolv.conf

and now i can zypper ref and zypper dup --download-in-advance

it shows me that there are still? again? 2000+ packages to be downloaded and upgraded, some downgraded and such… wonder what the opensuse-migration-tool actually did and how much it managed. very weird.

In my case, their touted “opensuse-migration-tool” did not work at all. It merely disabled all 15.6 repos and thereupon declared the migration “completed”. No new repos, no .rpm updates, simply ridiculous. Their “splendid” new “Agama” installer, reminding me of Windows “simplicity” and apparently impossible to circumvent when using their DVD .iso, insisted on completely deleting my existing installation, instead of upgrading it. I can only recommend against it and will try again with a manual “zypper dup” from GOOD OLD YAST times … (See https://en.opensuse.org/SDB:System_upgrade.)

1 Like

Previous Leap 15 series were based on enterprise desktop product https://www.suse.com/download/sled/ . Leap 16.0 is desktop poorly “glued” on top of server product, enterprise desktop was discontinued with SLE 16.

@Leinad965 no issues here with GNOME on Leap 16.0, all fine and dandy… I did opt for fresh installs though…

@ks25 the migration tool was an after thought as initial migration was ‘none’, do a fresh install because of all the major changes. If you only have the default repositories and packages, then is should function fine.

There was an extension of four months on top of the standard six months for folks to at least plan and test migration, leaving things to the last minute is always a potential recipe for disaster…

2 Likes

But a fresh install is not an upgrade in the sense of “zypper dup”, is it? Here my recipe for a TRUE upgrade from the latest Leap 15.6 kernel (6.4.0-150600.23.100) to the current Leap 16.0 kernel (6.12.0-160000.29.1), which I tried successfully a few minutes ago:

Forget about Agama and opensuse-migration-tool and do NOT boot from the downloadable Leap 16.0 or 16.1 .iso. (I tried both for a true upgrade, without success, as described.) Instead, on your currently running 15.6 system, do the following:

Open the YaST Control Center and click on Software Repositories. Delete all of your current repositories. (This will leave your .rpm packages intact, only the 15.6 repo DEFINITIONS will be deleted.) Then, add the following 3 repo definitions for 16.0, which I copy here from https://en.opensuse.org/SDB:System_upgrade, section “Manual upgrade (only for experienced users)”:

| Alias | URI

–±--------------------------±-----------------------------------------------------------------
1 | openSUSE:repo-non-oss | http://cdn.opensuse.org/distribution/leap/16.0/repo/non-oss
2 | openSUSE:repo-oss | http://cdn.opensuse.org/distribution/leap/16.0/repo/oss
3 | openSUSE:repo-openh264 | http://codecs.opensuse.org/openh264/openSUSE_Leap

Enable these 3 new repos (no autorefresh required), click OK, leave YaST and continue in a root terminal, where you type (again, I copy from the site quoted above):
zypper --releasever 16.0 dup

That’s basically all you have to do. How easy and fast, compared to “Agama” and the “opensuse-migration-tool”! Zypper will tell you what it intends to do and ask you if you agree at every stage. In my case, it downloaded and installed about 5000 updated .rpm files. In the process, I had to make about 200 (very easy) multiple choices, 99 % on whether I wanted to replace the 15.6 version of a package by its 16.0 version.

Finally, the openSUSE website and zypper only say: reboot. But before rebooting, you still need to make a new grub configuration file and reinstall that. Otherwise, your machine will still boot with the old (15.6) kernel. (At least it was so on my machine.)

I was pleasantly surprised to even find YaST in my new Leap 16.0 installation!

1 Like