2.2. Software Changes from Version to Version

The individual aspects changed from version to version are outlined in the following sections in detail. This summary indicates, for example, whether basic settings have been completely reconfigured, whether configuration files have been moved to other places, or whether common applications have been significantly changed. The modifications that affect the daily use of the system at either the user level or the administrator level are mentioned below. The list is by no means complete.

Problems and special issues of the respective versions are published online as they are identified. See the links listed below. Important updates of individual packages can be accessed at http://www.suse.de/en/support/download/.

2.2.1. From 7.3 to 8.0

Problems and Special Issues: http://portal.suse.com/sdb/en/2002/04/bugs80.html

  • Boot disks are shipped only as floppy images (previously disks directory, now boot). A boot disk is only required if you cannot boot from CD. Depending on your hardware or installation preferences, you can also create floppies from the images modules1, modules2, etc. Read Section 1.4. “Tips and Tricks” or Section 1.4.2. “Creating a Boot Disk in a UNIX-Type System” for information about creating these disks.

  • YaST2 has completely replaced YaST1, even in the text and console mode. When the text says YaST, it always refers to the new version.

  • Some BIOSes require the kernel parameter realmode-power-off, which was known as real-mode-poweroff up to kernel version 2.4.12.

  • The START variables of the rc.config for launching services are no longer required. Services are started if the respective links exist in the runlevel directories. These links are created with insserv.

  • System services are configured by variable lines in the files located under /etc/sysconfig. The settings in /etc/rc.config.d will be applied to the update.

  • /etc/init.d/boot has been split into several scripts and moved to other packages, where this made sense (see kbd, isapnp, lvm, etc.). See Section 13.4. “Init Scripts”.

  • Some changes have been made in the network area. Read Section 14.4. “Network Integration” for more information.

  • logrotate is used to manage log files. /etc/logfiles is no longer necessary. See Section 12.2.3. “Log Files: the Package logrotate”.

  • The root login over telnet or rlogin can be permitted by entering settings in the files under /etc/pam.d. Due to security risks, ROOT_LOGIN_REMOTE can no longer be set to yes.

  • PASSWD_USE_CRACKLIB can be activated with YaST.

  • If NIS files for autofs will be distributed over NIS, the YaST NIS client module should be used for configuration. There, select Start Automounter. This aspect has made the USE_NIS_FOR_AUTOFS variable obsolete.

  • The locate tool for quickly finding files is no longer included in the standard software installation. If desired, install it (find-locate). If installed, the updatedb process will be started automatically about fifteen minutes after the computer is booted, just as in previous versions.

  • The mouse support for pine is activated. This means that pine in an xterm can also be operated with a mouse (or a similar input device) by clicking the menu items. This, however, also means that cut and paste only works by using Shift when the mouse support is activated. This is deactivated with a new installation. It is, however, not excluded that the function is still active following an update (when an older ~/.pinerc is present). The option enable-mouse-in-xterm can be deactivated in the configuration for pine.

2.2.2. From 8.0 to 8.1

Problems and Special Issues:


  • Changes in the user and group names: To comply with UnitedLinux, some entries in /etc/passwd and /etc/group have been adjusted accordingly.

    • Changed users: ftp is now in group ftp (not in daemon).

    • Renamed groups: www (was wwwadmin), games (was game).

    • New groups: ftp (with GID 50), floppy (with GID 19), cdrom (with GID 20), console (with GID 21), utmp (with GID 22).

  • Changes related to FHS (see Section 12.1.2. “File System Hierarchy Standard (FHS)”):

    • An example environment for HTTPD (Apache) is created at /srv/www (formerly /usr/local/httpd).

    • An example environment for FTP is created at /srv/ftp (formerly /usr/local/ftp). ftpdir is required for this purpose.

  • To ease access to the desired software, the single packages are not stored in a few bulky series any more, but rather in accessible RPM groups. This also means the CDs no longer contain cryptic directories under suse, but only few directories named after architectures, for example, ppc, i586, or noarch.

  • The installation status of the following programs has changed for a new installation:

    • The boot loader GRUB, which offers more possibilities than LILO, is installed by default. However, LILO is retained if the system is updated.

    • The mailer postfix instead of sendmail.

    • The modern mailing list application mailman is installed instead of majordomo.

    • Select harden_suse manually if needed and read the enclosed documentation.

  • Split packages: rpm to rpm and rpm-devel, popt to popt and popt-devel, libz to zlib and zlib-devel.

    yast2-trans-* is now split by languages: yast2-trans-cs (Czech), yast2-trans-de (German), yast2-trans-es (Spanish), etc. Not all languages are installed to save hard disk space. Install the required packages for the YaST language support as needed.

  • Renamed packages: bzip to bzip2.

  • Packages no longer supplied: openldap, use openldap2; su1, use sudo.

2.2.3. From 8.1 to 8.2

Problems and Special Issues: http://portal.suse.com/sdb/en/2003/04/bugs82.html

  • 3D support for nVidia-based graphics cards (changes): The RPM NVIDIA_GLX/NVIDIA_kernel (including the script switch2nvidia_glx) is no longer included. Download the nVidia installer for Linux IA32 from the nVidia web site (http://www.nvidia.com), install the driver with this installer, and use SaX2 or YaST to activate 3D support.

  • During a new installation, xinetd is installed instead of inetd and configured with secure values. See directory /etc/xinetd.d. However, during a system update, inetd is retained.

  • The current PostgreSQL version is 7.3. When switching from version 7.2.x, perform a dump/restore with pg_dump. If your application queries the system catalogs, additional adaptions are necessary, as schemas were introduced in version 7.3. For more information, visit http://www.ca.postgresql.org/docs/momjian/upgrade_tips_7.3.

  • Version 4 of stunnel no longer supports any command-line options. However, the enclosed script /usr/sbin/stunnel3_wrapper can convert the command-line options into a configuration file that is suitable for stunnel and use it when the program is started (replace OPTIONS with your options):

    /usr/sbin/stunnel3_wrapper stunnel OPTIONS

    The generated configuration file will be printed to the default output, enabling the use of these specifications for generating a permanent configuration file.

  • If your own applications depend on the directory jade_dsl and the files previously installed there, adapt them to the new directory /usr/share/sgml/openjade or create a link as root:

    openjade (openjade) is the DSSSL engine currently used instead of jade (jade_dsl) when db2x.sh (docbook-toys) is run. For compatibility reasons, the individual programs are also available without the prefix o.

    In case you own applications depend on the directory jade_dsl and the files previously installed there, the applications must be adapted to the new directory /usr/share/sgml/openjade or a link can be created as root:

    cd /usr/share/sgml rm jade_dsl ln -s openjade jade_dsl

    To avoid a conflict with rzsz, the command-line tool sx continues to be called s2x, sgml2xml, or osx.

2.2.4. From 8.2 to 9.0

Problems and Special Issues: http://portal.suse.com/sdb/en/2003/07/bugs90.html

  • Version 4 of the RPM package manager is now available. The functionality for building packages has been shifted to the separate program rpmbuild. rpm continues to be used for the installation, updates, and database queries. See Section 2.3. “RPM — the Package Manager”.

  • The package foomatic-filters is now available for printing. The content was split from the cups-drivers, as it can be used for printing even if CUPS is not installed. In this way, YaST supports configurations that are independent of the print system (CUPS, LPRng). The configuration file for this package is /etc/foomatic/filter.conf.

  • The packages foomatic-filters and cups-drivers are now also required for LPRng and lpdfilter.

  • The XML resources of the enclosed software packages can be accessed by means of the entries in /etc/xml/suse-catalog.xml. This file should not be edited with xmlcatalog, as this would result in the deletion of structural comments required for correct updates. /etc/xml/suse-catalog.xml is accessed by means of a nextCatalog statement in /etc/xml/catalog, enabling XML tools like xmllint or xsltproc to find the local resources automatically.

2.2.5. From 9.0 to 9.1

Problems and Special Issues: http://sdb.suse.de/sdb/de/html/bugs91.html

  • SUSE LINUX is now based entirely on kernel 2.6. The predecessor version 2.4 should no longer be used, as the enclosed applications may not work with kernel 2.4. Moreover, note the following details:

    • The loading of modules is now configured by means of the file /etc/modprobe.conf. The file /etc/modules.conf is obsolete. YaST will try to convert the file (see also script /sbin/generate-modprobe.conf).

    • Modules now have the suffix .ko.

    • The module ide-scsi is no longer needed for burning CDs.

    • The prefix snd_ has been removed from the ALSA sound module options.

    • sysfs now complements the /proc file system.

    • The power management (especially ACPI) has been improved and can now be configured by means of a YaST module.

  • See the above-mentioned portal articles for changes in the input devices.

  • Applications linked against NGPT (Next Generation POSIX Threading) do not work with glibc 2.3.x. All affected applications that are not shipped with SUSE LINUX must be compiled with linuxthreads or with NPTL (Native POSIX Thread Library). NPTL is preferred, as this is the standard for the future.

    If NPTL causes difficulties, the older linuxthreads implementation can be used by setting the following environment variable (replace kernel-version with the version number of the respective kernel):


    The following version numbers are possible:

    2.2.5 (i386, s390):

    linuxthreads without floating stacks

    2.4.1 (AMD64, IPF, s390x, i686):

    linuxthread with floating stacks

    Notes regarding the kernel and linuxthreads with floating stacks:

    Applications using errno, h_errno, and _res must include the header files (errno.h, netdb.h, and resolv.h) with #include. For C++ programs with multithread support that use thread cancellation, the environment variable LD_ASSUME_KERNEL=2.4.1 must be used to prompt the use of the linuxthreads library.

  • SUSE LINUX 9.1 contains the thread package NPTL (Native POSIX Thread Library). NPTL is binary-compatible with the older linuxthreads library. However, areas in which linuxthreads violates the POSIX standard require NPTL adaptions. This includes the following: signal handling, getpid returns the same value in all threads, and thread handlers registered with pthread_atfork do not work if vfork is used.

  • Currently, the default encoding for the system is UTF-8. Thus, when performing a standard installation, a locale is set with .UTF-8 encoding (e.g., en_US.UTF-8).

  • In the default setting, shell tools from the coreutils package (tail, chown, head, sort, etc.) no longer comply with the POSIX standard of 1992 but with the POSIX standard of 2001 (Single UNIX Specification, version 3 == IEEE Std 1003.1-2001 == ISO/IEC 9945:2002). The old behavior can be forced with an environment variable:


    The new value is 200112 and is used the default for _POSIX2_VERSION. The SUS standard can be reviewed at the following URL (free of charge, but registration is required):


    Table 2.1. Comparison POSIX 1992 vs. POSIX 2001

    POSIX 1992POSIX 2001
    chown tux.userschown tux:users
    tail +3tail -n +3
    head -1head -n 1
    sort +3sort -k +3
    nice -10nice -n 10
    split -10split -l 10

    Third-party software may not yet comply with the new standard. In this case, set the environment variable as described above: _POSIX2_VERSION=199209.

  • /etc/gshadow has been abandoned and removed, as this file is superfluous for the following reasons:

    • It is not supported by glibc.

    • There is no official interface for this file; even the shadow suite does not contain such an interface.

    • Most tools that check the group password do not support the file and ignore it for the said reasons.

  • The FHS (see 12.1.2. “File System Hierarchy Standard (FHS)”) now requires XML resources (DTDs, stylesheets, etc.) to be installed in /usr/share/xml. Therefore, some directories are no longer available in /usr/share/sgml. If you encounter problems, modify your scripts or makefiles or use the official catalogs (especially /etc/xml/catalog or /etc/sgml/catalog).