UPDATE, early/mid 2010: The majority of this post is mostly useless, except for history’s sake. It was originally written before 11.2 even was released, and the process still works, but…
The Opensuse crew and the community put together a nice set of documented steps to do the in-place upgrade much more easily than what I originally experimented with here. So, here is a link to the full document with those convenient steps: http://wiki.opensuse.org/SDB:System_upgrade
And here are those steps in summary/short/paraphrase (thanks everyone):
zypper modifyrepo --all --disable zypper addrepo --name "openSUSE-11.2 OSS" http://download.opensuse.org/distribution/11.2/repo/oss/ repo-11.2-oss zypper addrepo --name "openSUSE-11.2 Non-OSS" http://download.opensuse.org/distribution/11.2/repo/non-oss/ repo-11.2-non-oss zypper addrepo --name "openSUSE-11.2 Updates" http://download.opensuse.org/update/11.2/ repo-11.2-update zypper in zypper zypper dup
Now, back to the original post from November 2009:
First, see this post for background… don’t worry, I’ll wait… Okay, you’re back? Good. Let’s continue…
At the time of this writing, t’is the night before Opensuse 11.2 is released. And I just happened to find a mirror or two that were set up in advance, and decided to have some fun. I was hoping to easily duplicate my Opensuse 11 to 11.1 in-place upgrade cheat sheet, but as it turned out, this time it is not so easy.
So below, please see my working scratch-pad of my in-place upgrade of Opensuse 11.1 to 11.2 cheat sheet. Remember, the important point here is that we want to be able to do this without downing the server… oh, that’d be the easy way… *We* want to be able to do it without having to drive to the remote site where the server sits, get it?
Caveats: At the time of this update (see below), I’ve only tested it on two 32-bit machines and two 64-bit machines… So, please realize, you’re doing this at your own risk… don’t do this to your machine without backing up, or imaging it in the first place! Honestly, while figuring this out, I just kept throwing packages at it until it worked, so some of these might not be needed, but I know it worked for me…. And in the end, they all get updated anyway, right?
So here we go….
For both 32-bit and 64-bit:
(Update @ 200911131438 for addition of 64-bit)
cd /etc/zypp mv repos.d repos.d.old zypper ar http://download.opensuse.org/distribution/11.2/repo/oss openSUSE-11.2-Oss zypper ar http://download.opensuse.org/distribution/11.2/repo/non-oss openSUSE-11.2-Non-Oss (optional) zypper ar http://packman.iu-bremen.de/suse/11.2 packman
For 32-bit ONLY:
rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/libselinux1-2.0.80-5.2.i586.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/liblua5_1-5.1.4-6.2.i586.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/liblzma0-4.999.9beta-2.2.i586.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/libpopt0-1.13-4.2.i586.rpm rpm -Uvh --nodeps http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/rpm-4.7.1-6.7.3.i586.rpm rpm -Uvh --nodeps http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/libzypp-6.21.2-1.1.1.i586.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/libreadline6-6.0-18.3.i586.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/libaugeas0-0.5.0-2.2.i586.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/libstdc++44-4.4.1_20090817-2.3.4.i586.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/satsolver-tools-0.14.10-1.1.1.i586.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/i586/zypper-1.2.8-0.1.3.i586.rpm
For 64-bit ONLY:
rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/libselinux1-2.0.80-5.2.x86_64.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/liblua5_1-5.1.4-6.2.x86_64.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/liblzma0-4.999.9beta-2.2.x86_64.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/libpopt0-1.13-4.2.x86_64.rpm rpm -Uvh --nodeps http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/rpm-4.7.1-6.7.3.x86_64.rpm rpm -Uvh --nodeps http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/libzypp-6.21.2-1.1.1.x86_64.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/libreadline6-6.0-18.3.x86_64.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/libaugeas0-0.5.0-2.2.x86_64.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/libstdc++44-4.4.1_20090817-2.3.4.x86_64.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/satsolver-tools-0.14.10-1.1.1.x86_64.rpm rpm -Uvh http://download.opensuse.org/distribution/11.2/repo/oss/suse/x86_64/zypper-1.2.8-0.1.3.x86_64.rpm
Now back to both 32-bit and 64-bit:
…And that’s all… just reboot and it should be fine. Oh, and don’t forget to add an update repository… For example:
zypper ar http://download.opensuse.org/update/11.2 openSUSE-11.2-Update
And for pete’s sake, if you find flaws above, or a better way to do it, please let me know! Thanks!