Release Notes for Debian GNU/Linux 6.0 (squeeze), ARM EABI --------------------------------------------------------------------- The Debian Documentation Project (http://www.debian.org/doc/) This document is free software; you can redistribute it and/or     modify it under the terms of the GNU General Public License, version 2, as published by the Free Software Foundation. This program is distributed in the hope that it will be useful,     but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License     along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. The license text can also be found at http://www.gnu.org/licenses     /gpl-2.0.html (http://www.gnu.org/licenses/gpl-2.0.html) and /usr /share/common-licenses/GPL-2 on Debian GNU/Linux. February 4th, 2011 --------------------------------------------------------------------- Table of Contents 1. Introduction 1.1. Reporting bugs on this document 1.2. Contributing upgrade reports 1.3. Sources for this document 2. What's new in Debian GNU/Linux 6.0 2.1. What's new for ARM? 2.2. What's new in the distribution? 2.2.1. CDs, DVDs and BDs 2.2.2. Firmware moved to the non-free section 2.2.3. Package management 2.2.4. Dependency booting 2.2.5. Unified keyboard settings 2.2.6. Kernel mode setting 2.2.7. LDAP support 2.2.8. The stable-updates section 2.2.9. backports.org/backports.debian.org 2.3. Comprehensive support for neuroimaging research 3. Installation System 3.1. What's new in the installation system? 3.1.1. Major changes 3.1.2. Automated installation 4. Upgrades from Debian 5.0 (lenny) 4.1. Preparing for the upgrade 4.1.1. Back up any data or configuration information 4.1.2. Inform users in advance 4.1.3. Prepare for downtime on services 4.1.4. Prepare for recovery 4.1.5. Prepare a safe environment for the upgrade 4.1.6. Remove conflicting packages 4.2. Checking system status 4.2.1. Review actions pending in package manager 4.2.2. Disabling APT pinning 4.2.3. Checking packages status 4.2.4. The proposed-updates section 4.2.5. Unofficial sources and backports 4.3. Preparing sources for APT 4.3.1. Adding APT Internet sources 4.3.2. Adding APT sources for a local mirror 4.3.3. Adding APT source from CD-ROM or DVD 4.4. Upgrading packages 4.4.1. Recording the session 4.4.2. Updating the package list 4.4.3. Make sure you have sufficient space for the upgrade 4.4.4. Minimal system upgrade 4.4.5. Upgrading the kernel and udev 4.4.6. Upgrading the system 4.5. Possible issues during upgrade 4.5.1. cryptoloop support not included in the squeeze Linux kernel 4.5.2. Expected removals 4.5.3. Errors running aptitude or apt-get 4.5.4. Conflicts or Pre-Depends loops 4.5.5. File conflicts 4.5.6. Configuration changes 4.5.7. Change of session to console 4.5.8. Special care for specific packages 4.6. Upgrading your kernel and related packages 4.6.1. Installing the kernel metapackage 4.6.2. Device enumeration reordering 4.6.3. Boot timing issues (waiting for root device) 4.7. Preparing for the next release 4.8. Deprecated components 4.9. Obsolete packages 4.9.1. Dummy packages 5. Issues to be aware of for squeeze 5.1. Potential problems 5.1.1. Migration of disk drivers from IDE to PATA subsystem 5.1.2. mdadm metadata format change requires recent Grub 5.1.3. pam_userdb.so breakage with newer libdb 5.1.4. Potential issues with diversions of /bin/sh 5.1.5. Change in kernel policy regarding resource conflicts 5.2. LDAP support 5.3. sieve service moving to its IANA-allocated port 5.4. Security status of web browsers 5.5. KDE desktop 5.5.1. Upgrading from KDE 3 5.5.2. New KDE metapackages 5.6. GNOME desktop changes and support 5.6.1. GDM 2.20 and 2.30 5.6.2. Device and other administrative permissions 5.6.3. network-manager and ifupdown interaction 5.7. Graphics stack changes 5.7.1. Obsolete Xorg drivers 5.7.2. Kernel mode setting 5.7.3. Input device hotplug 5.7.4. X server “zapping” 5.8. Munin web path change 5.9. Shorewall upgrade instructions 6. More information on Debian GNU/Linux 6.1. Further reading 6.2. Getting help 6.2.1. Mailing lists 6.2.2. Internet Relay Chat 6.3. Reporting bugs 6.4. Contributing to Debian A. Managing your lenny system before the upgrade A.1. Upgrading your lenny system A.2. Checking your sources list A.3. Upgrade legacy locales to UTF-8 B. Contributors to the Release Notes Index Glossary Chapter 1. Introduction     This document informs users of the Debian GNU/Linux distribution about major changes in version 6.0 (codenamed squeeze). The release notes provide information on how to upgrade safely     from release 5.0 (codenamed lenny) to the current release and inform users of known potential issues they could encounter in that process. You can get the most recent version of this document from http:// www.debian.org/releases/squeeze/releasenotes (http://     www.debian.org/releases/squeeze/releasenotes) . If in doubt, check the date on the first page to make sure you are reading a current version. Caution     Note that it is impossible to list every known issue and that therefore a selection has been made based on a combination of the expected prevalence and impact of issues. Please note that we only support and document upgrading from the     previous release of Debian (in this case, the upgrade from 5.0). If you need to upgrade from older releases, we suggest you read previous editions of the release notes and upgrade to 5.0 first. 1.1. Reporting bugs on this document We have attempted to test all the different upgrade steps     described in this document and to anticipate all the possible issues our users might encounter. Nevertheless, if you think you have found a bug (incorrect information or information that is missing) in this documentation, please file a bug in the bug tracking system (http://bugs.debian.org/) against the release-notes package. You     might want to review first the existing bug reports (http:// bugs.debian.org/release-notes) in case the issue you've found has already been reported. Feel free to add additional information to existing bug reports if you can contribute content for this document. We appreciate, and encourage, reports providing patches to the     document's sources. You will find more information describing how to obtain the sources of this document in Section 1.3, “Sources for this document”. 1.2. Contributing upgrade reports We welcome any information from users related to upgrades from lenny to squeeze. If you are willing to share information please     file a bug in the bug tracking system (http://bugs.debian.org/) against the upgrade-reports package with your results. We request that you compress any attachments that are included (using gzip).     Please include the following information when submitting your upgrade report: * The status of your package database before and after the upgrade: dpkg's status database available at /var/lib/dpkg/ status and apt's package state information, available at /var /lib/apt/extended_states. You should have made a backup before the upgrade as described at Section 4.1.1, “Back up any data or configuration information”, but you can also find     backups of /var/lib/dpkg/status in /var/backups. * Session logs created using script, as described in Section 4.4.1, “Recording the session”. * Your apt logs, available at /var/log/apt/term.log or your aptitude logs, available at /var/log/aptitude. Note     You should take some time to review and remove any sensitive and/ or confidential information from the logs before including them in a bug report as the information will be published in a public database. 1.3. Sources for this document The source of this document is in DocBook XML format. The HTML version is generated using docbook-xsl and xsltproc. The PDF version is generated using dblatex or xmlroff. Sources for the Release Notes are available in the SVN repository of the Debian     Documentation Project. You can use the web interface (http:// svn.debian.org/viewsvn/ddp/manuals/trunk/release-notes/) to access its files individually through the web and see their changes. For more information on how to access the SVN please consult the Debian Documentation Project SVN information pages (http://www.debian.org/doc/cvs) . Chapter 2. What's new in Debian GNU/Linux 6.0     The Wiki (http://wiki.debian.org/NewInSqueeze) has more information about this topic. This release drops official support for the HP PA-RISC ('hppa')     (http://lists.debian.org/debian-devel-announce/2010/09/ msg00008.html) , Alpha ('alpha') and ARM ('arm') architectures.     The following are the officially supported architectures for Debian GNU/Linux squeeze: * 32-bit PC ('i386') * SPARC ('sparc') * PowerPC ('powerpc') * MIPS ('mips' (big-endian) and 'mipsel' (little-endian))     * Intel Itanium ('ia64') * S/390 ('s390') * 64-bit PC ('amd64') * ARM EABI ('armel') In addition to the officially supported architectures, Debian GNU /Linux squeeze introduces the GNU/kFreeBSD ports ('kfreebsd-amd64' and 'kfreebsd-i386') as a technology preview. These ports are the first ones included in a Debian release which aren't based on the Linux kernel, but instead use the FreeBSD kernel with a GNU userland. Users of these versions however     should be warned that the quality of these ports is still catching up with the outstanding high quality of our Linux ports, and that some advanced desktop features are not supported yet. However, the support of common server software is strong and extends the features of Linux-based Debian versions by the unique features known from the BSD world. This is the first time a Linux distribution has been extended to also allow use of a non-Linux kernel. You can read more about port status, and port-specific     information for your architecture at the Debian port web pages (http://www.debian.org/ports/) . 2.1. What's new for ARM? Support has been added for Marvell's Kirkwood platform. Specifically, Debian GNU/Linux 6.0 supports the following devices based on the Kirkwood platform: SheevaPlug and other plug computers (http://www.cyrius.com/debian/kirkwood/sheevaplug/) ,     QNAP Turbo NAS (TS-11x (http://www.cyrius.com/debian/kirkwood/ qnap/ts-119/) , TS-21x (http://www.cyrius.com/debian/kirkwood/ qnap/ts-219/) , TS-41x (http://www.cyrius.com/debian/kirkwood/ qnap/ts-41x/) ), and the OpenRD platform (http://www.cyrius.com/ debian/kirkwood/openrd/) . Support has also been added for the Lanner EM7210 and compatible     devices (e.g. Intel SS4000-e). These are NAS devices based on the IOP32x platform. 2.2. What's new in the distribution? This new release of Debian again comes with a lot more software than its predecessor lenny; the distribution includes over 10352 new packages, for a total of over 29050 packages. Most of the software in the distribution has been updated: over 15436     software packages (this is 67% of all packages in lenny). Also, a significant number of packages (over 4238, 18% of the packages in lenny) have for various reasons been removed from the distribution. You will not see any updates for these packages and they will be marked as 'obsolete' in package management front-ends.     With this release, Debian GNU/Linux updates from X.Org 7.3 to X.Org 7.5. Debian GNU/Linux again ships with several desktop applications and environments. Among others it now includes the desktop environments GNOME 2.30^[1], KDE 4.4.5, Xfce 4.6.2, and LXDE     0.5.0. Productivity applications have also been upgraded, including the office suites OpenOffice.org 3.2.1 and KOffice 2.2.1 as well as GNUcash 2.2.9, GNUmeric 1.10.8 and Abiword 2.8.2. Updates of other desktop applications include the upgrade to Evolution 2.30.3 and Pidgin 2.7.3. The Mozilla suite has also     been updated: iceweasel (version 3.5.13) is the unbranded Firefox web browser and icedove (version 3.0.7) is the unbranded Thunderbird mail client.     Among many others, this release also includes the following software updates: +---------------------------------------------------------------+ | Package |Version in 5.0 | Version in 6.0 | | | (lenny) | (squeeze) | |------------------------------+---------------+----------------| |Apache |2.2.9 |2.2.16 | |------------------------------+---------------+----------------| |BIND DNS Server |9.6.0 |9.7.1 | |------------------------------+---------------+----------------| |Cherokee web server |0.7.2 |1.0.8 | |------------------------------+---------------+----------------| |Courier MTA |0.60.0 |0.63.0 | |------------------------------+---------------+----------------| |Dia |0.96.1 |0.97.1 | |------------------------------+---------------+----------------| |Ekiga VoIP Client |2.0.12 |3.2.7 | |------------------------------+---------------+----------------| |Exim default email server |4.69 |4.72 | |------------------------------+---------------+----------------| |GNU Compiler Collection as |4.3.2 |4.4.5 | |default compiler | | | |------------------------------+---------------+----------------| |GIMP |2.4.7 |2.6.10 | |------------------------------+---------------+----------------|     |the GNU C library |2.7 |2.11.2 | |------------------------------+---------------+----------------| |lighttpd |1.4.19 |1.4.28 | |------------------------------+---------------+----------------| |maradns |1.3.07.09 |1.4.03 | |------------------------------+---------------+----------------| |MySQL |5.0.51a |5.1.49 | |------------------------------+---------------+----------------| |OpenLDAP |2.4.11 |2.4.23 | |------------------------------+---------------+----------------| |OpenSSH |5.1p1 |5.5p1 | |------------------------------+---------------+----------------| |PHP |5.2.6 |5.3.2 | |------------------------------+---------------+----------------| |Postfix MTA |2.5.5 |2.7.1 | |------------------------------+---------------+----------------| |PostgreSQL |8.3.5 |8.4.5 | |------------------------------+---------------+----------------| |Python |2.5.2 |2.6.6 | |------------------------------+---------------+----------------| |Samba |3.2.5 |3.5.5 | |------------------------------+---------------+----------------| |Tomcat |5.5.26 |6.0.28 | +---------------------------------------------------------------+     Debian still supports Linux Standard Base (LSB) version 3.2. 2.2.1. CDs, DVDs and BDs The official Debian GNU/Linux distribution now ships on 7 to 8 binary DVDs or 44 to 53 binary CDs (depending on the architecture) and 6 source DVDs or 33 source CDs. Additionally, there is a multi-arch DVD, with a subset of the release for the     amd64 and i386 architectures, along with the source code. Debian GNU/Linux is also released as Blu-ray (BD) images, 2 each for the amd64 and i386 architectures, or one for the source code. For size reasons, some very large packages are omitted from the CD builds; these packages fit better in the DVD and BD builds, so are still included there. A new feature with squeeze is the addition of isohybrid support to the i386 and amd64 CDs, DVDs and BDs. To make a USB stick bootable with one of these images used to mean following some     extra procedures after downloading the image; instead, now all that is required is to simply write the image directly to the USB stick. For more information please see the “Preparing Files for USB Memory Stick Booting” section in the Installation Guide (http://www.debian.org/releases/stable/installmanual) . 2.2.2. Firmware moved to the non-free section Some drivers included in the Linux kernel used to contain non-free firmware blobs. Starting from squeeze this firmware has     been moved to separate packages in the non-free section of the archive, such as firmware-linux. If such packages are installed, the firmware will be loaded automatically when required. 2.2.3. Package management The preferred program for interactive package management from a terminal is aptitude. For a non-interactive command line     interface for package management, it is recommended to use apt-get. apt-get is also the preferred tool for upgrades between major releases. If you are still using dselect, you should switch to aptitude as the official front-end for package management. For squeeze APT automatically installs recommended packages by default^[2]. This can be changed by adding the following line in     /etc/apt/apt.conf: APT::Install-Recommends "false"; 2.2.4. Dependency booting An important improvement in the Debian GNU/Linux boot system is     the introduction of dependency-based boot sequencing and parallel boot. This feature is enabled by default in new installs and it will be enabled for upgrades from lenny, if possible. This feature is enabled through the use of insserv by sysv-rc to order init.d scripts based on their declared dependencies^[3]. It     has been possible after a sustained effort to adapt all the boot scripts of packages provided in the distribution as well as the boot system itself. With dependency-based boot sequencing it is also now possible to run the boot system scripts in parallel which can, under most circumstances, improve the speed of the boot process. This feature is enabled by default, in new systems and upgrades, whenever possible. To disable it specify     CONCURRENCY=none in /etc/default/rcS. For more information on this feature refer to the information available in /usr/share/doc/insserv/ README.Debian. 2.2.5. Unified keyboard settings In this new release, the settings for the keyboard have been unified so that both the console and the Xorg server use the same     settings. The keyboard settings are now defined in the /etc/ default/keyboard configuration file which overrides the keyboard defined in Xorg's configuration file. The console-setup package now handles the keyboard for both environments as well as the font configuration for the console.     You can reconfigure the keyboard layout and related settings by executing dpkg-reconfigure keyboard-configuration or by manually editing the /etc/default/keyboard configuration file. 2.2.6. Kernel mode setting Graphics mode setting code for the most common desktop chipsets (from Intel, ATI/AMD and NVIDIA) has moved from the respective Xorg drivers to the Linux kernel. This provides a number of advantages, such as:     * More reliable suspend and resume * Ability to use graphics devices without X * Faster VT switch * Native mode text console     More details are in Section 5.7, “Graphics stack changes” and in the Debian wiki (http://wiki.debian.org/KernelModesetting) . 2.2.7. LDAP support     This Debian release comes with several options for implementing     client-side authentication using LDAP. Users of the libnss-ldap and libpam-ldap packages should consider upgrading to libnss-ldapd and libpam-ldapd. These newer packages delegate the LDAP queries to a central unprivileged daemon (nslcd) that provides separation between the process using the LDAP information and the daemon performing LDAP     queries. This simplifies handling of secured LDAP connections, LDAP authentication credentials, provides a simpler mechanism to perform connection fail-over and debugging and avoids loading LDAP and related libraries into most applications. Upgrading to libnss-ldapd and libpam-ldapd should be easy as     existing configuration information will be mostly reused. Only for advanced configuration should any manual reconfiguration be necessary. These packages however currently lack support for nested groups     and only support password change using the LDAP password modify EXOP operation. 2.2.8. The stable-updates section Some packages from proposed-updates may also be made available via the squeeze-updates mechanism. This path will be used for     updates which many users may wish to install on their systems before the next point release is made, such as updates to virus scanners and timezone data. All packages from squeeze-updates will be included in point releases.     Note that this replaces the functionality previously provided by the volatile.debian.org archive (http://volatile.debian.org/) .     In order to use packages from squeeze-updates, you can add an entry to your sources.list:     deb http://mirrors.kernel.org/debian squeeze-updates main contrib deb-src http://mirrors.kernel.org/debian squeeze-updates main contrib The next time you run apt-get update, the system will become     aware of the packages in the squeeze-updates section and will consider them when looking for packages to upgrade. Note that if APT::Default-Release is set in your /etc/apt/ apt.conf (or in any of /etc/apt/apt.conf.d/*), then, in order for automatic upgrades to work, it is necessary to add the following configuration block into /etc/apt/preferences (see     apt_preferences(5) for more information): Package: * Pin: release o=Debian GNU/Linux,n=squeeze-updates Pin-Priority: 990 When a new package is made available via squeeze-updates, this     will be announced on the debian-stable-announce (http:// lists.debian.org/debian-stable-announce/) mailing list. 2.2.9. backports.org/backports.debian.org The service provided by the backports.org repositories has been     integrated in Debian infrastructure and is now an official Debian service (http://www.debian.org/News/2010/20100905) , hosted at backports.debian.org (http://backports.debian.org/) . 2.3. Comprehensive support for neuroimaging research Debian GNU/Linux 6.0 is the first GNU/Linux distribution release ever to offer comprehensive support for magnetic resonance imaging (MRI) based neuroimaging research. It comes with up-to-date software for structural image analysis (e.g. ants), diffusion imaging and tractography (e.g. mrtrix), stimulus delivery (e.g. psychopy), MRI sequence development (e.g. odin),     as well as a number of versatile data processing and analysis suites (e.g. nipype). Moreover, this release has built-in support for all major neuroimaging data formats. See the Debian Science (http://blends.alioth.debian.org/science/tasks/ neuroscience-cognitive) and Debian Med (http:// debian-med.alioth.debian.org/tasks/imaging) task pages for a comprehensive list of included software and the NeuroDebian webpage (http://neuro.debian.net) for further information. --------------     ^[1] With some modules from GNOME 2.32. ^[2] This change implies that disk requirements for tasks selected through the debian installer have increased too. For     more information please see the “Disk Space Needed for Tasks” chapter in the Installation Guide (http://www.debian.org/releases /stable/installmanual) .     ^[3] These dependences are declared through the use of the header format specified in the Linux Standard Base (LSB) Chapter 3. Installation System The Debian Installer is the official installation system for     Debian. It offers a variety of installation methods. Which methods are available to install your system depends on your architecture. Images of the installer for squeeze can be found together with     the Installation Guide on the Debian website (http:// www.debian.org/releases/stable/debian-installer/) .     The Installation Guide is also included on the first CD/DVD of the official Debian CD/DVD sets, at:     /doc/install/manual/language/index.html You may also want to check the errata (http://www.debian.org/     releases/stable/debian-installer/index#errata) for debian-installer for a list of known issues. 3.1. What's new in the installation system? There has been a lot of development on the Debian Installer since     its first official release with Debian GNU/Linux 3.1 (sarge) resulting in both improved hardware support and some exciting new features. In these Release Notes we'll only list the major changes in the installer. If you are interested in an overview of the detailed     changes since lenny, please check the release announcements for the squeeze beta and RC releases available from the Debian Installer's news history (http://www.debian.org/devel/ debian-installer/News/) . 3.1.1. Major changes Dropped platforms Support for the Alpha ('alpha'), ARM ('arm') and HP PA-RISC ('hppa') architectures has been dropped from the installer. The 'arm' architecture is obsoleted by the ARM EABI ('armel') port. New supported platforms The installation system now supports the following platforms: * Intel Storage System SS4000-E * Marvell's Kirkwood platform: o QNAP TS-110, TS-119, TS-210, TS-219, TS-219P and TS-419P o Marvell SheevaPlug and GuruPlug o Marvell OpenRD-Base, OpenRD-Client and OpenRD-Ultimate * HP t5325 Thin Client (partial support) Help during the installation process The dialogs presented during the installation process now provide help information. Although not currently used in all dialogs, this feature would be increasingly used in future releases. This will improve the user experience during the installation process, especially for new users. Installation of Recommended packages The installation system will install all recommended packages by default throughout the process except for some specific situations in which the general setting gives undesired results. Automatic installation of hardware-specific packages The system will automatically select for installation hardware-specific packages when they are appropriate. This is achieved through the use of discover-pkginstall from the discover package. Support for installation of previous releases The installation system can be also used for the installation of previous release, such as lenny. Improved mirror selection The installation system provides better support for installing both squeeze as well as lenny and older releases (through the use of archive.debian.org). In addition, it will also check that the selected mirror is consistent and holds the selected release. Changes in partitioning features This release of the installer supports the use of the ext4 file system and it also simplifies the creation of RAID, LVM and crypto protected partitioning systems. Support for the     reiserfs file system is no longer included by default, although it can be optionally loaded. Support for loading firmware debs during installation It is now possible to load firmware package files from the installation media in addition to removable media, allowing the creation of PXE images and CDs/DVDs with included firmware packages. Starting with Debian 6.0, non-free firmware has been moved out of main. To install Debian on hardware that needs non-free firmware, you can either provide the firmware yourself during installation or use pre-made non-free CDs/ DVDs which include the firmware. See the Getting Debian section (http://www.debian.org/distrib) on the Debian website for more information. New languages Thanks to the huge efforts of translators, Debian GNU/Linux can now be installed in 70 languages. This is seven more languages than in lenny. Most languages are available in both the text-based installation user interface and the graphical user interface, while some are only available in the graphical user interface. Languages added in this release include: * Asturian, Estonian, Icelandic, Kazakh and Persian have been added to the graphical and text-based installer. * Kannada, Lao, Sinhala and Telugu have been added to the graphical installer. * Thai, previously available only in the graphical user interface, is now available also in the text-based installation user interface too. Due to the lack of translation updates two languages were dropped in this release: Wolof and Welsh. Improved localisation selection The selection of localisation-related values (language, location and locale settings) is now less interdependent and more flexible. Users will be able to customize the system to their localisation needs more easily while still make it comfortable to use for users that want to select the locale most common for the country they reside in. Additionally, the consequences of localisation choices (such as timezone, keymap and mirror selection) are now more obvious to the user. Live system installation The installer now supports live systems in two ways. First, an installer included on live system media can use the contents of the live system in place of the regular installation of the base system. Second, the installer may now be launched while running the live system, allowing the user to do other things with the live system during the install. Both features are built into the Debian Live images offered at http://cdimage.debian.org/ (http:// cdimage.debian.org/) . 3.1.2. Automated installation Some changes mentioned in the previous section also imply changes in the support in the installer for automated installation using     preconfiguration files. This means that if you have existing preconfiguration files that worked with the lenny installer, you cannot expect these to work with the new installer without modification. The Installation Guide (http://www.debian.org/releases/stable/     installmanual) has an updated separate appendix with extensive documentation on using preconfiguration. Chapter 4. Upgrades from Debian 5.0 (lenny) 4.1. Preparing for the upgrade We suggest that before upgrading you also read the information in     Chapter 5, Issues to be aware of for squeeze. That chapter covers potential issues not directly related to the upgrade process but which could still be important to know about before you begin. 4.1.1. Back up any data or configuration information Before upgrading your system, it is strongly recommended that you make a full backup, or at least back up any data or configuration     information you can't afford to lose. The upgrade tools and process are quite reliable, but a hardware failure in the middle of an upgrade could result in a severely damaged system. The main things you'll want to back up are the contents of /etc, /var/lib/dpkg, /var/lib/apt/extended_states and the output of     dpkg --get-selections "*" (the quotes are important). If you use aptitude to manage packages on your system, you will also want to back up /var/lib/aptitude/pkgstates. The upgrade process itself does not modify anything in the /home directory. However, some applications (e.g. parts of the Mozilla suite, and the GNOME and KDE desktop environments) are known to overwrite existing user settings with new defaults when a new     version of the application is first started by a user. As a precaution, you may want to make a backup of the hidden files and directories (“dotfiles”) in users' home directories. This backup may help to restore or recreate the old settings. You may also want to inform users about this. Any package installation operation must be run with superuser     privileges, so either log in as root or use su or sudo to gain the necessary access rights.     The upgrade has a few preconditions; you should check them before actually executing the upgrade. 4.1.2. Inform users in advance It's wise to inform all users in advance of any upgrades you're     planning, although users accessing your system via an ssh connection should notice little during the upgrade, and should be able to continue working.     If you wish to take extra precautions, back up or unmount the / home partition before upgrading.     You will have to do a kernel upgrade when upgrading to squeeze, so a reboot will be necessary. 4.1.3. Prepare for downtime on services There might be services that are offered by the system which are associated with packages that will be included in the upgrade. If     this is the case, please note that, during the upgrade, these services will be stopped while their associated packages are being replaced and configured. During this time, these services will not be available. The precise downtime for these services will vary depending on the number of packages being upgraded in the system, and it also includes the time the system administrator answers the     configuration questions from different package upgrades (if any). Notice that if the upgrade process is left unattended and the system requests input throughout the upgrade there is a high possibility of services being unavailable^[4] for a significant period of time. If the system being upgraded provides critical services for your users or the network^[5], you can reduce the downtime if you do a minimal system upgrade, as described in Section 4.4.4, “Minimal system upgrade”, followed by a kernel upgrade and reboot (see     Section 4.4.5, “Upgrading the kernel and udev”), and then upgrade the packages associated with your critical services. Upgrade these packages prior to doing the full upgrade described in Section 4.4.6, “Upgrading the system”. This way you can ensure that these critical services are running and available through the full upgrade process, and their downtime is reduced. 4.1.4. Prepare for recovery Because of the many changes in the kernel between lenny and squeeze regarding drivers, hardware discovery and the naming and     ordering of device files, there is a real risk that you may experience problems rebooting your system after the upgrade. A lot of known potential issues are documented in this and the next chapters of these Release Notes. For that reason it makes sense to ensure that you will be able to     recover if your system should fail to reboot or, for remotely managed systems, fail to bring up networking. If you are upgrading remotely via an ssh link it is highly recommended that you take the necessary precautions to be able to access the server through a remote serial terminal. There is a chance that, after upgrading the kernel and rebooting, some     devices will be renamed (as described in Section 4.6.2, “Device enumeration reordering” ) and you will have to fix the system configuration through a local console. Also, if the system is rebooted accidentally in the middle of an upgrade there is a chance you will need to recover using a local console. The most obvious thing to try first is to reboot with your old     kernel. However, for various reasons documented elsewhere in this document, this is not guaranteed to work. If that fails, you will need an alternative way to boot your system so you can access and repair it. One option is to use a     special rescue image or a Linux live CD. After booting from that, you should be able to mount your root file system and chroot into it to investigate and fix the problem. Another option we'd like to recommend is to use the rescue mode of the squeeze Debian Installer. The advantage of using the installer is that you can choose between its many installation     methods for one that best suits your situation. For more information, please consult the section “Recovering a Broken System” in chapter 8 of the Installation Guide (http:// www.debian.org/releases/stable/installmanual) and the Debian Installer FAQ (http://wiki.debian.org/DebianInstaller/FAQ) . 4.1.4.1. Debug shell during boot using initrd The initramfs-tools includes a debug shell^[6] in the initrds it generates. If for example the initrd is unable to mount your root     file system, you will be dropped into this debug shell which has basic commands available to help trace the problem and possibly fix it. Basic things to check are: presence of correct device files in / dev; what modules are loaded (cat /proc/modules); output of dmesg     for errors loading drivers. The output of dmesg will also show what device files have been assigned to which disks; you should check that against the output of echo $ROOT to make sure that the root file system is on the expected device. If you do manage to fix the problem, typing exit will quit the     debug shell and continue the boot process at the point it failed. Of course you will also need to fix the underlying problem and regenerate the initrd so the next boot won't fail again. 4.1.5. Prepare a safe environment for the upgrade The distribution upgrade should be done either locally from a     textmode virtual console (or a directly connected serial terminal), or remotely via an ssh link. Important     If you are using some VPN services (such as tinc) they might not be available throughout the upgrade process. Please see Section 4.1.3, “Prepare for downtime on services”. In order to gain extra safety margin when upgrading remotely, we suggest that you run upgrade processes in the virtual console     provided by the screen program, which enables safe reconnection and ensures the upgrade process is not interrupted even if the remote connection process fails. Important You should not upgrade using telnet, rlogin, rsh, or from an X session managed by xdm, gdm or kdm etc on the machine you are     upgrading. That is because each of those services may well be terminated during the upgrade, which can result in an inaccessible system that is only half-upgraded. Use of the GNOME application update-manager is strongly discouraged for upgrades to new releases, as this tool relies on the desktop session remaining active. 4.1.6. Remove conflicting packages Due to bug #512951 (http://bugs.debian.org/512951) , the splashy     package needs to be purged prior to the upgrade. # apt-get purge splashy 4.2. Checking system status The upgrade process described in this chapter has been designed for upgrades from “pure” lenny systems without third-party     packages. For the greatest reliability of the upgrade process, you may wish to remove third-party packages from your system before you begin upgrading. Direct upgrades from Debian releases older than 5.0 (lenny) are     not supported. Please follow the instructions in the Release Notes for Debian GNU/Linux 5.0 (http://www.debian.org/releases/ lenny/releasenotes) to upgrade to 5.0 first. This procedure also assumes your system has been updated to the     latest point release of lenny. If you have not done this or are unsure, follow the instructions in Section A.1, “Upgrading your lenny system”. 4.2.1. Review actions pending in package manager In some cases, the use of apt-get for installing packages instead of aptitude might make aptitude consider a package as “unused”     and schedule it for removal. In general, you should make sure the system is fully up-to-date and “clean” before proceeding with the upgrade. Because of this you should review if there are any pending actions in the package manager aptitude. If a package is scheduled for removal or update in the package manager, it might     negatively impact the upgrade procedure. Note that correcting this is only possible if your sources.list still points to lenny and not to stable or squeeze; see Section A.2, “Checking your sources list”. To perform this review, launch aptitude in “visual mode” and press g (“Go”). If it shows any actions, you should review them     and either fix them or implement the suggested actions. If no actions are suggested you will be presented with a message saying “No packages are scheduled to be installed, removed, or upgraded” . 4.2.2. Disabling APT pinning If you have configured APT to install certain packages from a distribution other than stable (e.g. from testing), you may have     to change your APT pinning configuration (stored in /etc/apt/ preferences) to allow the upgrade of packages to the versions in the new stable release. Further information on APT pinning can be found in apt_preferences(5). 4.2.3. Checking packages status Regardless of the method used for upgrading, it is recommended that you check the status of all packages first, and verify that     all packages are in an upgradable state. The following command will show any packages which have a status of Half-Installed or Failed-Config, and those with any error status.     # dpkg --audit     You could also inspect the state of all packages on your system using dselect, aptitude, or with commands such as     # dpkg -l | pager     or     # dpkg --get-selections "*" > ~/curr-pkgs.txt It is desirable to remove any holds before upgrading. If any     package that is essential for the upgrade is on hold, the upgrade will fail. Note that aptitude uses a different method for registering     packages that are on hold than apt-get and dselect. You can identify packages on hold for aptitude with     # aptitude search "~ahold"     If you want to check which packages you had on hold for apt-get, you should use     # dpkg --get-selections | grep hold If you changed and recompiled a package locally, and didn't     rename it or put an epoch in the version, you must put it on hold to prevent it from being upgraded.     The “hold” package state for apt-get can be changed using:     # echo package_name hold | dpkg --set-selections     Replace hold with install to unset the “hold” state. If there is anything you need to fix, it is best to make sure     your sources.list still refers to lenny as explained in Section A.2, “Checking your sources list”. 4.2.4. The proposed-updates section If you have listed the proposed-updates section in your /etc/apt/     sources.list file, you should remove it from that file before attempting to upgrade your system. This is a precaution to reduce the likelihood of conflicts. 4.2.5. Unofficial sources and backports If you have any non-Debian packages on your system, you should be aware that these may be removed during the upgrade because of conflicting dependencies. If these packages were installed by     adding an extra package archive in your /etc/apt/sources.list, you should check if that archive also offers packages compiled for squeeze and change the source line accordingly at the same time as your source lines for Debian packages. Some users may have unofficial backported “newer” versions of packages that are in Debian installed on their lenny system. Such     packages are most likely to cause problems during an upgrade as they may result in file conflicts^[7]. Section 4.5, “Possible issues during upgrade” has some information on how to deal with file conflicts if they should occur. 4.3. Preparing sources for APT     Before starting the upgrade you must set up apt's configuration file for package lists, /etc/apt/sources.list. apt will consider all packages that can be found via any “deb” line, and install the package with the highest version number,     giving priority to the first line in the file (thus where you have multiple mirror locations, you'd typically first name a local hard disk, then CD-ROMs, and then HTTP/FTP mirrors). A release can often be referred to both by its codename (e.g. lenny, squeeze) and by its status name (i.e. oldstable, stable, testing, unstable). Referring to a release by its codename has the advantage that you will never be surprised by a new release     and for this reason is the approach taken here. It does of course mean that you will have to watch out for release announcements yourself. If you use the status name instead, you will just see loads of updates for packages available as soon as a release has happened. 4.3.1. Adding APT Internet sources The default configuration is set up for installation from main     Debian Internet servers, but you may wish to modify /etc/apt/ sources.list to use other mirrors, preferably a mirror that is network-wise closest to you. Debian HTTP or FTP mirror addresses can be found at http://     www.debian.org/distrib/ftplist (http://www.debian.org/distrib/ ftplist) (look at the “list of Debian mirrors” section). HTTP mirrors are generally speedier than FTP mirrors. For example, suppose your closest Debian mirror is http://     mirrors.kernel.org. When inspecting that mirror with a web browser or FTP program, you will notice that the main directories are organized like this:     http://mirrors.kernel.org/debian/dists/squeeze/main/binary-armel/... http://mirrors.kernel.org/debian/dists/squeeze/contrib/binary-armel/...     To use this mirror with apt, you add this line to your sources.list file:     deb http://mirrors.kernel.org/debian squeeze main contrib Note that the `dists' is added implicitly, and the arguments     after the release name are used to expand the path into multiple directories. After adding your new sources, disable the previously existing “     deb” lines in sources.list by placing a hash sign (#) in front of them. 4.3.2. Adding APT sources for a local mirror Instead of using HTTP or FTP package mirrors, you may wish to     modify /etc/apt/sources.list to use a mirror on a local disk (possibly mounted over NFS).     For example, your package mirror may be under /var/ftp/debian/, and have main directories like this:     /var/ftp/debian/dists/squeeze/main/binary-armel/... /var/ftp/debian/dists/squeeze/contrib/binary-armel/...     To use this with apt, add this line to your sources.list file:     deb file:/var/ftp/debian squeeze main contrib Note that the `dists' is added implicitly, and the arguments     after the release name are used to expand the path into multiple directories. After adding your new sources, disable the previously existing “     deb” lines in sources.list by placing a hash sign (#) in front of them. 4.3.3. Adding APT source from CD-ROM or DVD If you want to use CDs only, comment out the existing “deb” lines     in /etc/apt/sources.list by placing a hash sign (#) in front of them. Make sure there is a line in /etc/fstab that enables mounting     your CD-ROM drive at the /cdrom mount point (the exact /cdrom mount point is required for apt-cdrom). For example, if /dev/hdc is your CD-ROM drive, /etc/fstab should contain a line like:     /dev/hdc /cdrom auto defaults,noauto,ro 0 0     Note that there must be no spaces between the words defaults,noauto,ro in the fourth field.     To verify it works, insert a CD and try running # mount /cdrom # this will mount the CD to the mount point     # ls -alF /cdrom # this should show the CD's root directory # umount /cdrom # this will unmount the CD     Next, run:     # apt-cdrom add     for each Debian Binary CD-ROM you have, to add the data about each CD to APT's database. 4.4. Upgrading packages The recommended way to upgrade from previous Debian GNU/Linux releases is to use the package management tool apt-get. In     previous releases, aptitude was recommended for this purpose, but recent versions of apt-get provide equivalent functionality and also have shown to more consistently give the desired upgrade results.     Don't forget to mount all needed partitions (notably the root and /usr partitions) read-write, with a command like:     # mount -o remount,rw /mountpoint Next you should double-check that the APT source entries (in /etc /apt/sources.list) refer either to “squeeze” or to “stable”. There should not be any sources entries pointing to lenny. +--------------------------------------------------+     |Note | | | |Source lines for a CD-ROM might sometimes refer to| |“unstable”; although this may be confusing, you | |should not change it. | +--------------------------------------------------+ 4.4.1. Recording the session It is strongly recommended that you use the /usr/bin/script program to record a transcript of the upgrade session. Then if a     problem occurs, you will have a log of what happened, and if needed, can provide exact information in a bug report. To start the recording, type:     # script -t 2>~/upgrade-squeezestep.time -a ~/upgrade-squeezestep.script or similar. If you have to rerun the typescript (e.g. if you have to reboot the system) use different step values to indicate which     step of the upgrade you are logging. Do not put the typescript file in a temporary directory such as /tmp or /var/tmp (files in those directories may be deleted during the upgrade or during any restart). The typescript will also allow you to review information that has     scrolled off-screen. If you are at the system's console, just switch to VT2 (using Alt+F2) and, after logging in, use less -R ~root/upgrade-squeeze.script to view the file.     After you have completed the upgrade, you can stop script by typing exit at the prompt.     If you have used the -t switch for script you can use the scriptreplay program to replay the whole session:     # scriptreplay ~/upgrade-squeeze.time ~/upgrade-squeeze.script 4.4.2. Updating the package list     First the list of available packages for the new release needs to be fetched. This is done by executing:     # apt-get update 4.4.3. Make sure you have sufficient space for the upgrade You have to make sure before upgrading your system that you have sufficient hard disk space when you start the full system upgrade described in Section 4.4.6, “Upgrading the system”. First, any package needed for installation that is fetched from the network is stored in /var/cache/apt/archives (and the partial/ subdirectory, during download), so you must make sure you have     enough space on the file system partition that holds /var/ to temporarily download the packages that will be installed in your system. After the download, you will probably need more space in other file system partitions in order to both install upgraded packages (which might contain bigger binaries or more data) and new packages that will be pulled in for the upgrade. If your system does not have sufficient space you might end up with an incomplete upgrade that might be difficult to recover from. apt-get can show you detailed information of the disk space     needed for the installation. Before executing the upgrade, you can see this estimate by running: # apt-get -o APT::Get::Trivial-Only=true dist-upgrade [ ... ]     XXX upgraded, XXX newly installed, XXX to remove and XXX not upgraded. Need to get xx.xMB of archives. After this operation, AAAMB of additional disk space will be used. Note Running this command at the beginning of the upgrade process may     give an error, for the reasons described in the next sections. In that case you will need to wait until you've done the minimal system upgrade as in Section 4.4.4, “Minimal system upgrade” and upgraded your kernel before running this command to estimate the disk space.     If you do not have enough space for the upgrade, apt-get will warn you with a message like this:     E: You don't have enough free space in /var/cache/apt/archives/.     In this situation, make sure you free up space beforehand. You can: * Remove packages that have been previously downloaded for installation (at /var/cache/apt/archives). Cleaning up the package cache by running apt-get clean will remove all previously downloaded package files. * Remove forgotten packages. If you have popularity-contest installed, you can use popcon-largest-unused to list the packages you do not use that occupy the most space. You can also use deborphan or debfoster to find obsolete packages (see Section 4.9, “Obsolete packages” ). Alternatively you can start aptitude in “visual mode” and find obsolete packages under “ Obsolete and Locally Created Packages”. * Remove packages that take up too much space and are not currently needed (you can always reinstall them after the upgrade). You can list the packages that take up the most disk space with dpigs (available in the debian-goodies package) or with wajig (running wajig size). You can list packages that take up most of the disk space with aptitude. Start aptitude in “visual mode”, select Views → New Flat Package List, press l and enter ~i, press S and enter ~installsize, then it will give you nice list to work with. * Remove translations and localization files from the system if they are not needed. You can install the localepurge package and configure it so that only a few selected locales are kept in the system. This will reduce the disk space consumed at /usr/share/ locale. * Temporarily move to another system, or permanently remove, system logs residing under /var/log/. * Use a temporary /var/cache/apt/archives: You can use a temporary cache directory from another filesystem (USB storage device, temporary hard disk, filesystem already in use, ...)     +-----------------------------------------------------+ |Note | | | |Do not use an NFS mount as the network connection | |could be interrupted during the upgrade. | +-----------------------------------------------------+ For example, if you have a USB drive mounted on /media/usbkey: 1. remove the packages that have been previously downloaded for installation: # apt-get clean 2. copy the directory /var/cache/apt/archives to the USB drive: # cp -ax /var/cache/apt/archives /media/usbkey/ 3. mount the temporary cache directory on the current one: # mount --bind /media/usbkey/archives /var/cache/apt/archives 4. after the upgrade, restore the original /var/cache/apt/ archives directory: # umount /media/usbkey/archives 5. remove the remaining /media/usbkey/archives. You can create the temporary cache directory on whatever filesystem is mounted on your system. * Do a minimal upgrade of the system (see Section 4.4.4, “Minimal system upgrade”) or partial upgrades of the system followed by a full upgrade. This will make it possible to upgrade the system partially, and allow you to clean the package cache before the full upgrade. Note that in order to safely remove packages, it is advisable to     switch your sources.list back to lenny as described in Section A.2, “Checking your sources list”. 4.4.4. Minimal system upgrade In some cases, doing the full upgrade (as described below) directly might remove large numbers of packages that you will     want to keep. We therefore recommend a two-part upgrade process, first a minimal upgrade to overcome these conflicts, then a full upgrade as described in Section 4.4.6, “Upgrading the system”.     To do this first, run:     # apt-get upgrade This has the effect of upgrading those packages which can be     upgraded without requiring any other packages to be removed or installed. The minimal system upgrade can also be useful when the system is     tight on space and a full upgrade cannot be run due to space constrains. 4.4.5. Upgrading the kernel and udev The udev version in squeeze requires a kernel of version 2.6.26 or newer with the CONFIG_SYSFS_DEPRECATED option disabled and the CONFIG_INOTIFY_USER and CONFIG_SIGNALFD options enabled. Because     the standard Debian kernels in lenny (version 2.6.26) have CONFIG_SYSFS_DEPRECATED enabled, and the udev version in lenny will not provide all the functionality expected by the latest kernels, special care must be taken when upgrading to avoid putting your system in an unbootable state. Booting the 2.6.26 kernel from lenny with the udev from squeeze may result in a failure to correctly assign names to network devices, and will also fail to apply certain additional permissions to block devices (such as access by the disk group).     The software itself will appear to be working, but some rules (for example, network-based rules) will not be loaded properly. It is therefore strongly recommended that you upgrade the kernel on its own at this point, to ensure a compatible kernel is available before upgrading udev.     To proceed with this kernel upgrade, run:     # apt-get install linux-image-2.6-flavor     See Section 4.6.1, “Installing the kernel metapackage” for help in determining which flavor of kernel package you should install. The move of some firmware to separate packages in the non-free archive (see Section 2.2.2, “Firmware moved to the non-free section”) means that it may be necessary to install additional firmware packages after upgrading to the new kernel to support     some hardware. Some hardware that was operating correctly before the upgrade might fail to work once the kernel is upgraded. Look out for warning messages from the kernel install or initramfs generation scripts, and make sure the necessary firmware packages are installed. Immediately after upgrading the kernel, you should also install     the new udev to minimize the risk of other incompatibilities caused by using the old udev with a new kernel ^[8]. You can do this by running:     # apt-get install udev     You should reboot the system ^[9] once you have upgraded both the kernel and udev. 4.4.6. Upgrading the system     Once you have taken the previous steps, you are now ready to continue with the main part of the upgrade. Execute:     # apt-get dist-upgrade Note     The upgrade process for other releases recommended the use of aptitude for the upgrade. This tool is not recommended for upgrades from lenny to squeeze. This will perform a complete upgrade of the system, i.e. install the newest available versions of all packages, and resolve all     possible dependency changes between packages in different releases. If necessary, it will install some new packages (usually new library versions, or renamed packages), and remove any conflicting obsoleted packages. When upgrading from a set of CD-ROMs (or DVDs), you will be asked     to insert specific CDs at several points during the upgrade. You might have to insert the same CD multiple times; this is due to inter-related packages that have been spread out over the CDs. New versions of currently installed packages that cannot be upgraded without changing the install status of another package     will be left at their current version (displayed as “held back”). This can be resolved by either using aptitude to choose these packages for installation or by trying apt-get -f install package . 4.5. Possible issues during upgrade     The following sections describe known issues that might appear during an upgrade to squeeze. 4.5.1. cryptoloop support not included in the squeeze Linux kernel Support for cryptoloop has been dropped from the Linux kernel     packages included in Debian 6.0. Existing installations using cryptoloop need to be transitioned to dm-crypt before the upgrade. 4.5.2. Expected removals The upgrade process to squeeze might ask for removal of packages in the system. The precise list of packages will vary depending     on the set of packages that you have installed. These release notes give general advice on these removals, but if in doubt, it is recommended that you examine the package removals proposed by each method before proceeding. Some common packages that are expected to be removed include: autofs (replaced by autofs5), dhcp3 (replaced by isc-dhcp),     madwifi-source and python2.4 (replaced by python2.6). For more information about packages obsoleted in squeeze, see Section 4.9, “Obsolete packages”. 4.5.3. Errors running aptitude or apt-get     If an operation using aptitude, apt-get, or dpkg fails with the error     E: Dynamic MMap ran out of room the default cache space is insufficient. You can solve this by either removing or commenting lines you don't need in /etc/apt/     sources.list or increasing the cache size. The cache size can be increased by setting APT::Cache-Limit in /etc/apt/apt.conf. The following command will set it to a value that should be sufficient for the upgrade:     # echo 'APT::Cache-Limit "12500000";' >> /etc/apt/apt.conf     This assumes that you do not yet have this variable set in that file. 4.5.4. Conflicts or Pre-Depends loops Sometimes it's necessary to enable the APT::Force-LoopBreak option in APT to be able to temporarily remove an essential     package due to a Conflicts/Pre-Depends loop. apt-get will alert you of this and abort the upgrade. You can work around this by specifying the option -o APT::Force-LoopBreak=1 on the apt-get command line. It is possible that a system's dependency structure can be so     corrupt as to require manual intervention. Usually this means using apt-get or     # dpkg --remove package_name     to eliminate some of the offending packages, or     # apt-get -f install # dpkg --configure --pending     In extreme cases you might have to force re-installation with a command like     # dpkg --install /path/to/package_name.deb 4.5.5. File conflicts File conflicts should not occur if you upgrade from a “pure”     lenny system, but can occur if you have unofficial backports installed. A file conflict will result in an error like: Unpacking (from ) ... dpkg: error processing (--install): trying to overwrite `',     which is also in package dpkg-deb: subprocess paste killed by signal (Broken pipe) Errors were encountered while processing:     You can try to solve a file conflict by forcibly removing the package mentioned on the last line of the error message:     # dpkg -r --force-depends package_name     After fixing things up, you should be able to resume the upgrade by repeating the previously described apt-get commands. 4.5.6. Configuration changes During the upgrade, you will be asked questions regarding the configuration or re-configuration of several packages. When you are asked if any file in the /etc/init.d directory, or the /etc/     manpath.config file should be replaced by the package maintainer's version, it's usually necessary to answer `yes' to ensure system consistency. You can always revert to the old versions, since they will be saved with a .dpkg-old extension. If you're not sure what to do, write down the name of the package     or file and sort things out at a later time. You can search in the typescript file to review the information that was on the screen during the upgrade. 4.5.7. Change of session to console If you are running the upgrade using the system's local console you might find that at some points during the upgrade the console     is shifted over to a different view and you lose visibility of the upgrade process. For example, this will happen in desktop systems when gdm is restarted. To recover the console where the upgrade was running you will have to use Ctrl+Alt+F1 to switch back to the virtual terminal 1 if in the graphical startup screen or use Alt+F1 if in the local     text-mode console. Replace F1 with the function key with the same number of the virtual terminal the upgrade was running in. You can also use Alt+Left Arrow or Alt+Right Arrow to switch between the different text-mode terminals. 4.5.8. Special care for specific packages In most cases, packages should upgrade smoothly between lenny and     squeeze. There are a small number of cases where some intervention may be required, either before or during the upgrade; these are detailed below on a per-package basis. 4.5.8.1. Evolution Evolution (the GNOME Desktop mail client) has been updated from version 2.22 to 2.30. This changes the storage format used by the package for local data and there is a possibility of data loss if     the upgrade is performed whilst evolution is running. Exiting the application itself may not be sufficient, as various related components will continue to run in the background. To avoid any potential issues, it is recommended that you completely exit your desktop environment before beginning the upgrade to squeeze. As part of the upgrade process, evolution will check whether any related processes are running and will recommend that they be     closed. A secondary check for processes will then be performed; if necessary, a choice will be offered between allowing the remaining processes to be killed or aborting the upgrade in order to resolve the situation by hand. 4.6. Upgrading your kernel and related packages This section explains how to upgrade your kernel and identifies     potential issues related to this upgrade. You can either install one of the linux-image-* packages provided by Debian, or compile a customized kernel from source. Note that a lot of information in this section is based on the assumption that you will be using one of the modular Debian     kernels, together with initramfs-tools and udev. If you choose to use a custom kernel that does not require an initrd or if you use a different initrd generator, some of the information may not be relevant for you. 4.6.1. Installing the kernel metapackage When you dist-upgrade from lenny to squeeze, it is strongly     recommended that you install a new linux-image-2.6-* metapackage. This package may be installed automatically by the dist-upgrade process. You can verify this by running:     # dpkg -l "linux-image*" | grep ^ii If you do not see any output, then you will need to install a new     linux-image package by hand. To see a list of available linux-image-2.6 metapackages, run:     # apt-cache search linux-image-2.6- | grep -v transition If you are unsure about which package to select, run uname -r and look for a package with a similar name. For example, if you see     '2.6.26-2-686', it is recommended that you install linux-image-2.6-686. You may also use apt-cache to see a long description of each package in order to help choose the best one available. For example:     # apt-cache show linux-image-2.6-686 You should then use apt-get install to install it. Once this new     kernel is installed you should reboot at the next available opportunity to get the benefits provided by the new kernel version. For the more adventurous there is an easy way to compile your own custom kernel on Debian GNU/Linux. Install the kernel-package tool and read the documentation in /usr/share/doc/kernel-package.     Alternatively, you can also use the kernel sources, provided in the linux-source-2.6 package. You can make use of the deb-pkg target available in the sources' makefile for building a binary package. There are some differences in these two approaches, please consult the respective package's documentation. If possible, it is to your advantage to upgrade the kernel package separately from the main dist-upgrade to reduce the     chances of a temporarily non-bootable system. Note that this should only be done after the minimal upgrade process described in Section 4.4.4, “Minimal system upgrade”. 4.6.2. Device enumeration reordering In lenny and later, a new kernel mechanism for hardware discovery may change the order in which devices are discovered on your     system on each boot, affecting the device names assigned to them. For example, if you have two network adapters that are associated with two different drivers, the devices eth0 and eth1 refer to may be swapped. For network devices, this reordering is normally avoided by the definitions at /etc/udev/rules.d/70-persistent-net.rules for udev . Since these rules were already in place in lenny, no additional action should be required when upgrading to squeeze to get the benefit of stable network device names. Please note, however,     that this udev mechanism means that a given network device name is tied to a particular piece of hardware; if you, for instance, exchange ethernet adapters in a deployed squeeze system, the new adapter will get a new interface name instead of using the existing one. To reuse an existing device name for new hardware, you will need to delete the associated entry from /etc/udev/ rules.d/70-persistent-net.rules. For storage devices, you may be able to avoid this reordering by using initramfs-tools and configuring it to load storage device driver modules in the same order they are currently loaded. However, in light of other changes to the storage subsystem of     the Linux kernel as described at Section 5.1.1, “Migration of disk drivers from IDE to PATA subsystem”, this is usually not worth the effort and it is recommended instead to use device names that are guaranteed to be stable over time, such as the UUID aliases ^[10] in the /dev/disk/by-uuid/ directory or LVM device names in /dev/mapper/. 4.6.3. Boot timing issues (waiting for root device) If an initrd created with initramfs-tools is used to boot the     system, in some cases the creation of device files by udev can happen too late for the boot scripts to act on. The usual symptoms are that the boot will fail because the root file system cannot be mounted and you are dropped into a debug shell: Gave up waiting for root device. Common problems: - Boot args (cat /proc/cmdline) - Check rootdelay= (did the system wait long enough?)     - Check root= (did the system wait for the right device?) - Missing modules (cat /proc/modules; ls /dev) ALERT! /dev/something does not exist. Dropping to a shell! (initramfs) But if you check afterwards, all devices that are needed are present in /dev. This has been observed in cases where the root file system is on a USB disk or on RAID, especially if LILO is used. A workaround for this issue is to use the boot parameter     rootdelay=9. The value for the timeout (in seconds) may need to be adjusted. 4.7. Preparing for the next release     After the upgrade there are several things you can do to prepare for the next release. * Remove obsolete and unused packages as described in     Section 4.9, “Obsolete packages”. You should review which configuration files they use and consider purging the packages to remove their configuration files. 4.8. Deprecated components With the next release of Debian GNU/Linux 7.0 (codenamed wheezy)     some features will be deprecated. Users will need to migrate to other alternatives to prevent trouble when updating to 7.0.     This includes the following features: * OpenVZ and Linux-Vserver: Debian GNU/Linux 6.0 will be the last release to include Linux kernel virtualization featuresets outside of mainline. This means that the OpenVZ and Linux-Vserver featuresets should be considered deprecated, and users should migrate to linux-2.6 upstream     merged virtualization solutions like KVM, Linux Containers or Xen. * The gdm package (GNOME Display Manager version 2.20) will be obsoleted by gdm3, a rewritten version. See Section 5.6, “GNOME desktop changes and support” for more information. 4.9. Obsolete packages Introducing several thousand new packages, squeeze also retires and omits more than four thousand old packages that were in lenny. It provides no upgrade path for these obsolete packages. While nothing prevents you from continuing to use an obsolete     package where desired, the Debian project will usually discontinue security support for it a year after squeeze's release^[11], and will not normally provide other support in the meantime. Replacing them with available alternatives, if any, is recommended. There are many reasons why packages might have been removed from the distribution: they are no longer maintained upstream; there is no longer a Debian Developer interested in maintaining the     packages; the functionality they provide has been superseded by different software (or a new version); or they are no longer considered suitable for squeeze due to bugs in them. In the latter case, packages might still be present in the “unstable” distribution. Detecting which packages in an updated system are “obsolete” is easy since the package management front-ends will mark them as     such. If you are using aptitude, you will see a listing of these packages in the “Obsolete and Locally Created Packages” entry. dselect provides a similar section but the listing it presents might differ. Also, if you have used aptitude or apt-get to manually install packages in lenny it will have kept track of those packages you manually installed and will be able to mark as obsolete those packages pulled in by dependencies alone which are no longer     needed if a package has been removed. aptitude and apt, unlike deborphan, will not mark for removal packages that you manually installed, as opposed to those that were automatically installed through dependencies. To remove automatically installed packages that are no longer used, run:     # apt-get autoremove There are additional tools you can use to find obsolete packages such as deborphan, debfoster or cruft. deborphan is highly recommended, although it will (in default mode) only report obsolete libraries: packages in the “libs” or “oldlibs” sections     that are not used by any other packages. Do not blindly remove the packages these tools present, especially if you are using aggressive non-default options that are prone to produce false positives. It is highly recommended that you manually review the packages suggested for removal (i.e. their contents, size and description) before you remove them. The Debian Bug Tracking System (http://bugs.debian.org/) often provides additional information on why the package was removed.     You should review both the archived bug reports for the package itself and the archived bug reports for the ftp.debian.org pseudo-package (http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg= ftp.debian.org&archive=yes) . The list of obsolete packages includes: * The plone content management suite. This has been done on request by the developers to use the Unified Installer for Linux, which they consider their only supported deployment platform. The recommended tool for installing Plone on a Debian GNU/Linux system is the Unified Installer, available for download from http://plone.org/ (http://plone.org/) * nessus, the vulnerability scanning server and its associated libraries and other software. It has been deprecated in favor of the software provided by OpenVAS which includes openvas-server and openvas-client. As there is no automatic upgrade path you will have to install OpenVAS and manually move over your Nessus service configuration (users, certificates, etc.) to OpenVAS. * postgresql-8.3, successor is postgresql-8.4. * mysql-server-5.0, successor is mysql-server-5.1.     * python2.4, successor is python2.6. * Java 5 software including the packages sun-java5-jre and sun-java5-bin, successor is Java 6: sun-java6-jre and associated packages. * apt-proxy is no longer provided, alternatives to this tool include apt-cacher-ng, apt-cacher and approx. Although no automatic upgrade path exists, user of apt-proxy can switch to these alternatives by manually installing any of these packages. * Some of Xorg's video drivers are no longer available in squeeze and are obsolete. This includes xserver-xorg-video-cyrix, xserver-xorg-video-i810, xserver-xorg-video-imstt, xserver-xorg-video-nsc, xserver-xorg-video-sunbw2, and xserver-xorg-video-vga. They might be removed through the upgrade. Users should install xserver-xorg-video-all instead. * The utility used in lenny to display a splash image at boot time, usplash, is no longer available. It has been replaced by plymouth. 4.9.1. Dummy packages Some packages from lenny have been split into several packages in squeeze, often to improve system maintainability. To ease the upgrade path in such cases, squeeze often provides “dummy”     packages: empty packages that have the same name as the old package in lenny with dependencies that cause the new packages to be installed. These “dummy” packages are considered obsolete packages after the upgrade and can be safely removed. Most (but not all) dummy packages' descriptions indicate their purpose. Package descriptions for dummy packages are not uniform, however, so you might also find deborphan with the --guess-*     options (e.g. --guess-dummy) useful to detect them in your system. Note that some dummy packages are not intended to be removed after an upgrade but are, instead, used to keep track of the current available version of a program over time. -------------- ^[4] If the debconf priority is set to a very high level you     might prevent configuration prompts, but services that rely on default answers that are not applicable to your system will fail to start. ^[5] For example: DNS or DHCP services, specially when there is     no redundancy or failover. In the DHCP case end-users might be disconnected from the network if the lease time is lower than the time it takes for the upgrade process to complete.     ^[6] This feature can be disabled by adding the parameter panic=0 to your boot parameters. ^[7] Debian's package management system normally does not allow a     package to remove or replace a file owned by another package unless it has been defined to replace that package. ^[8] There are also known incompatibilities between the old     kernel and the new udev. If you find issues after the reboot with the new kernel you will have to downgrade the udev in order to use the old one. ^[9] If you are logging the upgrade as described in Section 4.4, “Upgrading packages”, please, use script again to log the next     steps of the upgrade after the reboot in order to log the result of the actions described in Section 4.4.6, “Upgrading the system” . ^[10] Some devices, such as those used by crypt, RAID or LVM have     stable non-UUID identifiers. In these cases you should use the name of the devices, which are already unambiguous and stable. ^[11] Or for as long as there is not another release in that time     frame. Typically only two stable releases are supported at any given time. Chapter 5. Issues to be aware of for squeeze 5.1. Potential problems Sometimes, changes introduced in a new release have side-effects we cannot reasonably avoid, or they expose bugs somewhere else.     This section documents issues we are aware of. Please also read the errata, the relevant packages' documentation, bug reports and other information mentioned in Section 6.1, “Further reading”. 5.1.1. Migration of disk drivers from IDE to PATA subsystem The new Linux kernel version provides different drivers for some     PATA (IDE) controllers. The names of some hard disk, CD-ROM, and tape devices may change. It is now recommended to identify disk devices in configuration files by label or UUID (unique identifier) rather than by device name, which will work with both old and new kernel versions. Upon upgrading to the squeeze version of the Debian kernel packages, the linux-base package will offer to do this conversion for you     in the config files for most of the filesystem-related packages on the system, including the various bootloaders included in Debian. If you choose not to update the system configuration automatically, or if you are not using the Debian kernel packages, you must update device IDs yourself before the next system reboot to ensure the system remains bootable. 5.1.2. mdadm metadata format change requires recent Grub The following only applies to users who want to let the grub-pc bootloader load the kernel directly off a RAID device created with mdadm 3.x and default values, or when the metadata version     is explicitly set using -e. Specifically, this includes all arrays created during or after the installation of Debian squeeze. Arrays created with older mdadm versions, and RAIDs created with the command-line option -e 0.9 are not affected. Versions of grub-pc older than 1.98+20100720-1 will not be able to boot directly off a RAID with the 1.x metadata formats (the new default is 1.2). To ensure a bootable system, please make     sure to use grub-pc 1.98+20100720-1 or later, which is provided by Debian squeeze. An unbootable system may be rescued with Super Grub2 Disk (http://www.supergrubdisk.org/super-grub2-disk/) or grml (http://grml.org) . 5.1.3. pam_userdb.so breakage with newer libdb Some Berkeley Database version 7 files created with libdb3 cannot     be read by newer libdb versions (see bug #521860 (http:// bugs.debian.org/521860) ). As a workaround, the files can be recreated with db4.8_load, from the db4.8-util package. 5.1.4. Potential issues with diversions of /bin/sh If you have previously added a local diversion for /bin/sh, or modified the /bin/sh symlink to point to somewhere other than /     bin/bash, then you may encounter problems when upgrading the dash or bash packages. Note that this includes changes made by allowing other packages (for example mksh) to become the default system shell by taking over /bin/sh. If you encounter any such issues, please remove the local     diversion and ensure that the symlinks for both /bin/sh and its manual page point to the files provided by the bash package and then dpkg-reconfigure --force dash. dpkg-divert --remove /bin/sh dpkg-divert --remove /usr/share/man/man1/sh.1.gz     ln -sf bash /bin/sh ln -sf bash.1.gz /usr/share/man/man1/sh.1.gz 5.1.5. Change in kernel policy regarding resource conflicts The default setting for the acpi_enforce_resources parameter in the Linux kernel has changed to be “strict” by default. This can     lead some legacy sensor drivers to be denied access to the sensors' hardware. One workaround is to append “ acpi_enforce_resources=lax” to the kernel command line. 5.2. LDAP support     A feature in the cryptography libraries used in the LDAP libraries causes programs that use LDAP and attempt to change     their effective privileges to fail when connecting to an LDAP server using TLS or SSL. This can cause problems for suid programs on systems using libnss-ldap like sudo, su or schroot and for suid programs that perform LDAP searches like sudo-ldap. It is recommended to replace the libnss-ldap package with     libnss-ldapd, a newer library which uses separate daemon (nslcd) for all LDAP lookups. The replacement for libpam-ldap is libpam-ldapd. Note that libnss-ldapd recommends the NSS caching daemon (nscd)     which you should evaluate for suitability in your environment before installing. As an alternative to nscd you can consider unscd. Further information is available in bugs #566351 (http://     bugs.debian.org/566351) and #545414 (http://bugs.debian.org/ 545414) . 5.3. sieve service moving to its IANA-allocated port The IANA port allocated for ManageSieve is 4190/tcp, and the old port used by timsieved and other managesieve software in many     distributions (2000/tcp) is allocated for Cisco SCCP usage, according to the IANA registry (http://www.iana.org/assignments/ port-numbers) . Starting with the version 4.38 of the Debian netbase package, the     sieve service will be moved from port 2000 to port 4190 in the / etc/services file. Any installs which used the sieve service name instead of a     numeric port number will switch to the new port number as soon as the services are restarted or reloaded, and in some cases, immediately after /etc/services is updated.     This will affect Cyrus IMAP. This may also affect other sieve-enabled software such as DoveCot. In order to avoid downtime problems, mail cluster administrators using Debian are urged to verify their Cyrus (and probably also     DoveCot) installs, and take measures to avoid services moving from port 2000/tcp to port 4190/tcp by surprise in either servers or clients. It is worth noting that: * /etc/services will only be automatically updated if you never made any modifications to it. Otherwise, you will be presented with a prompt by dpkg asking you about the changes. * You can edit /etc/services and change the sieve port back to 2000 if you want (this is not recommended, though).     * You can edit /etc/cyrus.conf and any other relevant configuration files for your mail/webmail cluster (e.g. on the sieve web frontends) ahead of time to force them all to a static port number. * You can configure cyrus master to listen on both ports (2000 and 4190) at the same time, and thus avoid the problem entirely. This also allows for a much more smooth migration from port 2000 to port 4190. 5.4. Security status of web browsers Debian 6.0 includes several browser engines which are affected by a steady stream of security vulnerabilities. The high rate of vulnerabilities and partial lack of upstream support in the form of long term branches make it very difficult to support these browsers with backported security fixes. Additionally, library     interdepencies make it impossible to update to newer upstream releases. As such, browsers built upon the qtwebkit and khtml engines are included in Squeeze, but not covered by full security support. We will make an effort to track down and backport security fixes, but in general these browsers should not be used against untrusted websites. For general web browser use we recommend browsers building on the Mozilla xulrunner engine (Iceweasel and Iceape), browsers based     on the Webkit engine (e.g. Epiphany) or Chromium. Xulrunner has had a history of good backportability for older releases over the previous release cycles. Chromium —while built upon the Webkit codebase— is a leaf     package, i.e. if backporting becomes no longer feasible, there's still the possibility of upgrading to a later upstream release (which is not possible for the webkit library itself).     Webkit is supported by upstream with a long term maintenance branch. 5.5. KDE desktop Squeeze is the first Debian release to ship with the full support for the next generation KDE that is based on Qt 4. Most official     KDE applications are at version 4.4.5 with the exception of kdepim that is at version 4.4.7. You can read the announcements from the KDE Project (http://www.kde.org/announcements/) to learn more about the changes. 5.5.1. Upgrading from KDE 3 KDE 3 Desktop Environment is no longer supported in Debian 6.0. It will be automatically replaced by the new 4.4 series on     upgrade. As this is a major change, users should take some precautions in order to ensure as smooth of an upgrade process as possible. Important     It is discouraged to upgrade while there is an active KDE 3 session on the system. Otherwise, the process might render the running session dysfunctional with the possibility of data loss. Upon the first login on the upgraded system, existing users will be prompted with the Debian-KDE guided migration procedure called     kaboom which will assist in the process of migrating the user's personal data and optionally backing up old KDE configuration. For more information, visit the Kaboom homepage (http:// pkg-kde.alioth.debian.org/kaboom.html) . While KDE 3 based desktop environment is no longer supported, users can still install and use some individual KDE 3 applications since the core libraries and binaries of KDE 3 (kdelibs) and Qt 3 are still available in Debian 6.0. However,     please note that these applications might not be well integrated with the new environment. What's more, neither KDE 3 nor Qt 3 will be supported in any form in the next Debian release so if you are using them, you are strongly advised to port your software to the new platform. 5.5.2. New KDE metapackages As noted earlier, Debian 6.0 introduces a new set of KDE related metapackages: * You are strongly advised to install the kde-standard package for normal desktop usage. kde-standard will pull in the KDE Plasma Desktop (http://www.kde.org/workspaces/plasmadesktop/) by default, and a selected set of commonly used applications. * If you want a minimal desktop you can install the kde-plasma-desktop package and manually pick the applications you need. This is a rough equivalent of the kde-minimal     package as shipped in Debian 5.0. * For small form factor devices, there is an alternative environment called KDE Plasma Netbook (http://www.kde.org/ workspaces/plasmanetbook/) that can be installed with the kde-plasma-netbook package. Plasma Netbook and Plasma Desktop can live in the same system and the default can be configured in System Settings (replacement of the former KControl). * If you want a full set of official KDE applications, you have the possibility to install the kde-full package. It will install KDE Plasma Desktop by default. 5.6. GNOME desktop changes and support There have been many changes in the GNOME desktop environment from the version shipped in lenny to the version in squeeze, you     can find more information in the GNOME 2.30 Release Notes (http:/ /library.gnome.org/misc/release-notes/2.30/) . Specific issues are listed below. 5.6.1. GDM 2.20 and 2.30 The GNOME Display Manager (GDM), is kept at version 2.20 for systems upgraded from lenny. This version will still be maintained for the squeeze cycle but it is the last release to do so. Newly installed systems will get GDM 2.30 instead, provided     by the gdm3 package. Because of incompatibilities between both versions, this upgrade is not automatic, but it is recommended to install gdm3 after the upgrade to squeeze. This should be done from the console, or with only one open GNOME session. Note that settings from GDM 2.20 will not be migrated. For a standard desktop system, however, simply installing gdm3 should be enough. 5.6.2. Device and other administrative permissions Specific permissions on devices are granted automatically to the user currently logged on physically to the system: video and     audio devices, network roaming, power management, device mounting. The cdrom, floppy, audio, video, plugdev and powerdev groups are no longer useful. See the consolekit documentation for more information. Most graphical programs requiring root permissions now rely on     PolicyKit (http://www.freedesktop.org/wiki/Software/PolicyKit) to do so, instead of gksu. The recommended way to give a user administrative rights is to add it to the sudo group. 5.6.3. network-manager and ifupdown interaction Upon upgrading the network-manager package, interfaces configured in /etc/network/interfaces to use DHCP with no other options will be disabled in that file, and handled by NetworkManager instead.     Therefore the ifup and ifdown commands will not work. These interfaces can be managed using the NetworkManager frontends instead, see the NetworkManager documentation (http:// live.gnome.org/NetworkManager/SystemSettings) . Conversely, any interfaces configured in /etc/network/interfaces     with more options will be ignored by NetworkManager. This applies in particular to wireless interfaces used during the installation of Debian (see bug #606268 (http://bugs.debian.org/606268) ). 5.7. Graphics stack changes     There have been a number of changes to the X stack in Debian 6.0. This section lists the most important and user-visible. 5.7.1. Obsolete Xorg drivers The cyrix, imstt, sunbw2 and vga Xorg video drivers are no longer     provided. Users should switch to a generic such as vesa or fbdev instead. The old via driver was no longer maintained, and has been     replaced by the openchrome driver, which will be used automatically after the upgrade. The nv and radeonhd drivers are still present in this release,     but are deprecated. Users should consider the nouveau and radeon drivers instead, respectively. The calcomp, citron, digitaledge, dmc, dynapro, elo2300, fpit, hyperpen, jamstudio, magellan, microtouch, mutouch, palmax, spaceorb, summa, tek4957 and ur98 X input drivers have been     discontinued and are not included in this release. Users of these devices might want to switch to a suitable kernel driver and the evdev X driver. For many serial devices, the inputattach utility allows attaching them to a Linux input device which can be recognized by the evdev X driver. 5.7.2. Kernel mode setting Kernel drivers for Intel (starting from i830), ATI/AMD (from the     original Radeon to the Radeon HD 5xxx “Evergreen” series) and for NVIDIA graphics chipsets now support native mode setting. 5.7.3. Input device hotplug The Xorg X server included in Debian 6.0 provides improved support for hotplugging of input devices (mice, keyboards, tablets, …). The old xserver-xorg-input-kbd and xserver-xorg-input-mouse packages are replaced by     xserver-xorg-input-evdev, which requires a kernel with the CONFIG_INPUT_EVDEV option enabled. Additionally, some of the keycodes produced by this driver differ from those traditionally associated with the same keys. Users of programs like xmodmap and xbindkeys will need to adjust their configurations for the new keycodes. 5.7.4. X server “zapping” Traditionally, the Ctrl+Alt+Backspace combination would kill the X server. This combination is no longer active by default, but     can be re-enabled by reconfiguring the keyboard-configuration package (system-wide), or using your desktop environment's keyboard preferences application. 5.8. Munin web path change For squeeze, the default location for the generated web content of munin has been changed from /var/www/munin to /var/cache/munin     /www and therefore /etc/munin/munin.conf needs to be adapted on upgrades, if it has been changed by the admin. If you are upgrading, please read /usr/share/doc/munin/NEWS.Debian.gz. 5.9. Shorewall upgrade instructions Users of the shorewall firewall should read the instructions at http://www.shorewall.net/LennyToSqueeze.html (http://     www.shorewall.net/LennyToSqueeze.html) , also available as /usr/ share/doc/shorewall-doc/html/LennyToSqueeze.html in the shorewall-doc package, upon upgrading to Debian 6.0. Chapter 6. More information on Debian GNU/Linux 6.1. Further reading Beyond these release notes and the installation guide, further documentation on Debian GNU/Linux is available from the Debian Documentation Project (DDP), whose goal is to create high-quality documentation for Debian users and developers. Documentation,     including the Debian Reference, Debian New Maintainers Guide, and Debian FAQ are available, and many more. For full details of the existing resources see the Debian Documentation website (http:// www.debian.org/doc/) and the Debian Wiki website (http:// wiki.debian.org/) Documentation for individual packages is installed into /usr/     share/doc/package. This may include copyright information, Debian specific details and any upstream documentation. 6.2. Getting help There are many sources of help, advice and support for Debian users, but these should only be considered if research into     documentation of the issue has exhausted all sources. This section provides a short introduction into these which may be helpful for new Debian users. 6.2.1. Mailing lists The mailing lists of most interest to Debian users are the debian-user list (English) and other debian-user-language lists (for other languages). For information on these lists and details     of how to subscribe see http://lists.debian.org/ (http:// lists.debian.org/) . Please check the archives for answers to your question prior to posting and also adhere to standard list etiquette. 6.2.2. Internet Relay Chat Debian has an IRC channel dedicated to the support and aid of     Debian users located on the OFTC IRC network. To access the channel, point your favorite IRC client at irc.debian.org and join #debian. Please follow the channel guidelines, respecting other users     fully. The guidelines are available at the Debian Wiki (http:// wiki.debian.org/DebianIRC) .     For more information on OFTC please visit the website (http:// www.oftc.net/) . 6.3. Reporting bugs We strive to make Debian GNU/Linux a high quality operating system, however that does not mean that the packages we provide are totally free of bugs. Consistent with Debian's “open     development” philosophy and as a service to our users, we provide all the information on reported bugs at our own Bug Tracking System (BTS). The BTS is browseable at http://bugs.debian.org/ (http://bugs.debian.org/) . If you find a bug in the distribution or in packaged software that is part of it, please report it so that it can be properly     fixed for future releases. Reporting bugs requires a valid email address. We ask for this so that we can trace bugs and developers can get in contact with submitters should additional information be needed. You can submit a bug report using the program reportbug or manually using email. You can read more about the Bug Tracking     System and how to use it by reading the reference documentation (available at /usr/share/doc/debian if you have doc-debian installed) or online at the Bug Tracking System (http:// bugs.debian.org/) . 6.4. Contributing to Debian You do not need to be an expert to contribute to Debian. By assisting users with problems on the various user support lists (http://lists.debian.org/) you are contributing to the community. Identifying (and also solving) problems related to the development of the distribution by participating on the development lists (http://lists.debian.org/) is also extremely     helpful. To maintain Debian's high quality distribution, submit bugs (http://bugs.debian.org/) and help developers track them down and fix them. If you have a way with words then you may want to contribute more actively by helping to write documentation (http://www.debian.org/doc/cvs) or translate (http:// www.debian.org/international/) existing documentation into your own language. If you can dedicate more time, you could manage a piece of the Free Software collection within Debian. Especially helpful is if people adopt or maintain items that people have requested for inclusion within Debian. The Work Needing and Prospective     Packages database (http://www.debian.org/devel/wnpp/) details this information. If you have an interest in specific groups then you may find enjoyment in contributing to some of Debian's subprojects which include ports to particular architectures, Debian Jr. (http://www.debian.org/devel/debian-jr/) and Debian Med (http://www.debian.org/devel/debian-med/) . In any case, if you are working in the free software community in any way, as a user, programmer, writer or translator you are     already helping the free software effort. Contributing is rewarding and fun, and as well as allowing you to meet new people it gives you that warm fuzzy feeling inside. Appendix A. Managing your lenny system before the upgrade This appendix contains information on how to make sure you can     install or upgrade lenny packages before you upgrade to squeeze. This should only be necessary in specific situations. A.1. Upgrading your lenny system Basically this is no different than any other upgrade of lenny     you've been doing. The only difference is that you first need to make sure your package list still contains references to lenny as explained in Section A.2, “Checking your sources list”.     If you upgrade your system using a Debian mirror, it will automatically be upgraded to the latest lenny point release. A.2. Checking your sources list If any of the lines in your /etc/apt/sources.list refer to 'stable', you are effectively already “using” squeeze. This might     not be what you want if you are not ready yet for the upgrade. If you have already run apt-get update, you can still get back without problems following the procedure below. If you have also already installed packages from squeeze, there probably is not much point in installing packages from lenny     anymore. In that case you will have to decide for yourself whether you want to continue or not. It is possible to downgrade packages, but that is not covered here. Open the file /etc/apt/sources.list with your favorite editor (as     root) and check all lines beginning with deb http: or deb ftp: for a reference to “stable”. If you find any, change stable to lenny. If you have any lines starting with deb file:, you will have to     check for yourself if the location they refer to contains an lenny or a squeeze archive. Important     Do not change any lines that begin with deb cdrom:. Doing so would invalidate the line and you would have to run apt-cdrom again. Do not be alarmed if a 'cdrom' source line refers to “ unstable”. Although confusing, this is normal.     If you've made any changes, save the file and execute     # apt-get update     to refresh the package list. A.3. Upgrade legacy locales to UTF-8 If your system is localised and is using a locale that is not based on UTF-8 you should strongly consider switching your system over to using UTF-8 locales. In the past, there have been bugs     identified that manifest itself only when using a non-UTF-8 locale. On the desktop, such legacy locales are supported through ugly hacks in the libraries internals, and we cannot decently provide support for users who still use them. To configure your system's locale you can run dpkg-reconfigure locales. Ensure you select an UTF-8 locale when you are presented     with the question asking which locale to use as a default in the system. In addition, you should review the locale settings of your users and ensure that they do not have legacy locales definitions in their configuration environment. Appendix B. Contributors to the Release Notes     Many people helped with the release notes, including, but not limited to Adam Di Carlo, Andreas Barth, Andrei Popescu, Anne Bezemer, Bob Hilliard, Charles Plessy, Christian Perrier, Daniel Baumann, Eddy Petrișor, Emmanuel Kasper, Esko Arajärvi, Frans Pop, Giovanni Rapagnani, Gordon Farquharson, Javier Fernández-Sanguino Peña,     Jens Seidel, Jonas Meurer, Josip Rodin, Justin B Rye, LaMont Jones, Luk Claes, Martin Michlmayr, Michael Biebl, Moritz Mühlenhoff, Noah Meyerhans, Noritada Kobayashi, Osamu Aoki, Peter Green, Rob Bradford, Samuel Thibault, Simon Bienlein, Simon Paillard, Stefan Fritsch, Steve Langasek, Steve McIntyre, Tobias Scherer, Vincent McIntyre, and W. Martin Borgert.     This document has been translated into many languages. Many thanks to the translators! Index A Abiword, What's new in the distribution? Apache, What's new in the distribution? B BIND, What's new in the distribution? Blu-ray, CDs, DVDs and BDs C CD, CDs, DVDs and BDs Cherokee, What's new in the distribution? Courier, What's new in the distribution? D Debian Med, Comprehensive support for neuroimaging research Debian Science, Comprehensive support for neuroimaging research Dia, What's new in the distribution? DocBook XML, Sources for this document DVD, CDs, DVDs and BDs E Ekiga, What's new in the distribution? Evolution, What's new in the distribution? Exim, What's new in the distribution? F Firefox, What's new in the distribution? G GCC, What's new in the distribution? GIMP, What's new in the distribution? GNOME, What's new in the distribution? GNUcash, What's new in the distribution? GNUmeric, What's new in the distribution? I isohybrid, CDs, DVDs and BDs K KDE, What's new in the distribution? KOffice, What's new in the distribution? L LDAP, LDAP support, LDAP support LILO, Boot timing issues (waiting for root device) Linux Standard Base, What's new in the distribution? LXDE, What's new in the distribution? M Mozilla, What's new in the distribution? MySQL, What's new in the distribution? N NeuroDebian, Comprehensive support for neuroimaging research neuroimaging research, Comprehensive support for neuroimaging research O OpenOffice.org, What's new in the distribution? OpenSSH, What's new in the distribution? P packages ants, Comprehensive support for neuroimaging research approx, Obsolete packages apt, Contributing upgrade reports, Preparing sources for APT, Adding APT Internet sources, Adding APT sources for a local mirror, Obsolete packages apt-cacher, Obsolete packages apt-cacher-ng, Obsolete packages apt-proxy, Obsolete packages aptitude, Package management, Make sure you have sufficient space for the upgrade autofs, Expected removals autofs5, Expected removals bash, Potential issues with diversions of /bin/sh console-setup, Unified keyboard settings consolekit, Device and other administrative permissions dash, Potential issues with diversions of /bin/sh db4.8-util, pam_userdb.so breakage with newer libdb dblatex, Sources for this document debian-goodies, Make sure you have sufficient space for the upgrade dhcp3, Expected removals discover, Major changes doc-debian, Reporting bugs docbook-xsl, Sources for this document evolution, Evolution firmware-linux, Firmware moved to the non-free section gdm, Deprecated components gdm3, Deprecated components, GDM 2.20 and 2.30 gksu, Device and other administrative permissions grub-pc, mdadm metadata format change requires recent Grub icedove, What's new in the distribution? iceweasel, What's new in the distribution? initramfs-tools, Debug shell during boot using initrd, Upgrading your kernel and related packages, Device enumeration reordering, Boot timing issues (waiting for root device) insserv, Dependency booting isc-dhcp, Expected removals kaboom, Upgrading from KDE 3 kde-full, New KDE metapackages kde-minimal, New KDE metapackages kde-plasma-desktop, New KDE metapackages kde-plasma-netbook, New KDE metapackages kde-standard, New KDE metapackages kdelibs, Upgrading from KDE 3 kdepim, KDE desktop kernel-package, Installing the kernel metapackage keyboard-configuration, X server “zapping” libnss-ldap, LDAP support, LDAP support libnss-ldapd, LDAP support, LDAP support libpam-ldap, LDAP support, LDAP support libpam-ldapd, LDAP support, LDAP support linux-base, Migration of disk drivers from IDE to PATA subsystem linux-image-*, Upgrading your kernel and related packages linux-image-2.6-686, Installing the kernel metapackage linux-source-2.6, Installing the kernel metapackage localepurge, Make sure you have sufficient space for the upgrade madwifi-source, Expected removals mdadm, mdadm metadata format change requires recent Grub mksh, Potential issues with diversions of /bin/sh mrtrix, Comprehensive support for neuroimaging research mysql-server-5.0, Obsolete packages mysql-server-5.1, Obsolete packages nessus, Obsolete packages netbase, sieve service moving to its IANA-allocated port network-manager, network-manager and ifupdown interaction nipype, Comprehensive support for neuroimaging research nscd, LDAP support odin, Comprehensive support for neuroimaging research openvas-client, Obsolete packages openvas-server, Obsolete packages plone, Obsolete packages plymouth, Obsolete packages popularity-contest, Make sure you have sufficient space for the upgrade postgresql-8.3, Obsolete packages postgresql-8.4, Obsolete packages psychopy, Comprehensive support for neuroimaging research python2.4, Expected removals, Obsolete packages python2.6, Expected removals, Obsolete packages release-notes, Reporting bugs on this document shorewall, Shorewall upgrade instructions shorewall-doc, Shorewall upgrade instructions splashy, Remove conflicting packages sudo-ldap, LDAP support sun-java5-bin, Obsolete packages sun-java5-jre, Obsolete packages sun-java6-jre, Obsolete packages tinc, Prepare a safe environment for the upgrade udev, Upgrading the kernel and udev, Upgrading your kernel and related packages, Device enumeration reordering, Boot timing issues (waiting for root device) unscd, LDAP support upgrade-reports, Contributing upgrade reports usplash, Obsolete packages xmlroff, Sources for this document xserver-xorg-input-evdev, Input device hotplug xserver-xorg-input-kbd, Input device hotplug xserver-xorg-input-mouse, Input device hotplug xserver-xorg-video-all, Obsolete packages xserver-xorg-video-cyrix, Obsolete packages xserver-xorg-video-i810, Obsolete packages xserver-xorg-video-imstt, Obsolete packages xserver-xorg-video-nsc, Obsolete packages xserver-xorg-video-sunbw2, Obsolete packages xserver-xorg-video-vga, Obsolete packages xsltproc, Sources for this document PHP, What's new in the distribution? Pidgin, What's new in the distribution? Postfix, What's new in the distribution? PostgreSQL, What's new in the distribution? T Thunderbird, What's new in the distribution? Tomcat, What's new in the distribution? X Xfce, What's new in the distribution? Glossary ACPI Advanced Configuration and Power Interface ALSA Advanced Linux Sound Architecture APM Advanced Power Management BD Blu-ray Disc CD Compact Disc CD-ROM Compact Disc Read Only Memory DHCP Dynamic Host Configuration Protocol DNS Domain Name System DVD Digital Versatile Disc GIMP GNU Image Manipulation Program GNU GNU's Not Unix GPG GNU Privacy Guard IDE Integrated Drive Electronics LDAP Lightweight Directory Access Protocol LILO LInux LOader LSB Linux Standard Base LVM Logical Volume Manager MTA Mail Transport Agent NFS Network File System NIC Network Interface Card NIS Network Information Service OSS Open Sound System RAID Redundant Array of Independent Disks RPC Remote Procedure Call SATA Serial Advanced Technology Attachment SSL Secure Sockets Layer TLS Transport Layer Security USB Universal Serial Bus UUID Universally Unique Identifier VGA Video Graphics Array WPA Wi-Fi Protected Access