Abstract
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 3, Installing or Removing Software and Chapter 4, YaST Online Update. Two ways to upgrade the system are discussed in the following sections— see Section 14.1.3, “Upgrading with YaST” and Section 14.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 tape device, 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 14.1, “List with df -h”, the root partition
to write down is /dev/sda3
(mounted as
/
).
Example 14.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.
Following the preparation procedure outlined in Section 14.1.1, “Preparations”, you can now upgrade your system:
Boot the system as for the installation, described in Section “System Start-Up for Installation” (Chapter 1, Installation with YaST, ↑Start-Up). 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 “Add-On Products” (Chapter 1, Installation with YaST, ↑Start-Up).
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 14.1.1, “Preparations”). YaST reads the old
fstab
on this partition to analyze and mount the
file systems listed there.
![]() | Persistant 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 offered in the 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, test the Internet connection as offered by the YaST dialog. Finally, YaST updates the remaining software and displays the release notes. Click
to write the YaST configuration.With the zypper command line utility you can upgrade to the next version of your distribution. Most importantly, you can initiate the system upgrade process from within the running system.
This 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.
To avoid unexpected errors during the upgrade process using zypper, minimize risky constellations.
Upgrade from the previous version (e.g., 11.1) to this version (11.2)—do not skip any minor version inbetween (this means, do not upgrade from 11.0 or earlier to 11.2 in one go). Make sure all available 11.1 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 running system.
For more information, see http://en.opensuse.org/Upgrade/Supported#Command_line.
![]() | Check Your System Backup |
---|---|
Before acutally starting the 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 4, YaST Online Update.
Configure the repositories you want to use as an update source. To get this right is essential. Either use YaST (see Section 3.4, “Managing Software Repositories and Services”) or zypper (see Section 7.1, “Using Zypper”).
To view your current repositories enter:
zypper lr -u
Increase the version number of the system repositories from 11.1 to 11.2; add the new 11.2 repositories with commands such as:
server=http://download.opensuse.org zypper ar $server/distribution/11.2/repo/oss/ openSUSE-11.2-Oss zypper ar $server/update/11.2/ openSUSE-11.2-Update
And remove the old repositories:
zypper rr openSUSE-11.1-Oss zypper rr openSUSE-11.1-Update
Disable third party repositories or other openSUSE Build Service repositories, because zypper dup is in test and guaranteed to work only with the default repositories:
zypper mr -d repo-alias
Conversely, 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 from the 11.2 repository with zypper in 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. Update advice can be found at http://www.novell.com/linux/download/updates/.
Select components from the YaST package selection list according to your needs. 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 at http://www.novell.com/products/linuxprofessional/downloads/ using the YaST Online Update. For more information, see Chapter 4, YaST Online Update.
Refer to the Bugs
article in the openSUSE wiki at
http://en.opensuse.org/Bugs.
The scope of the text installation pattern is very limited. It is not recommended to install this pattern without adding additional software. Add packages from other patterns. The purpose of this pattern is to have a minimal bootable system running on real hardware. It provides a multiuser system with local login, network setup, and default filesystems. No service is enabled by default and the only YaST modules installed are those needed during installation.
After setting up the update configuration at the end of the installation, YaST offers to add the following three software repositories as additional installation sources:
The “oss” repository contains the complete FTP distribution, including more packages than available on the CDs.
The “non-oss” repository contains software under a proprietary or closed source license.
The “debug” repository contains debuginfo packages used for debugging programs and libraries and getting backtraces. If an error occurs, this additional information helps you write good bug reports.
The source RPMs for “oss” are available at http://download.opensuse.org/distribution/10.3/src-oss, the source RPMs for “non-oss” are available at http://download.opensuse.org/distribution/10.3/src-non-oss.
The 1-CD installation media (GNOME or KDE) comes with language support for American English only.
Support for all the other languages is available separately. If you are interested in additional languages, add an extra online repository during installation which offers these translations. The “oss” repository, mentioned above in Section 14.2.1.2, “Adding Extra Software Repositories During Installation”, is such a repository.
Find more detailed information about new features at http://en.opensuse.org/AppArmor/Changes_AppArmor_2_1.
The syntax now distinguishes directories from files. There are additional minor syntax bug fixes.
The reporting of change_hat related events and information has changed.
The log messages and profile state (as available via
/proc/<pid>/attr/current) are reported as
/profile//hat
.
A new change_profile policy specification has been added.
change_profile is similar to change_hat, but allows changing to any
profile, including hats. The profiles to which you can change must be
specified. That is the only restriction. To change to a hat via
change_profile, the hat name hsa to be specified by separating the
profile and hat_name with //
.
GNOME 2 is installed under the /usr
file system
hierarchy since openSUSE 10.3 and KDE 4 now follows. KDE 3 will stay
in /opt
for compatibility reasons.
Before starting the update, make sure that there is enough disk space
under /usr
(approx. 2.5GB for both desktops is
required). If you are short on space under /usr
,
resize or rearrange your partitions.
There is a format change in Berkeley DB's on-disk log files between Berkely DB 4.3 and 4.4. This change prevents an installed OpenLDAP server from starting after the system update.
To avoid this issue, export existing LDAP Databases using the slapcat utility before starting the system update and re-import the data using slapadd after the update. On an already-updated machine, get the LDAP Server running as follows:
Stop the LDAP Server.
Remove all files starting with _db.
from the
database directory.
Start the LDAP server again.
libata uses /dev/sda
for the first hard disk,
instead of /dev/hda
. At present, disks with more
than 15 partitions are not handled automatically. You can disable
libata support by booting with the following kernel parameter:
hwprobe=-modules.pata
Now you see all the partitions over 15 again and can access them for installation.
The back-end technology of boot.crypto
has been
changed from cryptoloop
to
dm-crypt
.
Any old /etc/cryptotab
will work unmodified on
openSUSE 10.3 (modulo partition renaming issues from
hd
to
X
sd
due to libata
changes—see Section 14.2.1.8, “libata for IDE Devices”). Additionally,
X
/etc/crypttab
(note the missing
o
) is now supported, which also includes support for
LUKS volumes. In contrast to previous releases,
boot.crypto
is no longer enabled by default.
YaST enables it if you create an encrypted volume with YaST. You
can also manually enable it with the following command:
chkconfig boot.crypto on
It is still possible to use cryptoloop via losetup
and mount. Since we dropped the crude loop-AES patch
from the util-linux package, some parameters for
losetup (such as itercountk
and
pseed
) no longer exist. If any of these settings are
used in /etc/fstab
, the device cannot be mounted
directly any more. Migrate these settings to
/etc/crypttab
where
boot.crypto
contains the necessary compatability
code.
You now can configure quota for user accounts from within YaST. To
enable quota support activate the /etc/init.d/boot.quota
script is executed at boot
time. In the second stage, the advanced options for user accounts
provide the quota module where quota rules can be set.
If you enable quota support in the partitioner in the running system
after installation, either reboot the system or manually remount the
partitions concerned and execute the following command as
root
:
/etc/init.d/boot.quota restart
The Zeroconf service (also known as Bonjour, Multicast DNS, mDNS, or DNS-SD) is now provided by the Avahi stack instead of mDNSResponder. However, mDNSResponder and howl compatibility libraries are still available.
To enable mDNS for all network interfaces, use the
SuSEFirewall2 rule.Older Intel graphics chips are supported by two drivers: i810 and intel. Due to the high demand for features like native mode setting (no longer VESA BIOS based) and RANDR 1.2 support, the intel driver is the default on openSUSE 10.3.
When updating to openSUSE 10.3, the i810 driver is not exchanged with the intel driver. Use the sax2 -r command to switch to the intel driver.
The intel driver is still not as stable as i810. Use the sax2 -r -m 0=i810 command to switch back to i810, if you encounter problems that did not occur previously with the i810 driver. In those cases, consider to opening a bug report concerning the intel driver.
Two drivers are available now: the traditional
ipw3945
driver, which is installed by default, and
the new iwlwifi
driver as an alternative. Note the
following caveats:
ipw3945
works on hidden networks. It does not
survive suspend/resume cycles.
iwlwifi
does not work on hidden networks. It
supports suspend/resume cycles.
You can change the default using YaST. Click ipw3945d
package. The
alternate iwlwifi
driver is selected automatically
for installation.
The cdrecord package has been dropped from the distribution. The new wodim, genisoimage, and icedax packages from the cdrkit project can be used to record data or audio CDs on a CD recorder that conforms with the Orange Book standard. The following binaries have been renamed:
cdrecord to wodim
readcd to readom
mkisofs to genisoimage
cdda2wav to icedax
If your application relies on the old names, install the cdrkit-cdrtools-compat package. However, it would be appropriate to have native support for wodim in all front-end applications, because it offers some improvements:
The preferred way of specifying a device is
dev=/dev/cdrecorder
,
dev=/dev/hdc
, dev=/dev/sr0
,
etc.
Available devices can be listed with wodim -devices.
Suid root is not needed.
If you maintain such a front-end or script, consider adding native wodim support.
Use growisofs for writing DVDs. The graphical front-ends handle this transparently.
If you did not install the KDE desktop during the initial openSUSE 10.3 installation, install the KDE Base System and KDE 4 Base System patterns later. The KDE 4 application path is used as default. If you launch a KDE application such as Konqueror, the KDE 4 version of Konqueror loads instead of the KDE 3 version.
When you open an MP3 file in Kaffeine, you will see an error message telling you that the software required to play this file is not installed. openSUSE then offers to search for a suitable codec which you can install with YaST. You can also switch the engine from Xine to Gstreamer by clicking
+ , getting MP3 support.
Refer to the Bugs
article in the openSUSE wiki at
http://en.opensuse.org/Bugs.
Pressing Ctrl-Alt-Backspace on GNOME, KDE, or any other graphical desktop no longer terminates the X server. If you press Ctrl-Alt-Backspace within 2 seconds again, it terminates the X server. On most hardware you hear a beep after the first Ctrl-Alt-Backspace press.
In the past it was possible to accidentally terminate an X server using
this key combination. Nevertheless, if you want to continue to use this
key combination to terminate your X server, remove the following line
from the ServerFlags
section of the
/etc/X11/xorg.conf
file:
Option "ZapWarning" "on"
For more information, see the xorg.conf
manpage.
By default, the new YaST gtk front-end runs on the GNOME desktop, and the YaST qt front-end on all the other desktops. Feature-wise, the gtk front-end is very similar to the qt front-end described in the manuals.
An exception is the gtk software management module (see the Start-Up
guide in Chapter 3), which differs considerably from the qt port. To
start the qt flavor on the GNOME desktop, invoke it as
root
at the command-line with:
yast2 --qt
Vice versa on KDE, if you are interested in the gtk front-end:
yast2 --gtk
Squid 3.0 is now available. This version supports the Internet Content Adaptation Protocol (ICAP) and Edge Side Includes (ESI).
Check your /etc/squid/squid.conf
manually—
that is only required after an update. For example, after the update
proceed as follows:
cp /etc/squid/squid.conf /etc/squid/squid.conf.2.6 cp /etc/squid/squid.conf.rpmnew /etc/squid/squid.conf
Then transfer settings done for version 2.6 from
/etc/squid/squid.conf.2.6
to
/etc/squid/squid.conf
. For reference,
/etc/squid/squid.conf.default
, which comes with
squid 3.0, is also available.
Note the following changes:
changes in logging file access.log
squid.conf has new, renamed, and removed configuration options.
Features not available any longer:
• refresh_stale_hit option. Not yet ported. • ability to follow X-Forwarded-For. Not yet ported. • Full caching of Vary/ETag using If-None-Match. Only basic Vary cache supported. Not yet ported. • Mapping of server error messages. Not yet ported. • http_access2 access directive. Not yet ported. • Location header rewrites. Not yet ported. • umask directive. Not yet ported. • wais_relay. Feature dropped as it's equivalent to cache_peer + cache_peer_access. • urlgroup. Not yet ported. • collapsed forwarding. Not yet ported.
For more information, see file:/usr/share/doc/packages/squid3/RELEASENOTES.html after package installation.
On openSUSE 11.0 it is no longer possible to enable or disable Xgl with a graphical tool (such as with gnome-xgl-settings in the past). Only with the command line tool xgl-switch can you do this. Instead AIGLX is now always enabled on supported hardware. There are still some issues with AIGLX (e.g., Xvideo is usually slower, OpenGL applications are misplaced when you rotate compiz' cube), but the majority of our customers are requesting to have AIGLX enabled by default. If you prefer Xgl over AIGLX, use the command line tool xgl-switch to enable it:
xgl-switch --enable-xgl
If there are problems after enabling it (Xserver crashes, etc.) disable it again by running
xgl-switch --disable-xgl
The proprietary NVIDIA driver needs neither AIGLX nor Xgl for running with compositing managers, as it provides its own framework.
To enable Compiz, use the "Desktop Effects (simple-ccsm)" application from the application menu.
RPM Packages in openSUSE 11.0 are now LZMA-compressed. LZMA provides a better compression rate and is faster on decompression.
The rpm packager in openSUSE 10.3 and earlier cannot handle such RPM
packages. If you want to open or install LZMA-compressed RPMs on 10.3,
install the rpm
packager from 11.0 on your
10.3 system first. Note, this is not supported by Novell.
As a packager, remember to build packages for 10.3 (and earlier) without LZMA compression. Do not expect the user to install a new rpm packager on old systems.
The printing system based on CUPS 1.3.x (Common UNIX Printing System) no longer converts legacy encoded text files such as ISO-8859-1, windows-1252, and Asian encodings on its own. Only UTF-8 (and thus ASCII) is supported.
As a work-around to print legacy-encoded text files, convert before sending them to the CUPS server. To print an ISO-8859-1 text file, use:
iconv -f iso-8859-1 -t utf-8 filename.txt | lp -d printer
Note, the printing of PDF or PS or such binary files (JPEG, PNG, etc.) works as before.
Since CUPS 1.3.4 the cupsd accepts only UTF-8 encoded data. Because this change is not backward compatible, older CUPS clients such as CUPS 1.1 may no longer work. For an example, see http://www.cups.org/newsgroups.php?gcups.general+T+Q%22unsupported+charset%22.
Applications communicating with the cupsd (such as hp-setup or the YaST printer configuration) only work if either a plain 7-bit ASCII or a UTF-8 locale is used. The problem does not occur if you use a default UTF-8 locale, as has been pre-configured on openSUSE for several years.
A major update of the dhcpcd package (from 1.x to 3.x) is available.
Command line options are different. For a complete list check the
dhcpcd manpage and the
/usr/share/doc/packages/dhcpcd/dhcpcd-1-vs-3
file.
The inode size on the ext3 filesystem is increased from 128 to 256 by default. This change breaks many existing ext3 tools such as the windows tool EXTFS.
If you depend on such tools, install openSUSE with the old value.
SuSEfirewall2 implements a subtle change regarding packets that are
considered RELATED
by netfilter.
For example, to allow finer grained filtering of Samba broadcast
packets, RELATED
packets are no longer accepted
unconditionally. New variables starting with
FW_SERVICES_ACCEPT_RELATED_
have been introduced to
allow restricting RELATED
packet handling to certain
networks, protocols and ports.
This means adding connection tracking modules (conntrack modules) to
FW_LOAD_MODULES
no longer automatically results in
accepting the packets tagged by those modules. Additionally, you must
set variables starting with
FW_SERVICES_ACCEPT_RELATED_
to a suitable value.
If you want to use a fingerprint reader device, you must not encrypt the home directory. Otherwise logging in will fail, because decrypting during login is not possible in combination with an active fingerprint reader device.
To work around this limitation, set up a separate directory outside of the home directory and encrypt it manually.
Use the following xsetwacom Parameters now:
For normal orientation (0° rotation):
xrandr -o 0 && xsetwacom set "Mouse[7]" RotateNONE
For 90° rotation (clockwise, portrait):
xrandr -o 3 && xsetwacom set "Mouse[7]" Rotate CW
For 180° rotation (landscape):
xrandr -o 2 && xsetwacom set "Mouse[7]" Rotate HALF
For 270° rotation (counterclockwise, portrait):
xrandr -o 1 && xsetwacom set "Mouse[7]" Rotate CCW
Refer to the Bugs
article in the openSUSE wiki at
http://en.opensuse.org/Bugs.
During the installation, YaST attempts to detect displays and determine the display size and resolution. If you are installing on a notebook with the lid closed, it is not be possible to detect the display. To avoid this problem, keep the lid open during installation.
If detection fails, start YaST and click "Hardware" -> "Graphics Card and Monitor". Then configure the display manually.
Lenovo ThinkPad laptops have special code in the MBR (master boot record) because of the "Blue ThinkVantage button" functionality. If detecting and preparing it fails, it might be necessary to restore the boot sector.
If you have a ThinkPad, ensure that the bootloader is not installed into the MBR (verify it in the installation proposal!) and the MBR is not rewritten by generic code (in installation proposal select Bootloader -> Boot Loader Installation -> Boot Loader Options -> Write Generic Boot Code to MBR -- should be unchecked).
If your MBR gets rewritten, the ThinkVantage button will not work
anymore. The back-up of the MBR is stored in
/var/lib/YaST2/backup_boot_sectors/
.
Updating from openSUSE 11.0 to openSUSE 11.1 with the Xen Hypervisor may have an incorrect network configuration, because the update does not configure the bridged setup automatically.
Start the "YaST Control Center", choose "Virtualization" and then "Install Hypervisor and Tools" to start the bridge proposal for networking. Conversely, you can call "yast2 xen" on the commandline.
Note, if you install openSUSE 11.1 and configure Xen, you get a bridged setup through YaST automatically.
The man command now asks which man-page the user wants to see if man-pages with the same name exist in different sections. The user is expected to type the section number to make this man-page visible.
If you want to get back the previous behavior, set
MAN_POSIXLY_CORRECT=1
in a shell initialization file
such as ~/.bashrc
.
The YaST LDAP Server module does not store the LDAP Server
configuration in /etc/openldap/slapd.conf
any
longer. The module now uses OpenLDAP's dynamic configuration backend,
which stores the configuration in an LDAP database itself. That
database consists of a set of .ldif
files in
/etc/openldap/slapd.d
. To access the configuration
either use the yast2-ldap-server module or an LDAP client such as
ldapmodify or ldapsearch.
For details on the dymanic configuration of OpenLDAP, see the OpenLDAP Administration Guide.
By default, Network Manager is enabled and manages network connections. If you want configure it, you must use a Network Manager applet to change the settings. As long as Network Manager is running, YaST refuses to configure the network settings, because YaST and Network Manager have different sets of configuration options.
The modify_resolvconf script is removed in favor of
the more versatile netconfig script. The new script
handles specific network settings from multiple sources more flexibly
and transparently. For more information, see the updated manuals and
the netconfig
man-page.
In the shipped manuals, modify_resolvconf is erroneously referenced. We will correct it in the next release.
By default, the WLAN channels 12, 13, and 14 are disabled because it is not allowed to use these channels everywhere. If you want to use them in your region, see http://en.opensuse.org/Tracking_down_wireless_problems for more information.
On the command line, if you enter a command that could not be found, bash and zsh call the /usr/bin/command-not-found handler. command-not-found then searches a package database and proposes how to proceed.
If you want to disable this behavior, either remove the
command-not-found
package or unset
command_not_found_handle in your shell initialization file. For
example, add to ~/.bashrc
:
unset command_not_found_handle
Refer to the Bugs
article in the openSUSE wiki at
http://en.opensuse.org/Bugs.