[opensuse-factory] zypper dup and the "upgrade workflow"
Dear $LIST, I recently attempted to upgrade openSUSE 13.2 to openSUSE Tumbleweed using the procedure described at https://en.opensuse.org/openSUSE:Tumbleweed_upgrade. That page defines "upgrade" as "moving from an older openSUSE release (eg. openSUSE 13.2 or Leap) to Tumbleweed" and describes two "supported upgrade mechanisms", including one called "online upgrade". This "online upgrade" mechanism involves replacing all the old Zypper repositories with Tumbleweed repositories and then running "zypper dup". When I ran into trouble with the "online upgrade" process, I filed a bug report and was chastised by a developer for using the "zypper dup" command instead of following the "upgrade workflow" [1]:
please notice that "zypper dup" for a distro upgrade may or may not work; that's why we provide the upgrade workflow
I asked what "upgrade workflow" he was referring to but received no response. Does anyone know what the official "upgrade workflow" is for updating older versions of openSUSE to Tumbleweed? If it's not already on the wiki, could I ask someone to please update the wiki page at https://en.opensuse.org/openSUSE:Tumbleweed_upgrade with it? If it is already on the wiki, perhaps https://en.opensuse.org/openSUSE:Tumbleweed_upgrade could redirect to it. Regards, Tristan [1] https://bugzilla.suse.com/show_bug.cgi?id=1025725#c3 -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Tristan Miller Free Software developer, ferret herder, logologist https://logological.org/ =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Tristan Miller composed on 2017-08-15 22:00 (UTC+0200):
I recently attempted to upgrade openSUSE 13.2 to openSUSE Tumbleweed using the procedure described at https://en.opensuse.org/openSUSE:Tumbleweed_upgrade. That page defines "upgrade" as "moving from an older openSUSE release (eg. openSUSE 13.2 or Leap) to Tumbleweed" and describes two "supported upgrade mechanisms", including one called "online upgrade". This "online upgrade" mechanism involves replacing all the old Zypper repositories with Tumbleweed repositories and then running "zypper dup".
When I ran into trouble with the "online upgrade" process, I filed a bug report and was chastised by a developer for using the "zypper dup" command instead of following the "upgrade workflow" ....
IMO that page ought to be modified. I haven't done it mainly because I've not seen discussion about what ought to be different and what pitfalls might be associated with deviating from what's there now. One potential pitfall that I know of is virtually unavoidable. Dup insists, except when using it on an already existing TW, on removing all prior kernels. IMO it ought to leave the last one at least until the new one has been able to boot successfully. Thus, anticipating this, I prepare for it by first renaming the latest kernel, initrd and modules directory last thing before starting the upgrade process. Once I know the new kernel/initrd work I either restore the original names, or delete them. I've had many successes with online upgrades, but I modify that page's online procedure by only running the dup after first running this script that I call zypstart: #!/bin/sh zypper -v in zypper libzypp libsolv-tools rpm openSUSE-release zypper -v in device-mapper dmraid glibc lvm2 multipath-tools mdadm systemd udev This gets the package management system and nominal other basics' upgrades done first. Next I run 'zypper up', and only /then/ run 'zypper dup'. Going from 13.2 to TW is something I likely have not done. I did use it "successfully" (with maybe minor quibbles, but no boot failures) several times going from 13.1 and 13.2 to various Leap releases. Note that I don't limit this procedure to version upgrades, but adopted it originally for keeping Factory up-to-date, many many moons ago. This procedure has worked so well for me that I cannot remember even /if/ I ever tried the offline upgrade procedure. It certainly would have been at least 3 years ago, if ever. -- "The wise are known for their understanding, and pleasant words are persuasive." Proverbs 16:21 (New Living Translation) Team OS/2 ** Reg. Linux User #211409 ** a11y rocks! Felix Miata *** http://fm.no-ip.com/ -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Am Tue, 15 Aug 2017 22:00:06 +0200
schrieb Tristan Miller
I asked what "upgrade workflow" he was referring to but received no response.
I guess this means booting the Tumbleweed/Leap installer with 'upgrade=1' to enable knobs to do a system upgrade instead of a fresh install. This will not only upgrade all pacakges but also the first and second stage bootloader. There should be also a yast config screen to tweak the bootloader settings. In case of zypper dup it is a good idea to run 'grub2-install <device>' manually because the post install scripts can not possibly cover all cases. Perhaps the udev upgrade failed to redo the link. Or the old udev simply did not know the new format /dev/disk/by-id/scsi-3*. One option to recover: boot the installer with 'start_shell, or rescue=1. Then run "mount-rootfs-and-do-chroot.sh /dev/sdaN", and fixup the bootloader manually. Good luck. Olaf
participants (3)
-
Felix Miata
-
Olaf Hering
-
Tristan Miller