Upgrade from 15.1 to 15.2


I’m preparing to upgrade to 15.2, but ran into a little confusing section in the system upgrade guide. I section 3 the author writes about moving the /var/cache folder to a different location. https://en.opensuse.org/SDB:System_upgrade#3.Move.2Fvar.2Fcache_to_a_separate_subvolume. it says:

*Note: If the root file system is not Btrfs or you're upgrading from  15.0 or later version, then skip this section and continue to step 4.*

My root file system is Btrfs and I’m upgrading from 15.1 to 15.2, but should I be concerned about the /var/cache folder?

I have another question about the:

# zypper --releasever=15.2 dup --download-in-advance

I thought it more nice to do this download in advance, but does that mean you have to do it right before you do the:

# zypper --releasever=15.2 dup

Dag R

Another point.
I see you want to use the --releasever option. That is a powerfull and nice one. But it only works if your repo definitions are prepaired for it. You can check with

grep baseurl /etc/zypp/repos.d/*

When you see the string $releasever inside those definitions, they are OK. But when you se 15.1 instead, the option will not work.

When your system was installed fresh with 15.1, the $releasever is most probably there (although there are reports of one missing it when a netinstall was used).

When the fresh install was earlier and online upgrades were done to upgrade to the present 15.1, there are changes that $releasever is not there already.

OK. Thanks. I see there is a command I can run if the releasever string isn’t there:

sudo sed -i 's/15.1/$releasever/g' /etc/zypp/repos.d/*.repo

I must change the 15.1 in the code to 15.2?

Not exactly. It will chane 15.1 in $releasever, which then will enable you to use the --releasever option. And that is convenient for now and the future. But better first check what it is now.

The best is of course to read

man zypper

I am only repeating what you find there. When the string $releasever i found in the baseurl of a repository, it is replaced bij de currrent version number (the man page says:"The value is obtained from the /product/version XML-node in /etc/products.d/baseproduct. "). Thus when the

zypper dup --releasever=15.2 ......s

is completed, the file /etc/products.d/baseproduct is replaced by a new installed one, which then will have 15.2 as /product/version. Thus from then on, during the lifetime you have 15.2, you do not need the --releasever anynore.

That “–download-in-advance” option does exactly that, downloading all packages just before performing the actual “dup”, to avoid ending up with an unbootable system should the network have problems in the middle of the upgrade.

zypper --releasever=15.2 dup --download-only

will get all packages beforehand, but there is always a chance that the mirrors are updated before you do the actual “dup”, leaving you with the original problem you are trying to avoid.
If you still prefer to download the bunch at a time easier to you, you can use the following sequence:

zypper --releasever=15.2 dup --download-only
zypper --releasever=15.2 dup --download-in-advance

so that any packages updated meanwhile are downloaded in advance right before the actual “dup”.
Please be sure to have ample room for that in your btrfs filesystem, possibly delete unneeded snapshots before downloading; there are several reports in the Forums of people attempting that upgrade on 40-50 GB btrfs filesystems resulting in a “full”, “readonly” and difficult to recover filesystem halfway through the upgrade process.

https://www.marksei.com/how-to-upgrade-opensuse-leap-15-1-to-15-2/ …mentions something I’ve seen and used a lot (but you have to make sure yourself of the output - which may be wrong):
# sed -i ‘s/15.1/$releasever/g’ /etc/zypp/repos.d/*.repo

(I usually remove all but 1 or 2 big “3rd party” repos before doing this…)

(…also maybe do fsck on all involved drives beforehand …)