Live upgrade: openSUSE 13.1 -> openSUSE 13.2

I’ve done it again… a live upgrade from openSUSE 13.1 to 13.2.

I’ve been following the usual process that I’ve outlined in a few posts so far, and it went pretty smoothly on three different computers.

The actual process has evolved into this:

  1. run this script (after editing to fix the version numbers):
    #!/bin/bash
    old=13.1
    new=13.2
    repodir=/etc/zypp/repos.d
    newrepodir=/etc/zypp/repos.d_${new}
    
    mkdir -p ${newrepodir}
    cd ${repodir}
    for repofile in *repo; do
    {
        echo -n converting ${repofile} to ${newrepodir}/$(echo ${repofile}|sed -e "s/${old}/${new}/g") ... ;
        cat "${repofile}" | sed -e "s/${old}/${new}/g" > "${newrepodir}/$(echo ${repofile}|sed -e "s/${old}/${new}/g")" ;
        echo done.
    }
    done;
  2. move /etc/zypp/repos.d out of the way, for example rename it to /etc/zypp/repos.d_old
  3. move /etc/zypp/repos.d_13.2 to /etc/zypp/repos.d
  4. clean zyppers cache:
    zypper cc --all
  5. refresh zypper:
    zypper ref

    When you do this, you might get errors for some repositories because they don’t exist yet for 13.2. To disable them, do this:

    zypper mr -d -R <repository number>

    On the other hand you might want to investigate if there are 13.2 versions of those repositories, and edit the repo files accordingly.
    Then, repeat the zypper ref command.

  6. Once you can run through zypper ref without errors, get updated versions of zypper, libzypp and rpm, and install them:
    zypper up --download only zypper libzypp rpm
    zypper up zypper libzypp rpm
  7. Once that finished without errors, do the same two commands for the whole distribution (Pay attention to any warnings and/or conflicts here. You’ll have to make the right choices about what should be done to resolve them, and I can’t really give you a recipe):
    zypper dup -l --download only --allow-vendor-change --allow-arch-change --recommends
    zypper dup -l --allow-vendor-change --allow-arch-change --recommends
  8. After all is done you can reboot. The first reboot should lead into textmode in case you have to re-install/upgrade your nvidia or AMD binary drivers. To boot into text mode, append this kernel parameter:
    systemd.unit=multi-user.target

Have a lot of fun!

5 Replies to “Live upgrade: openSUSE 13.1 -> openSUSE 13.2”

Leave a Reply

Your email address will not be published. Required fields are marked *