zypper dup and the "upgrade workflow"

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

zypper dup and the "upgrade workflow"

Tristan Miller
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/
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

attachment0 (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: zypper dup and the "upgrade workflow"

Felix Miata-3
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: [hidden email]
To contact the owner, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: zypper dup and the "upgrade workflow"

Olaf Hering-2
In reply to this post by Tristan Miller
Am Tue, 15 Aug 2017 22:00:06 +0200
schrieb Tristan Miller <[hidden email]>:

> 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

attachment0 (201 bytes) Download Attachment