You can upgrade an existing system without completely reinstalling it. There are two types of renewing the system or parts of it: updating individual software packages and upgrading the entire system. Updating individual packages is covered in Chapter 4, Installing or Removing Software and Chapter 5, YaST Online Update. Two ways to upgrade the system are discussed in the following sections— see Section 15.1.3, “Upgrading with YaST” and Section 15.1.4, “Distribution Upgrade with zypper”.
Software tends to “grow” from version to version. Therefore, take a look at the available partition space with df before updating. If you suspect you are running short of disk space, secure your data before you update and repartition your system. There is no general rule regarding how much space each partition should have. Space requirements depend on your particular partitioning profile, the software selected, and the version numbers of the system.
Before upgrading, copy the old configuration files to a separate medium
(such as removable hard disk or USB flash drive) to secure
the data. This primarily applies to files stored in
/etc
as well as some of the directories and files
in /var
. You may also want to write the user data
in /home
(the HOME
directories) to a
backup medium. Back up this data as
root
. Only
root
has read permission
for all local files.
Before starting your update, make note of the root partition. The
command df / lists the device name of the root
partition. In Example 15.1, “List with df -h”, the root partition
to write down is /dev/sda3
(mounted as
/
).
Example 15.1. List with df -h¶
Filesystem Size Used Avail Use% Mounted on /dev/sda3 74G 22G 53G 29% / udev 252M 124K 252M 1% /dev /dev/sda5 116G 5.8G 111G 5% /home /dev/sda1 39G 1.6G 37G 4% /windows/C /dev/sda2 4.6G 2.6G 2.1G 57% /windows/D
If you upgrade a default system from the previous version to this version, YaST works out the necessary changes and performs them. Depending on your customizations, some steps (or the entire upgrade procedure) may fail and you must resort to copying back your backup data. Check the following issues before starting the system update.
Before upgrading the system, make sure that
/etc/passwd
and /etc/group
do
not contain any syntax errors. For this purpose, start the verification
utilities pwck and grpck as
root
to eliminate any
reported errors.
Before updating PostgreSQL
(postgres
), dump the
databases. See the manual page of pg_dump. This is
only necessary if you actually used PostgreSQL prior to your update.
Following the preparation procedure outlined in Section 15.1.1, “Preparations”, you can now upgrade your system:
Boot the system as for the installation, described in Section 1.4, “System Start-Up for Installation”. In YaST, choose a language and select in the dialog. Do not select . Also add repositories to make sure to get all available software updated whenever possible. Find more information about installation repositories in Section 1.7.1, “Add-On Products”.
YaST determines if there are multiple root partitions. If there is
only one, continue with the next step. If there are several, select
the right partition and confirm with /dev/sda3
was selected in the example in
Section 15.1.1, “Preparations”). YaST reads the old
fstab
on this partition to analyze and mount the
file systems listed there.
Persistent Device Names | |
---|---|
All entries in |
Check the previously used repositories, if there are any. Enable all the repositories you still want to use and from where you want to update third-party software. Click the
for every list item, if appropriate.If you added repositories during the upgrade procedure as recommended above, you now can activate those you are actually interested in.
In the
dialog, adjust the settings according to your requirements. Normally, you can leave the default settings untouched. If you intend to enhance your system, however, check the packages and patterns offered in the and submenus, or add support for additional languages.You also have the possibility to make backups of various system components. Selecting backups slows down the upgrade process. Use this option if you do not have a recent system backup.
Confirm the upgrade by clicking
.Once the basic upgrade installation is finished, YaST reboots the system. Finally, YaST updates the remaining software, if any and displays the release notes, if wanted.
With the zypper command line utility you can upgrade to the next version of the distribution. Most importantly, you can initiate the system upgrade process from within the running system.
This feature is attractive for advanced users who want to run remote upgrades or upgrades on many similarly configured systems. Inexperienced users will prefer the upgrade with YaST using a boot medium as described in Section 15.1.3, “Upgrading with YaST”.
To avoid unexpected errors during the upgrade process using zypper, minimize risky constellations.
Upgrade from the previous version (e.g., 11.3) to this version (11.4)—do not skip any minor version inbetween (this means, do not upgrade from 11.2 or earlier to 11.4 in one go). Make sure all available 11.3 online updates are successfully applied.
Close as many applications and unneeded services as possible and log out all regular users.
Disable third party or openSUSE Build Service repositories before starting the upgrade, or lower the priority of these repositories to make sure packages from the default system repositories will get preference. Enable them again after the upgrade and edit their version string to match the version number of the distribution of the upgraded now running system.
For more information, see http://en.opensuse.org/SDB:System_upgrade.
Check Your System Backup | |
---|---|
Before actually starting the upgrade procedure, check that your system backup is up-to-date and restorable. This is especially important because you must enter many of the following steps manually. |
Run the online update to make sure the software management stack is up-to-date. For more information, see Chapter 5, YaST Online Update.
Configure the repositories you want to use as an update source. Getting this right is essential. Either use YaST (see Section 4.4, “Managing Software Repositories and Services”) or zypper (see Section 8.1, “Using Zypper”). The name of the repositories as used in the following steps could vary a little bit depending on your customizations.
To view your current repositories enter:
zypper lr -u
zypper command names | |
---|---|
zypper supports long and short command names. For example, you can abbreviate zypper install as zypper in. In the following text, the short variant is used. |
Increase the version number of the system repositories from 11.3 to 11.4; add the new 11.4 repositories with commands such as:
server=http://download.opensuse.org new_ver=11.4 zypper ar $server/distribution/$new_ver/repo/oss/ openSUSE-$new_ver-Oss zypper ar $server/update/$new_ver/ openSUSE-$new_ver-Update
And remove the old repositories:
old_ver=11.3 zypper rr openSUSE-$old_ver-Oss zypper rr openSUSE-$old_ver-Update
Disable third party repositories or other openSUSE Build Service
repositories, because zypper dup is guaranteed to
work with the default repositories only (replace
repo-alias
with the name of the repository
you want to disable):
zypper mr -d repo-alias
Alternatively, you can lower the priority of these repositories.
Handling of Unresolved Dependencies | |
---|---|
zypper dup will remove all packages having unresolved dependencies, but it keeps packages of disabled repositories as long as their dependencies are satisfied. |
zypper dup ensures that all installed packages come from one of the available repositories. It does not consider the version, architecture, or vendor of the installed packages; thus it emulates a fresh installation. Packages that are no longer available in the repositories are considered orphaned. Such packages get uninstalled if their dependencies can not be satisfied. If they can be satisfied, such packages stay installed.
Once done, check your repository configuration with:
zypper lr -d
Refresh local metadata and repository contents with zypper ref.
Pull in zypper and the package management stack from the 11.4 repository with zypper up zypper.
Run the actual distribution upgrade with zypper dup. You are asked to confirm the license.
Perform basic system configuration with SuSEconfig.
Reboot the system with shutdown -r now.
Regardless of your overall updated environment, you can always update individual packages. From this point on, however, it is your responsibility to ensure that your system remains consistent.
Use the YaST software management tool to update packages as described in Chapter 4, Installing or Removing Software. Select components from the YaST package selection list according to your needs. If a newer version of a package exists, the version numbers of the installed and the available versions are listed in blue color in the column. If you select a package essential for the overall operation of the system, YaST issues a warning. Such packages should be updated only in the update mode. For example, many packages contain shared libraries. Updating these programs and applications in the running system may lead to system instability.
The individual modifications from version to version are outlined in the following in detail. This summary indicates, for example, whether basic settings have been completely reconfigured, configuration files have been moved to other places, or common applications have been significantly changed. Significant modifications that affect the daily use of the system at either the user level or the administrator level are mentioned here.
Problems and special issues of the various versions are published online as they are identified. See the links listed below. Important updates of individual packages can be accessed using the YaST Online Update. For more information, see Chapter 5, YaST Online Update.
Refer to the Product highlights
(http://en.opensuse.org/Product_highlights and the
Bugs
article in the openSUSE wiki at
http://en.opensuse.org/openSUSE:Most_annoying_bugs for
information about recent changes and issues.