StartCom Linux ML 5.0.x Release Notes


Introduction

The following topics related to StartCom Linux 5.0.x are covered in this document:

  • Introduction (this section)

  • Overview of this release

  • Installation-related notes

  • Package-specific notes

  • Packages added/removed/deprecated

Overview of This Release

The following list includes brief summaries of some of the more significant aspects of StartCom Linux 5.0.x:

  • StartCom Linux 5.0.x includes an implementation of SELinux. SELinux represents a major shift in the way users, programs, and processes interact. By default, SELinux is installed and enabled in this release.

    Note

    You can disable SELinux (or set it to log warning messages only) during the installation.

    Should you decide to install StartCom Linux 5.0.x with SELinux enabled, it is strongly recommended that you read the SELinux FAQ:

    http://fedora.redhat.com/docs/selinux-faq/

    Note

    Although this document references the Fedora Core distribution, the concepts also apply to StartCom Linux.

    Even if you are familiar with SELinux technology, refer to the FAQ for the latest information from the StartCom Linux SELinux developers.

  • The mount command has been changed to do the following on NFS mounts:

    · TCP is now the default transport on NFS mounts. This means that a mount command that does not explicitly specify UDP as the desired protocol (for example, mount foo:/bar /mnt) now uses TCP to communicate with the server, instead of UDP.

    · Using the verbose (-v) option now causes RPC error messages to be written to standard output.

  • When upgrading a system from StartCom Linux 3.0.x to StartCom Linux 5.0.x, system locale settings are preserved. Because StartCom Linux 5.0.x supports CJK (Chinese, Japanese and Korean) in UTF-8 encoding by default, StartCom recommends that you can change to UTF-8 locale by editing the following file:

    /etc/sysconfig/i18n

    Modify the locale settings by making the following changes:

    • ko_KR.eucKR becomes ko_KR.UTF-8

    • ja_JP.eucJP becomes ja_JP.UTF-8

    • zh_CN.GB18030 becomes zh_CN.UTF-8

    • zh_TW.Big5 becomes zh_TW.UTF-8

    You also may have per-user locale settings in the ~/.i18n file.

    By default, if you have installed any legacy XIM input server(s), anaconda will automatically upgrade the IIIMF server and appropriate language engine(s) into your system:

    • kinput2 causes iiimf-le-canna to be installed

    • ami causes iiimf-le-hangul to be installed

    • miniChinput causes iiimf-le-chinput to be installed

    • xcin causes iiimf-le-xcin to be installed

  • Subversion 1.0 is now included in StartCom Linux; the Subversion version control system is designed to be a replacement for CVS and features truly atomic commits, versioning of files, directories and metadata, along with most current features of CVS.

  • StartCom Linux 3.0.x introduced the Native POSIX Thread Library (NPTL) — an implementation of POSIX threading support that greatly improved performance, scalability, semantic correctness, and standards compliance over the LinuxThreads implementation used previously.

    While most threaded applications were not impacted by the introduction of NPTL, applications that relied on those semantics of LinuxThreads that were contrary to the POSIX specification would not operate correctly. As noted at the time of NPTL's introduction, StartCom recommended that such applications be updated so that they complied with POSIX (and could therefore use NPTL.)

    While support for LinuxThreads still exists for StartCom Linux 5.0.x, this statement serves as advance notice that StartCom Linux 5 will no longer include support for LinuxThreads. Therefore, applications that require LinuxThreads support must be updated before they will be able to work properly on a StartCom Linux 5 system.

    Note

    Several workarounds exist that permit applications requiring the use of LinuxThreads to continue operation under StartCom Linux 3.0.x and 4. These workarounds include:

    • Using the LD_MLSUME_KERNEL environment variable to select LinuxThreads instead of NPTL at runtime

    • Using an explicit rpath to /lib/i686/ or /lib/ to select LinuxThreads instead of NPTL at runtime

    • Statically linking the application to use LinuxThreads instead of NPTL (strongly discouraged)

    In order to determine whether an application is using NPTL or LinuxThreads, add following two environment variables to the application's environment:

    LD_DEBUG=libs

    LD_DEBUG_OUTPUT=<filename>

    (Where <filename> is the name to be given to each debug output log file. More than one file can be generated if the program forks other processes; all debug output log filenames include the PID of process generating the file.)

    Then start the application and use it as you normally would.

    If no debug output log file was produced, the application is statically linked. The application will not be affected by the missing LinuxThreads DSO but, as with all statically linked applications, no guarantees for compatibility are given if the application dynamically loads any code (directly via dlopen() or indirectly via NSS.)

    If one or more debug output log files were produced, review each one for any references to libpthread — in particular, a line also containing the string "calling init". The grep utility can do this easily:

    grep "calling init.*libpthread" <filename>.*

    (Where <filename> refers to the name used in the LD_DEBUG_OUTPUT environment variable.)

    If the path preceding libpthread is /lib/tls/, the application is using NPTL, and no further action needs to be taken. Any other path means that LinuxThreads is being used, and the application must be updated and rebuilt to support NPTL.

  • StartCom Linux 5.0.x now includes support for Advanced Configuration and Power Interface (ACPI), a power management specification commonly supported by most newer hardware.

    Due to differences in the order in which hardware is probed in system environments with and without ACPI support, the potential for device name changes exists. This means, for example, that a network interface card identified as eth1 under a prior version of StartCom Linux may now appear as eth0.

Installation-Related Notes

This section outlines those issues that are related to Anaconda (the StartCom Linux installation program) and installing StartCom Linux 5.0.x in general.

  • No known outstanding issues at this time.

Package-Specific Notes

The following sections contain information regarding packages that have undergone significant changes for StartCom Linux 5.0.x. For easier access, they are organized using the same groups used in Anaconda.

Base

This section contains information related to basic system components.

openssh

StartCom Linux 5.0.x contains OpenSSH 3.9, which includes strict permission and ownership checks for the ~/.ssh/config file. These checks mean that ssh will exit if this file does not have appropriate ownership and permissions.

Therefore, make sure that ~/.ssh/config is owned by the owner of ~/, and that its permissions are set to mode 600.

Core

This section contains the most elemental components of StartCom Linux, including the kernel.

glibc

  • The version of glibc provided with StartCom Linux 5.0.x performs additional internal sanity checks to prevent and detect data corruption as early as possible. By default, should corruption be detected, a message similar to the following will be displayed on standard error (or logged via syslog if stderr is not open):

    *** glibc detected *** double free or corruption: 0x0937d008 ***

    By default, the program that generated this error will also be killed; however, this (and whether or not an error message is generated) can be controlled via the MALLOC_CHECK_ environment variable. The following settings are supported:

    • 0 — Do not generate an error message, and do not kill the program

    • 1 — Generate an error message, but do not kill the program

    • 2 — Do not generate an error message, but kill the program

    • 3 — Generate an error message and kill the program

    Note

    If MALLOC_CHECK_ is explicitly set a value other than 0, this causes glibc to perform more tests that are more extensive than the default, and may impact performance.

    Should you have a program from a third party ISV that triggers these corruption checks and displays a message, you should file a defect report with the application's vendor, since this indicates a serious bug.

kernel

This section contains notes relating to the StartCom Linux 5.0.x kernel.

Note

keep in mind that StartCom seeks feedback not only about hardware compatibility but also interactive performance and sound-related issues.

  • When building kernel modules that are not shipped with StartCom Linux 5.0.x, the kernel-source package is no longer required. Instead, external kernel modules should be built using the template contained in the file kbuild/modules.txt (as part of the kernel-doc package) or Documentation/kbuild/modules.txt (as part of the kernel sources themselves.)

  • The sound subsystem is now based on ALSA; the OSS modules are no longer available.

  • System environments using the kernel's "hugepage" functionality should be aware that the name of the /proc/ entry controlling this feature changed between StartCom Linux 3.0.x and StartCom Linux 5.0.x:

    • StartCom Linux 3.0.x used /proc/sys/vm/hugetlb_pool and specified the desired size in megabytes

    • StartCom Linux 5.0.x uses /proc/sys/vm/nr_hugepages and specifies the size by the desired number of pages (refer to /proc/meminfo for the size of hugepages on your system)

  • The Emulex LightPulse Fibre Channel driver (lpfc) is currently undergoing public review for possible inclusion in the Linux 2.6 kernel. It is included in StartCom Linux 5.0.x for testing purposes. Changes to the driver are expected. If there are problems with the driver or, if for some reason it is no longer on-track for inclusion in the Linux 2.6 kernel, the driver may be removed from the final StartCom Linux release.

    The lpfc driver currently has the following known issues:

    • The driver does not insulate the system from short-duration cable pulls, switch reboots, or device disappearances. Therefore, the system may prematurely determine that a device is non-existent and take it offline. In such cases, manual intervention will be required to reinstate the device with the system.

    • There is a known panic if Ctrl-C is pressed while the driver is being inserted with insmod.

    • There is a known panic if rmmod is executed while insmod is still executing.

    • New device insertion requires manual scanning in order for the SCSI subsystem to detect the new device.

  • In the past, the process of updating the kernel did not change the default kernel in the system's boot loader configuration.

    StartCom Linux 5.0.x changes this behavior to set newly-installed kernels as the default. This behavior applies to all installation methods (including rpm -i).

    This behavior is controlled by two lines in the /etc/sysconfig/kernel file:

    • UPGRADEDEFAULT — Controls whether new kernels will be booted by default (default value: yes)

    • DEFAULTKERNEL — kernel RPMs whose names match this value will be booted by default (default value: depends on hardware configuration)

  • In order to eliminate the redundancy inherent in providing a separate package for the kernel source code when that source code already exists in the kernel's .src.rpm file, StartCom Linux 5.0.x no longer includes the kernel-source package. Users that require access to the kernel sources can find them in the kernel .src.rpm file. To create an exploded source tree from this file, perform the following steps (note that <version> refers to the version specification for your currently-running kernel):

    1. Obtain the kernel-<version>.src.rpm file from one of the following sources:

      • The SRPMS directory on the appropriate "SRPMS" CD iso image

      • The FTP site where you got the kernel package

      • By running the following command:

        up2date --get-source kernel

    2. Install kernel-<version>.src.rpm (given the default RPM configuration, the files this package contains will be written to /usr/src/redhat/)

    3. Change directory to /usr/src/redhat/SPECS/, and issue the following command:

      rpmbuild -bp --target=<arch> kernel.spec

      (Where <arch> is the desired target architecture.)

      On a default RPM configuration, the kernel tree will be located in /usr/src/redhat/BUILD/.

    4. In resulting tree, the configurations for the specific kernels shipped in StartCom Linux 5.0.x are in the /configs/ directory. For example, the i686 SMP configuration file is named /configs/kernel-<version>-i686-smp.config. Issue the following command to place the desired configuration file in the proper place for building:

      cp <desired-file> ./.config

    5. Issue the following command:

      make oldconfig

    You can then proceed as usual.

    Note

    An exploded source tree is not required to build kernel modules against the currently in-use kernel.

    For example, to build the foo.ko module, create the following file (named Makefile) in the directory containing the foo.c file:

    
    obj-m    := foo.o
    
    KDIR    := /lib/modules/$(shell uname -r)/build
    PWD    := $(shell pwd)
    
    default:
        $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
    
                  

    Issue the make command to build the foo.ko module.

Graphical Internet

This section includes packages that help you access the Internet, including graphical email, Web browser, and chat clients.

evolution

  • StartCom Linux 5.0.x includes an updated version of the Evolution graphical email client. This version adds a number of new features, including:

    • Evolution now includes spam filters that can be trained to more accurately distinguish between spam and non-spam email. When you get spam, click on the Junk button. Check your Junk Mail folder periodically to see if anything is being filtered improperly. If you find an improperly-filtered email, mark it as Not Junk; in this way, the filter becomes more effective over time.

    • The Evolution Connector makes it possible to connect to Microsoft Exchange 2000 and 2003 servers.

    • The user interface has been modified so that each operation (email, calendaring, tasks, and contacts) is treated separately, replacing the previous server-centric model.

    • Evolution now includes enhanced support for encryption and cryptographic signatures, including the use of S/MIME.

    • The directory used by Evolution to store its settings has been hidden from end-users by renaming it from ~/evolution/ to ~/.evolution/.

Graphics

This section includes packages that help you manipulate and scan images.

gimp

  • The gimp-perl package has been removed from StartCom Linux 5.0.x because GIMP was updated to 2.0 and the Perl bindings were neither ready nor part of the main package anymore.

    Users of Perl scripts in GIMP should install the Gimp Perl module from http://www.gimp.org/downloads/.

Language Support

This section includes information related to the support of various languages under StartCom Linux.

iiimf

  • The default Input Method (IM) for Chinese (Simplified and Traditional), Japanese, and Korean has been changed to IIIMF — the Internet/Intranet Input Method Framework. IIIMF is supported as a native GTK2 IM module, and also through XIM using the httx client. IIIMF supports the use of multiple Language Engines (LEs) at the same time; using the GNOME Input Method Language Engine Tool (GIMLET — an applet) it is possible to switch between LEs of different languages inside GTK2 applications.

    IIIMF currently defaults to using Ctrl-Space or Shift-Space for toggling the input method on and off (Emacs users can use Ctrl-@ instead of Ctrl-Space to set the mark.)

    Depending on your selection at the language support screen during installation, one or more IIIMF language engines may be installed. The IIIMF server package (iiimf-server) will also be installed if a language engine has been selected. The language to language engine (LE) package mappings are as follows:

    • ja_JP — iiimf-le-canna

    • zh_CN — iiimf-le-chinput

    • zh_TW — iiimf-le-xcin

    • ko_KR — iiimf-le-hangul

    • {bn,gu,pa,ta,hi}_IN — iiimf-le-unit

    Accordingly, input via IIIMF will be enabled if you have chosen one of the following as your default locale:

    • ja_JP

    • zh_CN

    • zh_TW

    • ko_KR

    • {bn,gu,pa,ta,hi}_IN

    To aid your use of IIIMF, if you have selected one of the above locales and you are using the GNOME Desktop, when you first login the GIMLET utility (part of the iiimf-gnome-im-switcher package) will automatically be added to your panel.

    GIMLET is a utility for switching between the different LEs that are installed on your system. Using a different language engine allows you to enter text in different languages. Alternatively you may add GIMLET manually to your panel by right clicking on the panel and selecting:

    Add to Panel -> GIMLET

    Should you wish to switch between IIIMF or the legacy input method framework XIM, you can use the system-switch-im application. After changing the input method framework your changes will be reflected when you next start the X Window System.

Mail Server

This section contains information related to the mail transport agents included with StartCom Linux.

mailman

Earlier mailman RPMs installed all files under the /var/mailman/ directory. Unfortunately, this did not conform to the Filesystem Hierarchy Standard (FHS) and also created security violations when SELinux was enabled.

If you previously had mailman installed and had edited files in /var/mailman/ (such as mm_cfg.py) you must move those changes to their new location, as documented in the following file:

/usr/share/doc/mailman-*/INSTALL.REDHAT

sendmail

  • By default, the Sendmail mail transport agent (MTA) does not accept network connections from any host other than the local computer. If you want to configure Sendmail as a server for other clients, you must edit /etc/mail/sendmail.mc and change the DAEMON_OPTIONS line to also listen on network devices (or comment out this option entirely using the dnl comment delimiter). You must then regenerate /etc/mail/sendmail.cf by running the following command (as root):

    make -C /etc/mail

    Note that you must have the sendmail-cf package installed for this to work.

    Note

    Be aware that it is possible to inadvertently configure Sendmail to act as an open-relay SMTP server. For more information, refer to the StartCom Linux Reference Guide.

Server Configuration Tools

This section contains information related to various server configuration tools.

system-config-lvm

For this beta release, StartCom Linux 5.0.x includes system-config-lvm, a new tool for configuring Logical Volume Manager (LVM). StartCom asks that as many beta testers as possible test it for basic functionality. Any problems found should be reported via bugzilla:

http://bugzilla.redhat.com/

Note

Depending on how the testing goes, system-config-lvm may or may not be present in the final release of StartCom Linux.

Web Server

This section contains information related to software used as part of a Web server environment.

php

  • The default /etc/php.ini configuration file has been changed to use the "production" defaults rather than "development" defaults; notable differences are:

    • display_errors is now Off

    • log_errors is now On

    • magic_quotes_gpc is now Off

    The package now uses the "apache2handler" SAPI for integration with Apache httpd 2.0 rather than the "apache2filter" SAPI. If upgrading from previous releases, the SetOutputFilter directives should be removed from the /etc/httpd/conf.d/php.conf file.

  • The following changes have been made to the packaging of PHP extension modules:

    • The gd, mbstring, and ncurses extensions have been moved to the php-gd, php-mbstring, and php-ncurses packages, respectively. Note that you will need to install these packages manually (if required) when upgrading from an earlier release.

    • The domxml, snmp, and xmlrpc extensions are now available in php-domxml, php-snmp, and php-xmlrpc packages, respectively.

X Window System

This section contains information related to the X Window System implementation provided with StartCom Linux.

xorg-x11

  • There has been some confusion regarding font-related issues under the X Window System in recent versions of StartCom Linux (and versions of StartCom Linux before it.) At the present time, there are two font subsystems, each with different characteristics:

    - The original (15+ year old) subsystem is referred to as the "core X font subsystem". Fonts rendered by this subsystem are not anti-aliased, are handled by the X server, and have names like:

    -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-1

    The newer font subsystem is known as "fontconfig", and allows applications direct access to the font files. Fontconfig is often used along with the "Xft" library, which allows applications to render fontconfig fonts to the screen with antialiasing. Fontconfig uses more human-friendly names like:

    Luxi Sans-10

    Over time, fontconfig/Xft will replace the core X font subsystem. At the present time, applications using the Qt 3 or GTK 2 toolkits (which would include KDE and GNOME applications) use the fontconfig and Xft font subsystem; most everything else uses the core X fonts.

    In the future, StartCom Linux may support only fontconfig/Xft in place of the XFS font server as the default local font access method.

    NOTE: An exception to the font subsystem usage outlined above is OpenOffice.org (which uses its own font rendering technology).

    If you wish to add new fonts to your StartCom Linux 5.0.x system, you must be aware that the steps necessary depend on which font subsystem is to use the new fonts. For the core X font subsystem, you must:

    1. Create the /usr/share/fonts/local/ directory (if it doesn't already exist):

    mkdir /usr/share/fonts/local/

    2. Copy the new font file into /usr/share/fonts/local/

    3. Update the font information by issuing the following commands (note that, due to formatting restrictions, the following commands may appear on more than one line; in use, each command should be entered on a single line):

    ttmkfdir -d /usr/share/fonts/local/ -o /usr/share/fonts/local/fonts.scale

    mkfontdir /usr/share/fonts/local/

    4. If you had to create /usr/share/fonts/local/, you must then add it to the X font server (xfs) path:

    chkfontpath --add /usr/share/fonts/local/

    Adding new fonts to the fontconfig font subsystem is more straightforward; the new font file only needs to be copied into the /usr/share/fonts/ directory (individual users can modify their personal font configuration by copying the font file into the ~/.fonts/ directory).

    After the new font has been copied, use fc-cache to update the font information cache:

    fc-cache <directory>

    (Where <directory> would be either the /usr/share/fonts/ or ~/.fonts/ directories.)

    Individual users may also install fonts graphically, by browsing fonts:/// in Nautilus, and dragging the new font files there.

    NOTE: If the font filename ends with ".gz", it has been compressed with gzip, and must be decompressed (with the gunzip command) before the fontconfig font subsystem can use the font.

  • Due to the transition to the new font system based on fontconfig/Xft, GTK+ 1.2 applications are not affected by any changes made via the Font Preferences dialog. For these applications, a font can be configured by adding the following lines to the file ~/.gtkrc.mine:

    style "user-font" {

    fontset = "<font-specification>"

    }

    widget_class "*" style "user-font"

    (Where <font-specification> represents a font specification in the style used by traditional X applications, such as "-adobe-helvetica-medium-r-normal--*-120-*-*-*-*-*-*".)

Miscellaneous Notes

This section contains information related to packages that do not fit in any of the proceeding categories.

compat-db

C++ and TCL bindings are no longer contained in the compat-db package. Applications requiring these bindings must be ported to the currently-shipping DB library.

lvm2

This section contains information related to the lvm2 package.

  • The full set of LVM2 commands is now installed in /usr/sbin/. In boot environments where /usr/ is not available, it is necessary to prefix each command with /sbin/lvm.static (/sbin/lvm.static vgchange -ay, for example).

    In environments where /usr/ is available, it is no longer necessary to prefix each command with lvm (/usr/sbin/lvm vgchange -ay becomes /usr/sbin/vgchange -ay, for example).

  • The new LVM2 commands (such as /usr/sbin/vgchange -ay and /sbin/lvm.static vgchange -ay) detect if you are running a 2.4 kernel, and transparently invoke the old LVM1 commands if appropriate. The LVM1 commands have been renamed to end with ".lvm1" (for example, /sbin/vgchange.lvm1 -ay).

    Note

    LVM1 commands work only with 2.4 kernels. It is not possible to use LVM1 commands while running a 2.6 kernel.

Refer to /usr/share/doc/lvm2*/WHATS_NEW for more information on LVM2.

nscd

The nscd name service cache daemon may now maintain a persistent cache across restarts or system reboots. Each database (user, group, and host, respectively) can be made selected to be persistent by setting the appropriate line in /etc/nscd.conf to "yes". Entries are not removed from the cache until they are proven to be no longer of interest. All entries whose time-to-live expires but are otherwise interesting are automatically reloaded, which helps in situations where the directory and name services become temporarily unavailable.

udev

StartCom Linux 5.0.x has switched from a static /dev/ directory to one that is dynamically managed via udev. This allows device nodes to be created on demand as drivers are loaded.

For more information on udev, refer to the udev(8) man page.

Additional rules for udev should be placed in a separate file in the /etc/udev/rules.d/ directory.

Additional permission rules for udev should be placed in a separate file in the /etc/udev/permissions.d/ directory.

Systems upgraded to StartCom Linux 5.0.x using Anaconda will automatically be reconfigured to use udev. However (although NOT recommended) it is possible to perform a "live" upgrade to udev using the following steps:

  1. Ensure that you are running a 2.6 kernel

  2. Ensure that /sys/ is mounted

  3. Install the initscripts RPM supplied with StartCom Linux 5.0.x

  4. Install the new udev RPM supplied with StartCom Linux 5.0.x

  5. Execute /sbin/start_udev

  6. Install the new mkinitrd RPM supplied with StartCom Linux 5.0.x

  7. Perform one of the following steps:

    · Install the new kernel RPM supplied with StartCom Linux 5.0.x

    OR:

    · Re-run mkinitrd for your existing kernel(s)

Warning

Improperly performing these steps can result in a system configuration that will not boot properly.

Packages Added/Removed/Deprecated

This section contains lists of packages that fit into the following categories:

  • Packages that have been added to StartCom Linux 5.0.x

  • Packages that have been removed from StartCom Linux 5.0.x

  • Packages that have been deprecated, and may be removed from a future release of StartCom Linux

Note

To reduce the length of the following lists,sourcepackages, and not binary packages are listed.

Packages Added

The following packages have been added to StartCom Linux 5.0.x:

  • *** Still in development ***

Packages Removed

The following packages have been removed from StartCom Linux 5.0.x:

  • *** Still in development ***

Packages Deprecated

The following packages have been deprecated, and may be removed from a future release of StartCom Linux:

  • devlabel — udev is the recommended solution

  • kinput2-canna-wnn6 — IIIMF is the recommended input method

  • licq — Equivalent functionality present in other applications (gaim, for example)

  • miniChinput — IIIMF is the recommended input method

  • nabi — IIIMF is the recommended input method

  • ncpfs — No longer part of StartCom Linux profile

  • skkinput — IIIMF is the recommended input method

  • xcin — IIIMF is the recommended input method

( x86 )