The SDB for ‘zupper dup’ (SDB:System upgrade - openSUSE) says that one of its disadvantages is that ‘If you have multiple systems to upgrade, you use bandwidth each time, so it might be more interesting to download a DVD’.
Well I was able to use the download DVD iso as the reference source rather than the online openSUSE ‘oss’ repository. This means that multiple computers will not download each time from the online repository, only from the DVD iso. Of course, the files from the openSUSE ‘updates’ and ‘non-oss’ repositories will still be downloaded, but they account for only a small proportion of the upgraded packages. This is how you do it.
Follow the System Upgrade instructions, but stop before the ‘zypper ref’ and ‘zypper dup’ commands. Before running those, install another repository for the DVD iso:
I did this with YaST-> Software-> Software Repositories-> Add:
Type: Local ISO Image
Name: openSUSE-11.3-DVD
Path: <path/to/DVD.iso>
Then set the priority of each repository as follows:
openSUSE-11.3 OSS 99
openSUSE-11.3 Non-OSS 95
openSUSE-11.3-DVD 95
openSUSE-11.3 Updates 90
In 11.2, I had packages installed from the Packman and Mozilla openSUSE Build Service repositories, so I added new 11.3 versions of these repositories and set these to:
Packman-11.3 80
Firefox-11.3 Build Service 80
(while disabling the old 11.2 versions).
The order of priorities makes sure that the DVD packages get selected in preference to the online OSS packages, the Updates packages get selected over the DVD ones, and the Packman and Mozilla Build Service packages override all others.
Then run the final two commands:
zypper ref
zypper dup
My upgrade went without a hitch, with packages being selected from the correct repositories, and most of the packages coming from the DVD iso - not much from the online repositories. Although the SDB article warned that a ‘zypper dup’ might experience problems if third-party repositories were involved, I experienced none.
Overall, I was very impressed with the capabilities of ‘zypper dup’. Well done the devs.