/[ddp]/manuals/branches/release-notes/lenny/en/release-notes.dbk
ViewVC logotype

Contents of /manuals/branches/release-notes/lenny/en/release-notes.dbk

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4343 - (show annotations) (download)
Wed Apr 4 09:55:19 2007 UTC (6 years, 2 months ago) by vorlon
Original Path: manuals/trunk/release-notes/en/release-notes.en.sgml
File MIME type: text/x-sgml
File size: 148941 byte(s)
- finish proofread of chapter 4

- consistent use of 'back up', not 'backup', as a verb

- document the /usr/X11R6/bin upgrade problem for third-party packages

- limit the kernel-image 'unmarkauto' command to the real packages, excluding
  the metapackages

- talk about /var/cache disk usage in one section only

- don't propose apt-get autoclean, this is unnecessarily confusing in a
  dist-upgrade context

- re-add a para that was accidentally nuked from minimal_upgrade_desktop in a
  previous merge

- further refactor the kernel upgrade info: lift text from the "Upgrading your
  kernel" section to replace some suboptimal (new) text in "Upgrading
  packages", and split the information between the sections according to
  what's relevant to have in-line for the system upgrade or not.

- udev is a package, not a program.
1 <!DOCTYPE debiandoc PUBLIC "-//DebianDoc//DTD DebianDoc//EN" [
2 <!entity % dynamicdata SYSTEM "../dynamic.ent" > %dynamicdata;
3 <!entity % shareddata SYSTEM "../release-notes.ent" > %shareddata;
4 <!entity docid "$Id: release-notes.en.sgml,v 1.253 2007-04-04 09:55:19 vorlon Exp $">
5 ]>
6
7 <!-- Be careful with automatic reformatting. Please note that the indentation
8 in examples is used in the output (plus additional space) as well. -->
9
10 <debiandoc>
11 <book>
12 <titlepag>
13 <title>Release Notes for &debian; &release; ("&releasename;"), &arch-title;</title>
14 <author>
15 <name>Josip Rodin, Bob Hilliard, Adam Di Carlo, Anne Bezemer, Rob
16 Bradford (current), Frans Pop (current), Andreas Barth (current)</name><email></email>
17 </author>
18 <author>
19 <name></name><email>debian-doc@lists.debian.org</email>
20 </author>
21 <version>&docid;</version>
22 </titlepag>
23 <toc detail="sect1">
24 <chapt id="about"><heading>Introduction</heading>
25
26 <p>The primary goals of these Release Notes are to inform users
27 of major changes in this release of the &debian; distribution, to
28 provide information on how to upgrade safely from the previous
29 release to the current release and finally to inform users of known potential
30 issues they could encounter when upgrading to or using the
31 &releasename; release.</p>
32
33 <p>Note that it is impossible to list every known issue and that
34 therefore a selection has been made based on a combination of the
35 expected prevalence and impact of issues.</p>
36
37 <p>The most recent version of this document is always available at <url
38 id="&url-release-notes;">. If the version you are reading is more than a
39 month old<footnote>as listed on the front page of the PDF version and in
40 the footer of the online HTML version</footnote>, you might wish to obtain
41 the latest version.</p>
42
43 <p>Please note that we only support and document upgrading from the
44 previous release of Debian (in this case, the upgrade from
45 &oldreleasename;). If you need to upgrade from older releases, we suggest
46 you read previous editions of the release notes and upgrade to
47 &oldreleasename; first.</p>
48
49 <sect id="bug_reports"><heading>Reporting bugs on this document</heading>
50
51 <p>We have attempted to test all the different upgrade steps
52 described in this document and we have also tried to anticipate all
53 the possible issues our users might encounter.</p>
54
55 <p>Nevertheless, if you think you have found any bug in this
56 documentation (incorrect information or information that is missing),
57 please file a bug in the <url id="&url-bts;" name="bug tracking
58 system"> against the <package>release-notes</package> package.</p>
59
60 </sect>
61
62 <sect id="upgrade_reports"><heading>Contributing upgrade reports</heading>
63 <p>We welcome any information from users related to upgrades from
64 &oldreleasename; to &releasename;. If you are willing to share information
65 please file a bug in the <url id="&url-bts;" name="bug tracking system">
66 against the <package>upgrade-reports</package> package with your results.</p>
67
68 <p>Please provide the following information when submitting your upgrade report:
69
70 <list>
71
72 <!-- TODO: any more things to add here? -->
73 <item><p>The status of your package database before and after the
74 upgrade: <prgn/dpkg/'s status database available at
75 <file>/var/lib/dpkg/status</file> and <prgn/aptitudes/'s package
76 state information, available at
77 <file>/var/lib/aptitude/pkgstates</file>. You should have made a
78 backup before the upgrade as described at <ref id="data-backup">,
79 but you can also find backups of this information in
80 <file>/var/backups</file>.</p></item>
81
82 <item><p>Session logs using <package>script</package>, as described in
83 <ref id="record_session">.</p></item>
84
85 <item><p>The status of your package database before and after the
86 upgrade, using the backup procedure described at <ref
87 id="backup">.</p></item>
88
89 <item><p>Your aptitude logs, available at <file>/var/log/aptitude</file>.</p></item>
90
91 </list></p>
92
93 <p>Note: you should take some time to review and remove any sensitive and/or confidential
94 information from the logs before including them in a bug report as the information
95 will be published in a public database.
96
97 </sect>
98
99 <sect id="sources"><heading>Sources for this document</heading>
100 <p>This document uses <package>debiandocsgml</package>. Its sources
101 are available in the CVS of the <em>Debian Documentation Project</em>.
102 You can use the <url id="&url-cvs-release-notes;" name="web
103 interface"> to access its files individually through the web and see
104 their changes. For more information on how to access the CVS please
105 consult the <url id="&url-ddp-cvs-info;" name="Debian Documentation Project CVS pages">.
106 </p>
107
108 </sect>
109 <!--
110 <sect id="changes"><heading>Changes in the Release Notes</heading>
111
112 <p>This section lists changes in the Release Notes since the original
113 version that was published with &debian; &release;r0. Minor textual
114 corrections are omitted.</p>
115
116 <p><list>
117
118 <item><p>Description of change.</p></item>
119
120 </list></p>
121
122 </sect>
123 -->
124
125 </chapt>
126
127 <chapt id="whats-new"><heading>What's new in &debian; &release;</heading>
128
129 <p>This release adds official support for the AMD64 architecture which
130 supports 64-bit processors from both Intel (EM64T) and AMD (AMD64).
131 During the previous release, &debian; 3.1 ('sarge'), an unofficial
132 version of this port was available.
133 <![ %amd64 [
134 Upgrading from this unofficial version should be possible using these
135 Release Notes, but is not officially supported by Debian.
136 ]]>
137 </p>
138
139 <p>Official support for the Motorola 680x0 ('m68k') architecture has been
140 dropped because it did not meet the criteria set by the Debian Release
141 Managers. The most important underlying reasons are performance and limited
142 upstream support for essential toolchain components. However, the m68k port
143 is expected to remain active and available for installation even if not a
144 part of this official stable release.</p>
145
146 <p>The following are the officially supported architectures for
147 &debian; &releasename;:</p>
148
149 <p>
150 <list>
151 <item><p>Intel x86 ('i386')</p></item>
152 <item><p>Alpha ('alpha')</p></item>
153 <item><p>SPARC ('sparc')</p></item>
154 <item><p>PowerPC ('powerpc')</p></item>
155 <item><p>ARM ('arm')</p></item>
156 <item><p>MIPS ('mips' (big-endian) and 'mipsel' (little-endian))</p></item>
157 <item><p>Intel Itanium ('ia64')</p></item>
158 <item><p>HP PA-RISC ('hppa')</p></item>
159 <item><p>S/390 ('s390')</p></item>
160 <item><p>AMD64 ('amd64')</p></item>
161 </list>
162 </p>
163
164 <p>You can read more about port status, and port-specific
165 information for your architecture at the <url id="&url-ports;"
166 name="Debian port web pages">.</p>
167
168 <![ %secondrelease [
169 <p>This is only the second official release of &debian; for the
170 &arch-title; architecture. We feel that it has proven itself
171 sufficiently to be released. However, because it has not had the
172 exposure (and hence testing by users) that our releases on
173 other architectures have had, you may encounter a few bugs. Please
174 use our <url id="&url-bts;" name="bug tracking system"> to report
175 any problems; make sure to mention the fact that the bug is on the
176 &architecture; platform.</p>
177 ]]>
178
179 <![ %arm [
180 <sect id="new-arch"><heading>What's new for &arch-title;?</heading>
181 <p>RiscPC (RPC) support is incomplete and will be removed after etch.
182 While a kernel for RiscPC is still provided in etch, the installer
183 doesn't support this system.</p>
184
185 <p>Support for Intel's IXP4xx platform has been added. The installer
186 includes support for the Linksys NSLU2, a small and inexpensive device
187 which allows the usage of attached storage through USB. More
188 information about Debian on the NSLU2 can be found at
189 <url id="http://www.cyrius.com/debian/nslu2/">.</p>
190
191 <p>Support has also been added for Intel's I/O Processor (IOP) platform.
192 Specifically, &debian; &release; supports IOP 32x based devices. Two Network
193 Attached Storage (NAS) devices based on an IOP chip are supported in
194 the installer: the GLAN Tank from IO-Data and the Thecus N2100. See
195 <url id="http://www.cyrius.com/debian/iop/">.</p>
196 </sect>
197 ]]>
198
199 <![ %mips-mipsel [
200 <sect id="new-arch"><heading>What's new for &arch-title;?</heading>
201 <![ %mipsel [
202 <p>DECstation support is incomplete and untested in etch and will be
203 removed completely after this release. This includes both DECstation
204 variants previously supported in Debian, r3k-kn02 and r4k-kn04.</p>
205
206 <p>Installations on MIPS based Cobalt machines (Qube 2700, RaQ1, Qube2,
207 RaQ2) are now possible without the use of a serial console. By
208 default, installations on Cobalt are now done via SSH. See
209 <url id="http://www.cyrius.com/debian/cobalt/"> for more information.</p>
210 ]]>
211 <![ %mips [
212 <p>Support for SGI's IP32 platform has been added. The IP32 platform
213 consists of SGI O2 machines with R5000, R5200 or RM7000 processors.
214 Installation is possible via frame buffer or the serial console.</p>
215 ]]>
216 <p>Support for Broadcom's SB1A evaluation board BCM91480B ("BigSur"),
217 which is based on the BCM1480 quad-core chip, has been added, both to
218 the kernel and the installer. This board is supported both in little
219 and big endian mode.</p>
220
221 <p>Support for a Qemu machine has been added. The Qemu/MIPS machine
222 emulates a classic ISA PC style machine with a MIPS 4Kc CPU.</p>
223 </sect>
224 ]]>
225
226 <!--
227 <p>&debian; &release; for the &arch-title; architecture ships with
228 kernel version &kernelversion;.</p>
229 -->
230
231 <sect id="newdistro"><heading>What's new in the distribution?</heading>
232
233 <!-- TODO (jfs): numbers could be entities so that updating them was easier, like
234 in the FAQ -->
235 <!-- TODO: Numbers need to be reviewed, these values have been obtained
236 using the changes-release script -->
237 <p>This new release of Debian again comes with a lot more software
238 than its predecessor &oldreleasename;; the distribution includes
239 over 6,200 new packages, for a total of over 18,000 packages. Most
240 of the software in the distribution has been updated: over 10,500
241 software packages (this is 67% of all packages in &oldreleasename;).
242 Also, a significant number of packages (over 3400, 22% of the
243 packages in &oldreleasename;) have for various reasons been removed
244 from the distribution. You will not see any updates for these
245 packages and they will be marked as 'obsolete' in package management
246 front-ends.</p>
247
248 <p>With this release, &debian; switches from XFree86 to the 7.1
249 release of X.Org, which includes support for a greater range of
250 hardware and better autodetection. This allows the use of Compiz,
251 which is one of the first compositing window managers for the X
252 Window System, taking full advantage of hardware
253 OpenGL acceleration for supported devices.</p>
254
255 <p>&debian; again ships with several desktop applications and environments.
256 Among others it now includes the desktop environments GNOME
257 2.14<footnote>with some modules from GNOME 2.16</footnote>, KDE 3.5.5a,
258 and Xfce 4.4. Productivity applications have also been upgraded,
259 including the office suites OpenOffice.org 2.0.4a and KOffice 1.6 as
260 well as GNUcash 2.0.5, GNUmeric 1.6.3 and Abiword 2.4.6.</p>
261
262 <p>Updates of other desktop applications include the upgrade to
263 Evolution 2.6.3 and Gaim 2.0. The Mozilla suite has also been updated,
264 with a rename of the main programs: <prgn>iceweasel</prgn>
265 (version 2.0.0.2) is the unbranded <prgn>Firefox</prgn> web browser
266 and <prgn/icedove/ (version 1.5) is the unbranded <prgn/Thunderbird/
267 mail client.</p>
268
269 <p>Among many others, this release also includes the following software
270 updates:</p>
271
272 <p><list>
273
274 <item>the GNU C library, version 2.3.6</item>
275
276 <item>the GNU Compiler Collection 4.1 as default compiler</item>
277
278 <item>language interpreters: PHP 5.2, Python 2.4</item>
279
280 <item>server software:
281
282 <p><list>
283 <item>e-mail servers: Exim 4.63 (default email server
284 for new installations), Postfix 2.3, Courier 0.53, Cyrus 2.2.</item>
285
286 <!-- TODO: Cherokee, lighttpd, and Tomcat 5 are NEW -->
287 <!-- Note: No significant changes for Roxen4, Boa, and thttpd -->
288 <item>web servers: Apache 2.2, fnord 1.10</item>
289
290 <item>database servers: MySQL 5.0.32, PostgreSQL 8.1</item>
291
292 <item>the OpenSSH server, version 4.3</item>
293
294 <item>name servers: Bind 9.3, maradns 1.2</item>
295
296 <item>directory server: OpenLDAP 2.3</item>
297
298 <!-- FIXME (JFS): List other server software? RADIUS? Streaming ? -->
299 </list></p>
300
301 </list></p>
302
303
304 <!-- FIXME (vorlon): is aptitude news for etch, does it belong here? -->
305 <p><prgn/aptitude/ is the preferred program for package management
306 from console.
307 <prgn/aptitude/ supports most command line operations of <prgn/apt-get/
308 and has proven to be better at dependency resolution than <prgn/apt-get/.
309 If you are still using <prgn/dselect/, you should switch to
310 <package/aptitude/ as the official frontend for package management.</p>
311
312 <p>The official &debian; distribution now ships on 19 to 23
313 binary CDs (depending on the architecture) and a similar number of
314 source CDs. A DVD version of the distribution is also available.</p>
315
316 <!-- FIXME: Note on LSB support? (3.1?) -->
317
318 <sect1 id="secureapt"><heading>Secure APT</heading>
319
320 <!-- FIXME: More content needed here? -->
321 <p><em/Secure APT/ is now available in &releasename;. This feature adds
322 extra security to &debian; systems by easily supporting strong
323 cryptography and digital signatures to validate downloaded packages.
324 This release includes the <prgn/apt-key/ tool for adding new keys to
325 apt's keyring, which by default includes only the current Debian archive
326 signing key, provided in the <package>debian-archive-keyring</package>
327 package.</p>
328
329 <p>In its default configuration, <prgn/apt/ will now warn if packages
330 are downloaded from sources that are not authenticated. Future releases
331 might force all packages to be verified before downloading them.
332 Administrators of unofficial apt repositories are encouraged to
333 generate a cryptographic key and sign their Release files, as well
334 as providing a secure way to distribute their public keys.</p>
335
336 <p>For more information please read <manref name="apt" section="8">, the
337 <url
338 id="http://www.debian.org/doc/manuals/securing-debian-howto/ch7#s-deb-pack-sign"
339 name="Package signing in Debian"> chapter of the <em/Securing Debian
340 Manual/ and the <url id="http://wiki.debian.org/SecureApt"
341 name="Debian Wiki">.</p>
342
343 </sect1>
344 <sect1 id="volatile"><heading>debian-volatile now an official service</heading>
345
346 <p>The <em/debian-volatile/ service that was introduced as an
347 unofficial service with the release of &oldreleasename; has now
348 become an official &debian; service.</p>
349
350 <p>This means that it now uses a <tt/.debian.org/ address<footnote>
351 The old <tt/volatile.debian.net/ address will also remain valid for
352 the time being. </footnote>. Please make sure to update
353 your <file>/etc/apt/sources.list</file> accordingly if you were
354 already using this service.</p>
355
356 <p><em/debian-volatile/ allows users to easily
357 update stable packages that contain information that quickly goes out
358 of date. Examples are a virus scanner's signatures list or a spam
359 filter's pattern set. For more information and a list of mirrors,
360 please see the archive's <url id="&url-debian-volatile;"
361 name="web page">.</p>
362
363 </sect1>
364 </sect>
365
366 <sect id="system-changes"><heading>System improvements</heading>
367
368 <p>There have been a number of changes in the distribution that will
369 benefit new installations of &releasename;, but may not be automatically
370 applied on upgrades from &oldreleasename;. This section gives an
371 overview of the most relevant changes.
372 </p>
373
374 <p><taglist>
375
376 <!-- Bug #301138, fixed in etch -->
377 <tag>Priority for basic development packages lowered</tag>
378 <item><p>A number of development packages that used to be priority
379 <em/standard/ are now priority <em/optional/, which means they will
380 no longer be installed by default.
381 This includes the standard C/C++-compiler, <package>gcc</package>,
382 as well as some other software (<package>dpkg-dev</package>,
383 <package>flex</package>, <package>make</package>) and development
384 headers (<package>libc6-dev</package>,
385 <package>linux-kernel-headers</package>).</p>
386 <!-- TODO: Point to the bug report for the full list of packages in case
387 users want to remove them ? -->
388 <p>If you do wish to have these packages on your system, the easiest way
389 to install them is by installing <package/build-essential/, which will
390 pull in most of them.</p>
391 </item>
392
393 <tag>SELinux priority standard, but not enabled by default</tag>
394 <item><p>The packages needed for SELinux support have been
395 promoted to priority <em/standard/. This means that they will be
396 installed by default during new installations. For existing systems
397 you can install SELinux using:
398 <example>
399 # aptitude install selinux-basics
400 </example></p>
401
402 <p>Note that SELinux support is <em/not/ enabled by default. Information
403 on setting up and enabling SELinux can be found on the
404 <url id="&url-wiki-selinux;" name="Debian Wiki">.
405 </p></item>
406
407 <tag>New default inet superdaemon</tag>
408 <item><p>The default inet superdaemon for &releasename; is
409 <package>openbsd-inetd</package> instead of <package>netkit-inetd</package>.
410 It will not be started if no services are configured, which is true by
411 default. The new default daemon will be installed automatically on
412 upgrade.
413 </p></item>
414
415 <tag>Default <prgn/vi/ clone changed</tag>
416 <item><p>The <prgn/vi/ clone installed by default is now a compact version
417 of <prgn/vim/ (<package/vim-tiny/) instead of <package/nvi/.</p></item>
418
419 <tag>Changes in default features for <tt>ext2</tt>/<tt>ext3</tt></tag>
420 <item><p>New ext2 and ext3 filesystems will be created with features
421 <em/dir_index/ and <em/resize_inode/ enabled by default. The first
422 feature speeds up operations on directories with many files; the
423 second makes it possible to resize a file system on-line (i.e. while it
424 is mounted).</p>
425 <p>Users upgrading from &oldreleasename; could consider adding the
426 <em/dir_index/ flag manually using <prgn/tune2fs/<footnote>
427 The flag <em/filetype/ should already be set on most file systems, except
428 possibly on systems installed before &oldreleasename;.
429 </footnote>; the <em/resize_inode/ flag cannot be added to an existing
430 file system. It is possible to check which flags are set for a file
431 system using <tt/dumpe2fs -h/.</p></item>
432
433 <!-- TODO: Add for lenny, link to utf8-migration-tool, which is right now not
434 available for etch -->
435 <tag>Default encoding for &releasename; is UTF-8</tag>
436 <item><p>The default encoding for new &debian; installations is UTF-8. A
437 number of applications will also be set up to use UTF-8 by default.</p>
438 <p>Users upgrading to &releasename; that wish to switch to UTF-8 will
439 need to reconfigure their environment and locale definitions. The
440 system-wide default can be changed using <tt/dpkg-reconfigure locales/;
441 first select a UTF-8 locale for your language and country and then
442 set that as default. Note that switching to UTF-8 means that you will
443 probably also need to convert existing files from your previous
444 (legacy) encoding to UTF-8.</p>
445 <p>The package <package/utf8-migration-tool/ contains a tool that may
446 help the migration, however that package is only available in unstable
447 as it was not ready in time for &releasename;. Making a backup of
448 your data and configuration before using the tool is strongly
449 recommended.</p>
450 <p>Note that some applications may not yet work correctly in a UTF-8
451 environment, mostly due to display issues.</p></item>
452
453 </taglist></p>
454
455 <p>The <url id="http://wiki.debian.org/Sarge2EtchUpgrade"
456 name="Debian Wiki"> has some additional information about changes between
457 &oldreleasename; and &releasename;.</p>
458
459 </sect>
460
461 <sect id="kernel-changes"><heading>Major kernel-related changes</heading>
462
463 <p>&debian; &release; ships with kernel version &kernelversion; for all
464 architectures; the release is still mostly<footnote>Some individual
465 packages may no longer work correctly with a 2.4 kernel; see
466 <ref id="incompatible-2.4">.</footnote> compatible with 2.4 kernels, but
467 Debian no longer provides or supports 2.4 kernel packages.</p>
468
469 <p>There have been major changes both in the kernel itself and in the
470 packaging of the kernel for Debian. Some of these changes complicate
471 the upgrade procedure and can potentially result in problems while
472 rebooting the system after the upgrade to &releasename;. This section
473 gives an overview of the most important changes; potential issues and
474 information on how to work around them is included in later chapters.</p>
475
476 <![ %defaulted-2.4 [
477 <p>If you are currently using a 2.4 kernel, you should read
478 <ref id="upgrade-to-2.6"> carefully.</p>
479 ]]>
480
481 <sect1 id="kernel-packaging"><heading>Changes in kernel packaging</heading>
482
483 <p><taglist>
484 <tag>Kernel packages renamed</tag>
485 <item><p>All Linux kernel packages have been renamed from <tt/kernel-*/
486 to <tt/linux-*/ to clean up the namespace. This will make it easier to
487 include non-Linux kernels in Debian in the future.</p></item>
488
489 <![ %i386 [
490 <tag>Flavor "386" replaced with "486"</tag>
491 <item><p>Support for the 80386 sub-architecture for Intel x86 has been
492 dropped in &releasename;. The 386 kernel flavor is no longer supported
493 and has been replaced by the new 486 flavor.</p></item>
494 ]]>
495 <![ %amd64 [
496 <tag>Single generic kernel for &arch-title;</tag>
497 <item><p>In &oldreleasename; there were separate kernel flavors for
498 different processor families of this architecture. Because of changes
499 in the kernel which will
500 automatically optimize the kernel for the processor(s) in the system,
501 there is no longer any real need for seperate kernel flavors.</p></item>
502 ]]>
503
504 <![ %i386-amd64-ia64 [
505 <tag>Standard kernels have SMP abilities</tag>
506 <item><p>Multiprocessor systems no longer require an <tt/*-smp/ flavor of the
507 Linux kernel. For &arch-title;, <tt/linux-image/ packages without the <tt/-smp/
508 suffix support both uniprocessor and multiprocessor systems.
509 <![ %i386 [
510 (The one exception is the 486 flavor, which only supports a single
511 processor.)
512 ]]>
513 </p></item>
514 ]]>
515
516 <![ %mips [
517 <tag>r5k-ip22 kernel flavor dropped</tag>
518 <item><p>The kernel image for IP22 machines with an R5000 CPU has been
519 dropped because the r4k-ip22 image now supports IP22 machines with either
520 an R4x000 or an R5000 CPU.</p></item>
521 ]]>
522 </taglist></p>
523
524 <p>Where possible, dummy transition packages that depend on the new packages
525 have been provided for the dropped packages.</p>
526
527 </sect1>
528
529 <sect1 id="kernel-initrd"><heading>New utilities to generate initrds</heading>
530
531 <![ %no-initrd [
532 <p>The Debian kernel image packages for &arch-title; do not require an
533 initrd for booting the system. This means that the information in this
534 section may not be relevant for you, but is still included for
535 reference.</p>
536 ]]>
537 <p>
538 <![ %uses-initrd [
539 The Debian kernel image packages for &arch-title; require an initrd
540 for booting the system.
541 ]]>
542 Because of changes in the kernel, the utility used to generate initrds in
543 &oldreleasename;, <package/initrd-tools/ can no longer be used and has been
544 deprecated. Two new utilities have been developed that replace it:
545 <package/initramfs-tools/ and <package/yaird/. The concepts behind the new
546 utilities are very different; an overview is available on the
547 <url id="http://wiki.debian.org/InitrdReplacementOptions" name="Debian Wiki">.
548 Both will generate an initrd using the <em/initramfs/ file system, which is
549 a compressed <prgn/cpio/ archive.
550 The default and recommended utility is <package/initramfs-tools/.
551 </p>
552
553 <![ %uses-initrd [
554 <p>Upgrading to an &releasename; kernel will cause
555 <package/initramfs-tools/ to be installed by default.
556 <![ %defaulted-2.4 [
557 If you are upgrading from a 2.4 kernel to a 2.6 Debian kernel,
558 you must use <package/initramfs-tools/. Using
559 <package/yaird/ will cause linux-image-2.6 installations to
560 fail if you are running a 2.2 or 2.4 kernel.
561 ]]>
562 </p>
563
564 <p>The package <package/initrd-tools/ is still included in &releasename;
565 because it is needed for upgrades from &oldreleasename;. It will
566 be dropped for the next release.</p>
567 ]]>
568
569 </sect1>
570
571 <sect1 id="kernel-devfs"><heading>Dynamic <file>/dev</file> management</heading>
572
573 <p>&releasename; kernels no longer provide support for <tt>devfs</tt>.</p>
574
575 <p>The replacement for <tt>devfs</tt> is <package/udev/.
576 <p><package/udev/ is a userspace implementation of devfs. It is mounted
577 over the <file>/dev</file> directory and will populate that directory
578 with devices supported by the kernel. It will also dynamically add and
579 remove devices as kernel modules are loaded or unloaded respectively,
580 based on events generated by the kernel. <prgn/udev/ is a lot more
581 versatile than <tt/devfs/ and offers services that are used by other
582 packages like <package/hal/ (hardware abstraction layer).</p>
583
584 <![ %uses-initrd [
585 <p>If you install a Debian kernel image, <package/udev/ will be installed
586 by default as <package/initramfs-tools/ depends on it.</p>
587 <p>You can avoid installing <package/udev/ by compiling a custom non-modular
588 kernel or by using an alternative initrd generator, such as <package/yaird/.
589 However, <package/initramfs-tools/ is the recommended initrd generator.
590 ]]>
591
592 </sect1>
593 </sect>
594 </chapt>
595
596 <chapt id="installing"><heading>Installation System</heading>
597
598 <p>The Debian Installer is the official installation system for Debian.
599 It offers a variety of installation methods. Which methods
600 are available to install your system depends on your architecture.</p>
601
602 <p>Images of the installer for &releasename; can be found together with the
603 Installation Guide on the <url id="&url-installer;"
604 name="Debian website">.</p>
605
606 <p>The Installation Guide is also included on the first CD/DVD of the
607 official Debian CD/DVD sets, at:
608
609 <example>
610 /doc/install/manual/<var>language</var>/index.html
611 </example></p>
612
613 <p>You may also want to check the <url id="&url-installer;index#errata"
614 name="errata"> for debian-installer for a list of known issues.</p>
615
616 <![ %alpha [
617 <p>The installer can only be used to install on alpha systems which
618 support the SRM console. Be sure to switch your system to SRM before
619 starting the installation. If your machine supports only the AlphaBIOS/ARC
620 console, the recommended way to install &releasename; is to first install
621 a (minimal) woody system, the upgrade to &oldreleasename; and finally to
622 &releasename;. For more information about the different consoles please
623 read the references on the <url id="http://www.debian.org/ports/alpha"
624 name="Debian alpha port web pages">.
625 </p>
626 ]]>
627
628 <![ %sparc [
629 <sect id="sparc_fb"><heading>Issues with framebuffer on &arch-title;</heading>
630
631 <p>Because of display problems on some systems, framebuffer support is
632 disabled by default for &arch-title; for most graphics cards. This can
633 result in ugly display on systems that do properly support the framebuffer.
634 If you see display problems in the installer, you can try booting the installer
635 with the parameter <tt>framebuffer=true</tt>.
636 Please let us know if the framebuffer is not used by default, but works for
637 your hardware.</p>
638
639 </sect>
640
641 <sect id="sparc_illegal_instruction"><heading>Issues with booting on &arch-title;</heading>
642
643 <p>It has been reported by several users that the installation CD
644 fails to boot successfully upon the '<tt>boot cdrom</tt>' PROM
645 command, displaying the error '<tt>Illegal Instruction</tt>'.</p>
646
647 <p>The apparent explanation for this problem is that it doesn't work
648 because the machine had previously been rebooted from Solaris.
649 The workaround is to power the machine off fully, and then boot it
650 directly into the installation CD.</p>
651
652 <p>The problem was reported by users of various systems (namely,
653 Enterprise 450, Blade 2000, Fire V240, Enterprise 250 and Blade 100
654 at the time of writing), so it is believed to be generic. Please
655 let us know if you observe similar issues with your hardware.</p>
656
657 </sect>
658 ]]>
659
660 <sect id="inst-new"><heading>What's new in the installation system?</heading>
661
662 <p>There has been a lot of development on the Debian Installer
663 since its first official release with &oldreleasename; resulting
664 in both improved hardware support and some exciting new features.</p>
665
666 <p>In these Release Notes we'll only list the major changes in the
667 installer. If you are interested in an overview of the detailed
668 changes since &oldreleasename;, please check the release announcements
669 for the &releasename; beta and RC releases available from the
670 Debian Installer's <url id="&url-installer-news;" name="news history">.</p>
671
672 <sect1 id="inst-changes"><heading>Major changes</heading>
673
674 <p><taglist>
675 <tag>No reboot during the installation</tag>
676 <item><p>Previously, the installation was split into two parts:
677 setting up the base system and making it bootable, followed
678 by a reboot and after that the execution of <prgn/base-config/
679 which would take care of things like user setup, setup of the
680 package management system and installation of additional
681 packages (using tasksel).</p>
682 <p>For &releasename; the second stage has been integrated into
683 Debian Installer itself. This has a number of advantages,
684 including increased security and the fact that after the reboot
685 at the end of the installation the new system should already have
686 the correct timezone and, if you installed the Desktop environment,
687 will at once start the graphical user interface.</p></item>
688
689 <!-- FIXME (vorlon): is this true for /all/ languages? -->
690 <tag>UTF-8 encoding default for new systems</tag>
691 <item><p>The installer will set up systems to use UTF-8 encoding
692 rather than the old language-specific encodings (like ISO-8859-1,
693 EUC-JP or KOI-8).</p></item>
694
695 <tag>More flexible partitioning</tag>
696 <item><p>It is now possible to set up filesystems on an LVM volume
697 using guided partitioning.</p>
698 <p>The installer is also able to set up encrypted filesystems.
699 Using manual partitioning you have the choice between <tt/dm-crypt/
700 and <tt/loop-aes/, using a passphrase or a random key, and you can
701 tune various other options. Using guided partitioning, the installer
702 will create an encrypted LVM partition that contains any other
703 filesystems (except <file>/boot</file>) as logical volumes.</p></item>
704
705 <![ %g-i [
706 <tag>Graphical user interface</tag>
707 <item>
708 <![ %i386-amd64 [
709 <p>If you prefer a graphical user interface, try booting
710 the installer with <tt/installgui/.</p>
711 ]]>
712
713 <![ %powerpc [
714 <p>For &arch-title; a separate installation image using a
715 graphical user interface is available on an experimental basis.
716 It is known to work on most CHRP systems that have an ATI graphics
717 card, but has been insufficiently tested on &arch-title; to include
718 it on the normal installation CDs.</p>
719 <p>If you'd like to try the graphical installer, look for the
720 "gtk-miniiso" image.</p>
721 ]]>
722
723 <p>The functionality of the graphical installer is almost identical
724 to the regular installer, only the presentation differs. There is one
725 exception: the graphical frontend does not support setting up
726 encrypted partitions using random keys.</p>
727 <p>The major advantage of the graphical user interface is that it
728 supports more languages than the regular user interface (newt).
729 Information about the graphical installer and the most important
730 differences between the graphical and regular installer are documented
731 in an appendix in the installation guide.</p>
732 <p>Note: the graphical user interface is not available for all
733 architectures.</p>
734 </item>
735 ]]>
736
737 <tag>Rescue mode</tag>
738 <item><p>You can use the installer to solve problems with your
739 system, for example when it refuses to boot. The first steps will
740 be just like a regular installation, but the installer will not
741 start the partitioner. Instead it will offer you a menu of rescue
742 options.</p>
743 <p>Activate the rescue mode by booting the installer with
744 <tt/rescue/, or by adding a boot parameter
745 <tt>rescue/enable=true</tt>.</p></item>
746
747 <tag>Using sudo instead of root account</tag>
748 <item><p>During expert installations you can choose to not
749 set up the root account (it will be locked), but instead set
750 up <prgn/sudo/ so that the first user can use that for
751 system administration.</p></item>
752
753 <tag>Cryptographic verification of downloaded packages</tag>
754 <item><p>Packages downloaded with the installer are
755 now cryptographically checked using <prgn/apt/,
756 making it more difficult to compromise a system being
757 installed over the network.</p></item>
758
759 <tag>Simplified mail configuration</tag>
760 <item><p>If the "standard system" is installed, the installer sets up
761 a basic configuration for the system's mail server which will only
762 provide for local e-mail delivery. The mail server will be unavailable
763 to other systems connected to the same network. If you want to
764 configure your system to handle e-mail not local to the system (either
765 to send e-mail or to receive it), you will have to reconfigure the mail
766 system after installation.</p></item>
767
768 <tag>Desktop selection</tag>
769 <item><p>The installation system will install
770 a GNOME desktop as the default desktop if the user asks for one.</p>
771 <p>However, users wishing to install alternate desktop environments
772 can easily do so by adding boot parameters:
773 <tt>tasks="standard, kde-desktop"</tt> for KDE and
774 <tt>tasks="standard, xfce-desktop"</tt> for Xfce. Note that this
775 will not work when installing from a full CD image without using
776 a network mirror as an additional package source; it will work
777 when using a DVD image or any other installation method.</p>
778 <p>There are also separate CD images available that install the
779 KDE or Xfce desktop environment by default.</p></item>
780
781 <![ %not-s390 [
782 <tag>New languages</tag>
783 <item><p>Thanks to the huge efforts of translators, Debian can
784 now be installed in 47 languages using the text-based
785 installation user interface. This is six languages more
786 than in &oldreleasename;. Languages added in this release include
787 Belarusian, Esperanto, Estonian, Kurdish, Macedonian,
788 Tagalog, Vietnamese and Wolof.
789 Due to lack of translation updates, two languages have been dropped
790 in this release: Persian and Welsh.</p>
791 <![ %g-i [
792 <p>If the graphical user interface is used, an additional eleven
793 languages are supported. These languages can only be selected
794 using this installer as their character sets cannot be presented
795 in a non-graphical environment. The new languages are:
796 Bengali, Dzongkha, Gujarati, Hindi, Georgian, Khmer, Malayalam,
797 Nepali, Punjabi, Tamil and Thai.</p>
798 ]]>
799 <p>Users that do not wish to use any locale can now select
800 <em/C/ as their preferred locale in the installer's language
801 selection.
802 More information on language coverage is available at the
803 <url id="&url-d-i-i18n;" name="d-i languages list">.
804 </p></item>
805
806 <tag>Simplified localization and timezone selection</tag>
807 <item><p>Configuration of language, countries and timezones
808 has been simplified to reduce the amount of information
809 needed from the user. The installer will now guess
810 what the system's country and timezone is based on the
811 language selected, or will provide a limited selection
812 if it cannot. Users can still introduce obscure
813 combinations if need be.</p></item>
814
815 <tag>Improved system-wide localization</tag>
816 <item><p>Most of the internationalization and localization tasks that
817 were previously handled by the <package>localization-config</package> tool are now
818 included in the stock Debian installer or in packages themselves. This
819 means that selection of a language will automatically install packages
820 necessary for that language (dictionaries, documentation, fonts...) in both
821 standard and desktop environments. Configuration that is no longer
822 handled automatically includes the papersize configuration and some
823 advanced X Windows keyboard settings for some languages.</p>
824 <p>Note that language-specific packages will only be installed
825 automatically if they are available during the installation.</p></item>
826
827 ]]> <!-- not-s390 -->
828
829 </taglist></p>
830 </sect1>
831
832 <sect1 id="inst-auto"><heading>Automated installation</heading>
833
834 <p>A lot of the changes mentioned in the previous section also
835 imply changes in the support in the installer for automated
836 installation using preconfiguration files. This means that if
837 you have existing preconfiguration files that worked with the
838 &oldreleasename; installer, you cannot expect these to work
839 with the new installer without modification.</p>
840
841 <p>The good news is that the <url id="&url-install-manual;"
842 name="Installation Guide"> now has a separate appendix with
843 extensive documentation on using preconfiguration.</p>
844
845 <p>The &releasename; installer introduces some exciting new
846 features that allow further and easier automation of installs.
847 It also adds support for advanced partitioning using RAID, LVM
848 and encrypted LVM. See the documentation for details.</p>
849
850 </sect1>
851 </sect>
852
853 <sect id="popcon"><heading>Popularity contest</heading>
854
855 <p>The installation system will again offer
856 to install the <package/popularity-contest/ package. This package was not
857 installed by default in &oldreleasename; but it was installed in older releases.</p>
858
859 <p><package/popularity-contest/ provides the Debian project with valuable information
860 on which packages in the distribution are actually used. This information
861 is used mainly to decide the order in which packages are included on
862 installation CD-ROMs, but is also often consulted by Debian developers
863 in deciding whether or not to adopt a package that no longer has a
864 maintainer.</p>
865
866 <p>Information from <package/popularity-contest/ is processed anonymously.
867 We would appreciate it if you would participate in this official survey,
868 helping to improve Debian.</p>
869
870 </sect>
871
872 </chapt>
873
874
875 <chapt id="upgrading"><heading>Upgrades from previous releases</heading>
876
877 <!-- For doc-writers' convenience:
878 Debian Supported
879 release: architectures:
880
881 1.3.1 or less i386
882 2.0 i386,m68k
883 2.1 i386,m68k,alpha,sparc
884 2.2 i386,m68k,alpha,sparc,powerpc,arm
885 3.0 + hppa,s390,mips,mipsel,ia64
886 3.1 i386,m68k,alpha,sparc,powerpc,arm,hppa,s390,mips,mipsel,ia64 (no changes)
887 4.0 i386,alpha,sparc,powerpc,arm,hppa,s390,mips,mipsel,ia64,amd64
888 (+ amd64; - m68k)
889 -->
890
891 <sect id="backup"><heading>Preparing for the upgrade</heading>
892
893 <p>We suggest that before upgrading you also read the information in
894 <ref id="information">. That chapter covers potential issues not
895 directly related to the upgrade process but which could still be
896 important to know about before you begin.</p>
897
898 <sect1 id="data-backup"><heading>Back up any data or configuration information</heading>
899
900 <p>Before upgrading your system, it is strongly recommended that
901 you make a full backup, or at least back up any data or
902 configuration information you can't afford to lose. The upgrade
903 tools and process are quite reliable, but a hardware failure in
904 the middle of an upgrade could result in a severely damaged
905 system.</p>
906
907 <p>The main things you'll want to back up are the contents of
908 <file>/etc</file>, <file>/var/lib/dpkg</file> and the output of
909 <tt>dpkg --get-selections "*"</tt> (the quotes are important).</p>
910
911 <p>The upgrade process itself does not modify anything in the
912 <file>/home</file> directory. However, some applications (e.g.
913 parts of the Mozilla suite, and the GNOME and KDE desktop
914 environments) are known to overwrite existing user settings with new
915 defaults when a new version of the application is first started by a
916 user. As a precaution, you may want to make a backup of the hidden
917 files and directories ("dotfiles") in users' home directories. This
918 backup may help to restore or recreate the old settings. You may
919 also want to inform users about this.</p>
920
921 <p>Any package installation operation must be run with superuser
922 privileges, so either login as root or use <prgn/su/ or
923 <prgn/sudo/ to gain the necessary access rights.</p>
924
925 <p>The upgrade has a few preconditions; you should check them
926 before actually executing the upgrade.</p>
927
928 </sect1>
929
930 <sect1><heading>Inform users in advance</heading>
931
932 <p>It's wise to inform all users in advance of any upgrades you're
933 planning, although users accessing your system via an <prgn/ssh/
934 connection should notice little during the upgrade, and should be
935 able to continue working. </p>
936
937 <p>If you wish to take extra precautions, back up or
938 unmount users' partitions (<file>/home</file>) before upgrading.</p>
939
940 <!-- JFS: Not true in etch, maybe for lenny?
941 <p>A reboot will not normally be necessary, unless you also plan to
942 upgrade your kernel.</p>
943 -->
944 <p>You will probably have to do a kernel upgrade when upgrading to
945 &releasename;, so a reboot will normally be necessary. Typically,
946 this will be done after the upgrade is finished.</p>
947
948 </sect1>
949
950 <sect1 id="upgrade_preparations"><heading>Prepare a safe environment for the upgrade</heading>
951
952 <p>The distribution upgrade should be done either locally from a
953 textmode virtual console (or a directly connected serial
954 terminal), or remotely via an <prgn/ssh/ link.</p>
955
956 <p>In order to gain extra safety margin when upgrading remotely, we
957 suggest that you run upgrade processes in the virtual console provided by
958 the <prgn/screen/ program, which enables safe reconnection and ensures
959 the upgrade process is not interrupted even if the remote connection
960 process fails.</p>
961
962 <!-- JFS: probably can be removed for lenny -->
963 <p>If you are upgrading remotely via an <prgn/ssh/ link it is highly
964 recommended that you take the necessary precautions to be able to
965 access the server through a remote serial terminal. There are chances
966 that, after upgrading the kernel and rebooting, some devices will
967 be renamed (as described in <ref id="device-reorder">) and you will
968 have to fix the system configuration through a local console. Also,
969 if the system is rebooted accidentally in the middle of an upgrade
970 there are chances you will need to recover using a local console.</p>
971 <!-- END - remove for lenny -->
972
973 <p><strong/Important!/ You should <em/not/ upgrade using <prgn/telnet/,
974 <prgn/rlogin/, <prgn/rsh/, or from an X session managed by <prgn/xdm/,
975 <prgn/gdm/ or <prgn/kdm/ etc on the machine you are upgrading. That is
976 because each of those services may well be terminated during the
977 upgrade, which can result in an <em/inaccessible/ system that is only
978 half-upgraded.</p>
979
980 <!-- TODO: surely gdm/kdm are sane? -->
981 <!-- (vorlon) haha, no, gdm is not; I had that thought, and tested a gdm
982 restart on my live session ;) -->
983 </sect1>
984
985 <sect1 id="glibc-kernel"><heading>Support for 2.2-kernels has been dropped</heading>
986 <p>In case you run a kernel prior to 2.4.1,
987 you need to upgrade to (at least) the
988 2.4-series before upgrading <package/glibc/.
989 This should be done before starting the upgrade.
990 It is recommended that you directly upgrade to the 2.6.8 kernel available
991 in &oldreleasename;, instead of upgrading to a 2.4 kernel.
992 </p>
993 </sect1>
994
995 </sect>
996
997 <sect id="system-status">
998 <heading>Checking system status</heading>
999
1000 <p>The upgrade process described in this chapter has been designed for
1001 upgrades from "pure" &oldreleasename; systems without third-party
1002 packages.
1003 <!-- vorlon: remove for lenny -->
1004 In particular, there are known problems with third-party packages
1005 which install programs under <file>/usr/X11R6/bin/</file> causing problems
1006 with upgrades due to the X.org transition (<ref id="xorg">).
1007 <!-- -->
1008 For greatest reliability of the upgrade process, you may wish to remove
1009 third-party packages from your system before you begin upgrading.</p>
1010
1011 <p>This procedure also assumes your system has been updated to the
1012 latest point release of &oldreleasename;. If you have not done this
1013 or are unsure, follow the instructions in <ref id="old-upgrade">.</p>
1014
1015 <sect1><heading>Review actions pending in package manager</heading>
1016
1017 <p>In some cases, the use of <prgn/apt-get/ for installing packages instead
1018 of <prgn/aptitude/ might make <prgn/aptitude/ consider a package as
1019 "unused" and schedule it for removal. In general, you should make sure
1020 the system is fully up-to-date and "clean" before proceeding with
1021 the upgrade.</p>
1022
1023 <p>Because of this you should review if there are any pending actions
1024 in the package manager <prgn/aptitude/. If a package is scheduled
1025 for removal or update in the package manager, it might negatively impact
1026 the upgrade procedure. Note that correcting this is only possible if your
1027 <file/sources.list/ still points to <em/&oldreleasename/; and not to
1028 <em/stable/ or <em/&releasename;/; see <ref id="old-sources">.</p>
1029
1030 <p>To do this, you have to run <prgn/aptitude/'s user interface and
1031 press 'g' ("Go"). If it shows any actions, you should review them and
1032 either fix them or implement the suggested actions. If no actions are
1033 suggested you will be presented with a message saying "No packages are
1034 scheduled to be installed, removed, or upgraded".</p>
1035
1036 </sect1>
1037
1038 <sect1><heading>Disabling APT pinning</heading>
1039
1040 <p>If you have configured APT to install certain packages from a
1041 distribution other than stable (e.g. from testing), you may have to
1042 change your APT pinning configuration (stored in
1043 <file>/etc/apt/preferences</file>) to allow the upgrade of packages to
1044 the versions in the new stable release. Further information on APT
1045 pinning can be found in <manref name="apt_preferences" section="5">.</p>
1046
1047 </sect1>
1048
1049 <sect1 id="package_status"><heading>Checking packages status</heading>
1050
1051 <p>Regardless of the method used for upgrading, it is recommended
1052 that you check the status of all packages first, and verify that
1053 all packages are in an upgradable state. The following command
1054 will show any packages which have a status of Half-Installed or
1055 Failed-Config, and those with any error status.
1056
1057 <example>
1058 # dpkg --audit
1059 </example></p>
1060
1061 <p>You could also inspect the state of all packages on your system
1062 using <prgn/dselect/, <prgn/aptitude/, or with commands such as
1063
1064 <example>
1065 # dpkg -l | pager
1066 </example>
1067
1068 or
1069
1070 <example>
1071 # dpkg --get-selections "*" &gt; ~/curr-pkgs.txt
1072 </example></p>
1073
1074 <p>It is desirable to remove any holds before upgrading. If any
1075 package that is essential for the upgrade is on hold, the upgrade
1076 will fail.</p>
1077
1078 <p>Note that <prgn/aptitude/ uses a different method for registering
1079 packages that are on hold than <prgn/apt-get/ and <prgn/dselect/.
1080 You can identify packages on hold for <prgn/aptitude/ with
1081
1082 <example>
1083 # aptitude search "~ahold" | grep "^.h"
1084 </example></p>
1085
1086 <p>If you want to check which packages you had on hold for
1087 <prgn/apt-get/, you should use
1088 <example>
1089 # dpkg --get-selections | grep hold
1090 </example></p>
1091
1092 <p>If you changed and recompiled a package locally, and didn't rename
1093 it or put an epoch in the version, you must put it on hold to prevent
1094 it from being upgraded.</p>
1095
1096 <p>The "hold" package state for <prgn/aptitude/ can be changed using:
1097 <example>
1098 # aptitude hold <var>package_name</var>
1099 </example>
1100 Replace <tt/hold/ with <tt/unhold/ to unset the "hold" state.
1101 </p>
1102
1103 <p>If there is anything you need to fix, it is best to make sure your
1104 <file/sources.list/ still refers to &oldreleasename; as explained in
1105 <ref id="old-sources">.</p>
1106 </sect1>
1107
1108 <sect1 id="backports"><heading>Unofficial sources and backports</heading>
1109
1110 <p>If you have any non-Debian packages on your system, you should be
1111 aware that these may be removed during the upgrade because of
1112 conflicting dependencies. If these packages were installed by adding
1113 an extra package archive in your <file>/etc/apt/sources.list</file>,
1114 you should check if that archive also offers packages compiled for
1115 &releasename; and change the source line accordingly at the same time
1116 as your source lines for Debian packages.</p>
1117
1118 <p>Some users may have unofficial backported "newer" versions of
1119 packages that <em/are/ in Debian installed on their &oldreleasename;
1120 system. Such packages are most likely to cause problems during an
1121 upgrade as they may result in file conflicts<footnote>Debian's
1122 package management system normally does not allow a package to remove
1123 or replace a file owned by another package unless it has been
1124 defined to replace that package.</footnote>. Section <ref id="trouble">
1125 has some information on how to deal with file conflicts if they should
1126 occur.</p>
1127
1128 </sect1>
1129 </sect>
1130
1131 <!-- JFS: This section should be probably removed for lenny -->
1132 <sect id="handle-conflict"><heading>Manually unmarking packages</heading>
1133
1134 <p>To prevent <prgn/aptitude/ from removing some packages that were pulled
1135 in through dependencies, you need to manually unmark them as <em/auto/
1136 packages. This includes OpenOffice and Vim for desktop installs:
1137 <!-- This is a no-op if none of them are installed -->
1138 <example>
1139 # aptitude unmarkauto openoffice.org vim
1140 </example></p>
1141
1142 <!-- JFS: This cannot be in the same line as above since it produces an ugly output if
1143 you just have 2.4 kernels installed -->
1144 <p>And 2.6 kernel images if you have installed them using a kernel metapackage:
1145
1146 <example>
1147 # aptitude unmarkauto $(dpkg-query -W 'kernel-image-2.6.*' | cut -f1)
1148 </example></p>
1149
1150 <p>Note: You can review which packages are marked as <em/auto/ in aptitude by running:
1151
1152 <example>
1153 # aptitude search 'i~M &lt;package name&gt;'
1154 </example></p>
1155 </sect>
1156
1157 <sect id="upgrade-process"><heading>Preparing sources for APT</heading>
1158
1159 <p>Before starting the upgrade you must set up <package/apt/'s
1160 configuration file for package lists,
1161 <file>/etc/apt/sources.list</file>.</p>
1162
1163 <p><package/apt/ will consider all packages that can be found via
1164 any "<tt>deb</tt>" line, and install the package with the highest
1165 version number, giving priority to the first mentioned lines (that
1166 way, in case of multiple mirror locations, you'd typically first
1167 name a local harddisk, then CD-ROMs, and then HTTP/FTP
1168 mirrors).</p>
1169
1170 <p>A release can often be referred to by both its codename (e.g.
1171 &oldreleasename;, &releasename;) and by its status name (i.e.
1172 oldstable, stable, testing, unstable). Referring to a release by its
1173 codename has the advantage that you will never be surprised by a
1174 new release and for this reason is the approach taken here. It
1175 does of course mean that you will have to watch out for release
1176 announcements yourself. If you use the status name instead, you
1177 will just see loads of updates for packages available as soon as a
1178 release has happened.</p>
1179
1180 <sect1 id="network"><heading>Adding APT Internet sources</heading>
1181
1182 <p>The default configuration is set up for installation from main
1183 Debian Internet servers, but you may wish to modify
1184 <file>/etc/apt/sources.list</file> to use other mirrors,
1185 preferably a mirror that is network-wise closest to you.</p>
1186
1187 <!-- FJP: Why is 'default configuration' relevant here? We are talking about
1188 upgrading existing installations; we really have no idea what
1189 apt-sources users will have set up here (maybe just a Woody CD-set).
1190 Note: D-I sets the default configuration to a mirror based on
1191 the selected country and not the 'main' servers. -->
1192
1193 <p>Debian HTTP or FTP mirror addresses can be found at
1194 <url id="&url-debian-mirrors;"> (look at the "Full list of
1195 mirrors" section). HTTP mirrors are generally speedier than FTP
1196 mirrors.</p>
1197
1198 <p>For example, suppose your closest Debian mirror is
1199 <tt>&url-debian-mirror-eg;/</tt>. When inspecting that mirror
1200 with a web browser or FTP program, you will notice that the main
1201 directories are organized like this:
1202
1203 <example>
1204 &url-debian-mirror-eg;/dists/&releasename;/main/binary-&architecture;/...
1205 &url-debian-mirror-eg;/dists/&releasename;/contrib/binary-&architecture;/...
1206 </example></p>
1207
1208 <p>To use this mirror with <prgn/apt/, you add this line to your
1209 <file/sources.list/ file:
1210
1211 <example>
1212 deb &url-debian-mirror-eg; &releasename; main contrib
1213 </example></p>
1214
1215 <p>Note that the `<tt>dists</tt>' is added implicitly, and the
1216 arguments after the release name are used to expand the path into
1217 multiple directories.</p>
1218
1219 <p>After adding your new sources, disable the previously existing
1220 "<tt/deb/" lines in <file/sources.list/ by placing a hash sign
1221 (<tt/#/) in front of them.</p>
1222
1223 </sect1>
1224
1225 <sect1 id="localmirror"><heading>Adding APT sources for a local mirror</heading>
1226
1227 <p>Instead of using HTTP or FTP packages mirrors, you may wish to
1228 modify <file>/etc/apt/sources.list</file> to use a mirror on a
1229 local disk (possibly mounted over NFS).</p>
1230
1231 <p>For example, your packages mirror may be under
1232 <file>/var/ftp/debian/</file>, and have main directories like
1233 this:
1234
1235 <example>
1236 /var/ftp/debian/dists/&releasename;/main/binary-&architecture;/...
1237 /var/ftp/debian/dists/&releasename;/contrib/binary-&architecture;/...
1238 </example></p>
1239
1240 <p>To use this with <prgn/apt/, add this line to your
1241 <file/sources.list/ file:
1242
1243 <example>
1244 deb file:/var/ftp/debian &releasename; main contrib
1245 </example></p>
1246
1247 <p>Note that the `<tt>dists</tt>' is added implicitly, and the
1248 arguments after the release name are used to expand the path into
1249 multiple directories.</p>
1250
1251 <p>After adding your new sources, disable the previously
1252 existing "<tt/deb/" lines in <file/sources.list/ by placing a
1253 hash sign (<tt/#/) in front of them.</p></sect1>
1254
1255 <sect1 id="cdroms"><heading>Adding APT source from CD-ROM or DVD</heading>
1256
1257 <p>If you want to use CDs <em/only/, comment out the existing
1258 "<tt/deb/" lines in <file>/etc/apt/sources.list</file> by placing
1259 a hash sign (<tt/#/) in front of them.</p>
1260
1261 <!-- Default cdrom mount point is /cdrom, not /media/cdrom and fixed!, see #282344
1262 (but the -d option of apt-cdrom allows scanning from somewhere else) -->
1263 <p>Make sure there is a line in <file>/etc/fstab</file> that
1264 enables mounting your CD-ROM drive at the <file>/cdrom</file>
1265 mount point (the exact <file>/cdrom</file> mount point is required
1266 for <prgn/apt-cdrom/). For example, if <file>/dev/hdc</file> is
1267 your CD-ROM drive, <file>/etc/fstab</file> should contain a line
1268 like:
1269
1270 <example>
1271 /dev/hdc /cdrom auto defaults,noauto,ro 0 0
1272 </example></p>
1273
1274 <p>Note that there must be <em/no spaces/ between the words
1275 <tt>defaults,noauto,ro</tt> in the fourth field.</p>
1276
1277 <p>To verify it works, insert a CD and try running
1278
1279 <example>
1280 # mount /cdrom # this will mount the CD to the mount point
1281 # ls -alF /cdrom # this should show the CD's root directory
1282 # umount /cdrom # this will unmount the CD
1283 </example></p>
1284
1285 <p>Next, run:
1286
1287 <example>
1288 # apt-cdrom add
1289 </example>
1290
1291 for each Debian Binary CD-ROM you have, to add the data about
1292 each CD to APT's database.</p>
1293 </sect1>
1294 </sect>
1295
1296 <sect id="upgradingpackages"><heading>Upgrading packages</heading>
1297
1298 <p>The recommended way to upgrade from previous &debian; releases is
1299 to use the package management tool <prgn>aptitude</prgn>. This program
1300 makes safer decisions about package installations than running
1301 <prgn>apt-get</prgn> directly.</p>
1302
1303 <p>Don't forget to mount all needed partitions (notably the root
1304 and <file>/usr</file> partitions) read-write, with a command
1305 like:
1306
1307 <example>
1308 # mount -o remount,rw /<var>mountpoint</var>
1309 </example></p>
1310
1311 <p>Next you should double-check that the APT source entries (in
1312 <file>/etc/apt/sources.list</file>) refer either to
1313 "<tt/&releasename;/" or to "<tt>stable</tt>". There should not be
1314 any sources entries pointing to &oldreleasename;.
1315 Note: source lines for a CD-ROM will often refer to "<tt/unstable/";
1316 although this may be confusing, you should <em/not/ change it.</p>
1317
1318 <sect1 id="record_session"><heading>Recording the session</heading>
1319
1320 <p>It is strongly recommended that you use the
1321 <prgn>/usr/bin/script</prgn> program to record a transcript of the
1322 upgrade session. Then if a problem occurs, you will have a log of
1323 what happened, and if needed, can provide exact information in a bug
1324 report. To start the recording, type:
1325
1326 <example>
1327 # script -t 2>~/upgrade-&releasename;.time -a ~/upgrade-&releasename;.script
1328 </example>
1329
1330 or similar. Do not put the typescript file in a temporary
1331 directory such as <file>/tmp</file> or <file>/var/tmp</file> (files
1332 in those directories may be deleted during the upgrade or during any
1333 restart).</p>
1334
1335 <p>The typescript will also allow you to review information that has
1336 scrolled off-screen. Just switch to VT2 (using <tt/Alt-F2/) and, after
1337 logging in, use <tt>less -R ~root/upgrade-&releasename;.script</tt>
1338 to view the file.</p>
1339
1340
1341 <p>After you have completed the upgrade, you can stop <prgn/script/
1342 by typing <tt/exit/ at the prompt.</p>
1343
1344 <!-- TODO: Could mention the script I provided in 400725 which is useful if you
1345 have not dumped the timing file -->
1346 <p>If you have used the <em>-t</em> switch for <prgn/script/
1347 you can use the <prgn/scriptreplay/ program to replay the whole session:
1348
1349 <example>
1350 # scriptreplay ~/upgrade-&releasename;.time ~/upgrade-&releasename;.script
1351 </example>
1352
1353 </p>
1354 </sect1>
1355
1356 <sect1 id="updating_lists"><heading>Updating the package list</heading>
1357
1358 <p>First the list of available packages for the new release needs to
1359 be fetched. This is done by executing:</p>
1360
1361 <p><example>
1362 # aptitude update
1363 </example></p>
1364
1365 <!-- JFS: Hopefully this will be fixed in lenny -->
1366 <p>Running this the first time new sources are updated will print out
1367 some warnings related to the availability of the sources. These
1368 warnings are harmless and will not appear if you rerun the command again.
1369 </p>
1370
1371 </sect1>
1372
1373 <sect1><heading>Make sure you have sufficient space for the upgrade</heading>
1374
1375 <p>You have to make sure before upgrading your system that you have
1376 sufficient hard disk space when you start the full system upgrade
1377 described in <ref id="upgrading_other">. First, any package needed for
1378 installation that is fetched from the network is stored in
1379 <file>/var/cache/apt/archives</file> (and the <file>partial/</file>
1380 subdirectory, during download), so you must make sure you have enough space
1381 on the filesystem partition that holds <file>/var/</file>
1382 to temporarily download the packages that will be installed in your system.
1383 After the download, you will probably need more space in other
1384 filesystem partitions in order to both install upgraded packages (which
1385 might contain bigger binaries or more data) and new packages that will be pulled
1386 in for the upgrade. If your system does not have sufficient space you
1387 might end up with an incomplete upgrade that might be difficult to
1388 recover from.</p>
1389
1390 <!-- JFS: Apt will not always abort if you do not have enough disk space.
1391 For reference see: #247331, #214119, #192146, #185201, #40438 and #32919 -->
1392
1393 <p>Both <prgn/aptitude/ and <prgn/apt/ will show you detailed information
1394 of the disk space needed for the installation. Before executing the
1395 upgrade, you can see this estimate by running:
1396 </p>
1397
1398 <p><example>
1399 # aptitude -y -s -f --with-recommends dist-upgrade
1400 [ ... ]
1401 XXX upgraded, XXX newly installed, XXX to remove and XXX not upgraded.
1402 Need to get xx.xMB/yyyMB of archives. After unpacking AAAMB will be used.
1403 Would download/install/remove packages.
1404 </example></p>
1405
1406
1407 <p>If you do not have enough space for the upgrade, make sure you free up
1408 space beforehand. You can:
1409 </p>
1410
1411 <!-- JFS There are more tips at
1412 http://lists.debian.org/debian-user/2005/11/msg02078.html or
1413 http://www.debian-administration.org/articles/143
1414 but maybe that should be in the Debian Reference best and pointed from here -->
1415 <p>
1416 <list>
1417 <!-- JFS: Does aptitude to 'apt-get autoclean' by itself? -->
1418 <item>Remove packages that have been previously downloaded for
1419 installation (at <file>/var/cache/apt/archive</file>). Cleaning up the
1420 package cache by running <prgn>apt-get clean</prgn> or <prgn>aptitude
1421 clean</prgn> will remove all previously downloaded package files.
1422
1423 <!-- JFS Point to http://www.enricozini.org/blog/eng/pkgsizestat.html ?
1424 Enrico's script shows files that occupy space in a given partition
1425 which might be good for systems that are heavily partitioned -->
1426
1427 <item>Remove old packages you no longer use. If you have
1428 <prgn/popularity-contest/ installed, you can use
1429 <prgn/popcon-largest-unused/ to list the packages you do not use in the
1430 system that occupy the most space. You can also use <prgn/deborphan/
1431 or <prgn/debfoster/ to find obsolete packages (see
1432 <ref id="obsolete">).
1433 Alternatively you can start <prgn/aptitude/ in "visual mode" and find
1434 obsolete packages under "Obsolete and Locally Created Packages".
1435
1436 <item>Remove packages taking up too much space, which are not currently
1437 needed (you can always reinstall them after the
1438 upgrade). You can list the packages that take up most of the disk space
1439 with <prgn/dpigs/ (available in the <package/debian-goodies/ package)
1440 or with <prgn/wajig/ (running <tt>wajig size</tt>).
1441
1442 <!-- TODO: consider this for lenny
1443 You can list packages that take up most of the disk space with
1444 <prgn/aptitude/ . Start <prgn/aptitude/ into "visual mode", select
1445 "Views" and "New Flat Package List" (this menu entry is available only
1446 after etch version), press "l" and enter "~i", press "S" and enter
1447 "~installsize", then it will give you nice list to work with. Doing
1448 this after partial upgrade described in <ref id="upgrading_aptitude">
1449 should give you access to this new feature.
1450 -->
1451
1452 <item>Temporarily move to another system, or permanently remove, system
1453 logs residing under <file>/var/log/</file>.
1454
1455 </list></p>
1456
1457 <p>Note that in order to safely remove packages, it is advisable to
1458 switch your <file>sources.list</file> back to &oldreleasename; as
1459 described in <ref id="old-sources">.</p>
1460
1461 </sect1>
1462
1463 <sect1 id="minimal_upgrade"><heading>Minimal system upgrade</heading>
1464
1465 <p>Because of certain necessary package conflicts between &oldreleasename;
1466 and &releasename;, running <tt>aptitude dist-upgrade</tt> directly will
1467 often remove large numbers of packages that you will want to keep. We
1468 therefore recommend a two-part upgrade process, first a minimal upgrade to
1469 overcome these conflicts, then a full <tt>dist-upgrade</tt>.
1470 </p>
1471
1472 <p>First, run:
1473 <example>
1474 # aptitude upgrade
1475 </example>
1476 </p>
1477
1478 <p>This has the effect of upgrading those packages which can be upgraded
1479 without requiring any other packages to be removed or installed.</p>
1480
1481 <p>Follow the minimal upgrade with:
1482 <example>
1483 # aptitude install initrd-tools
1484 </example></p>
1485
1486 <p>This step will automatically upgrade <package/libc6/ and
1487 <package/locales/ and will pull in SELinux support libraries
1488 (<package/libselinux1/). At this point, some running services will be
1489 restarted, including <prgn/xdm/, <prgn/gdm/ and <prgn/kdm/. As a
1490 consequence, local X11 sessions will be disconnected.</p>
1491
1492 <p>The next step will vary depending on the set of packages that you have
1493 installed. These release notes give general advice about which method
1494 should be used, but if in doubt, it is recommended that you examine the
1495 package removals proposed by each method before proceeding.</p>
1496 <p>Some common packages that are expected to be removed include
1497 <package/base-config/, <package/hotplug/, <package/xlibs/,
1498 <package/netkit-inetd/, <package/python2.3/, <package/xfree86-common/,
1499 and <package/xserver-common/. For a more complete list of packages
1500 obsoleted in &releasename;, see <ref id="obsolete">.
1501 </p>
1502
1503 <sect2 id="minimal_upgrade_desktop"><heading>Upgrading a desktop system</heading>
1504 <p>This upgrade path has been verified to work on systems with the sarge
1505 <tt>desktop</tt> task installed. It is probably the method that will give
1506 the best results on systems with the <tt>desktop</tt> task installed, or
1507 with the <tt>gnome</tt> or <tt>kde</tt> packages installed.
1508
1509 <p>It is probably <em>not</em> the correct method to use if you do not
1510 already have the <package/libfam0c102/ and <package/xlibmesa-glu/ packages
1511 installed:
1512 <example>
1513 # dpkg -l libfam0c102 | grep ^ii
1514 # dpkg -l xlibmesa-glu | grep ^ii
1515 </example>
1516 </p>
1517
1518 <p>If you do have a full desktop system installed, run:
1519 <example>
1520 # aptitude install libfam0 xlibmesa-glu
1521 </example></p>
1522
1523 </sect2>
1524
1525 <sect2 id="minimal_upgrade_x_server"><heading>Upgrading a system with some X packages installed</heading>
1526 <p>Systems with some X packages installed, but not the full
1527 <tt>desktop</tt> task, require a different method. This method applies in
1528 general to systems with <package/xfree86-common/ installed, including some
1529 server systems which have <package/tasksel/ server tasks installed as some
1530 of these tasks include graphical management tools. It is likely the
1531 correct method to use on systems which run X, but do not have the full
1532 <tt>desktop</tt> task installed.
1533 <example>
1534 # dpkg -l xfree86-common | grep ^ii
1535 </example>
1536 </p>
1537
1538 <p>First, check whether you have the <package/libfam0c102/ and
1539 <package/xlibmesa-glu/ packages installed.
1540 <example>
1541 # dpkg -l libfam0c102 | grep ^ii
1542 # dpkg -l xlibmesa-glu | grep ^ii
1543 </example>
1544 </p>
1545
1546 <p>If you do not have <package/libfam0c102/ installed, do not include
1547 <package/libfam0/ in the following commandline. If you do not have
1548 <package/xlibmesa-glu/ installed, do not include it in the following
1549 commandline.
1550 <footnote>This command will determine whether you need libfam0 and
1551 xlibmesa-glu installed, and auto-select them for you:
1552 <example>
1553 # aptitude install x11-common \
1554 $(dpkg-query --showformat '${Package} ${Status}\n' -W libfam0c102 xlibmesa-glu \
1555 | grep 'ok installed$' | sed -e's/ .*//; s/c102//')
1556 </example>
1557 </footnote>
1558
1559 <example>
1560 # aptitude install <var>libfam0</var> <var>xlibmesa-glu</var> x11-common
1561 </example>
1562 </p>
1563
1564 <p>Note that doing this will also install the File Alteration Monitor
1565 (<package/fam/) as well as the RPC portmapper (<package/portmap/) if
1566 not already available in your system. Both packages will enable a new
1567 network service in the system although they can both be configured to
1568 be bound to the (internal) loopback network device.</p>
1569 </sect2>
1570
1571 <sect2 id="minimal_upgrade_server"><heading>Upgrading a system with no X support installed</heading>
1572 <p>On a system with no X, no additional aptitude install command should be
1573 required, and you can move on to the next step.
1574 </p>
1575
1576 </sect2>
1577
1578 </sect1>
1579
1580 <sect1 id="upgrading_kernel"><heading>Upgrading the kernel</heading>
1581
1582 <p>The <package/udev/ version in &releasename; does not support kernel
1583 versions earlier than 2.6.15 (which includes &oldreleasename; 2.6.8
1584 kernels), and the <package/udev/ version in &oldreleasename; will not work
1585 properly with the latest kernels. In addition, installing the
1586 &releasename; version of <package/udev/ will force the removal of
1587 <package/hotplug/, used by Linux 2.4 kernels.</p>
1588
1589 <p>As a consequence, the previous kernel package will probably not boot
1590 properly after this upgrade. Similarly, there is a time window during
1591 the upgrade in which <package/udev/ has been upgraded but the latest kernel
1592 has not been installed. If the system were to be rebooted at this point,
1593 in the middle of the upgrade, it might not be bootable because of
1594 drivers not being properly detected and loaded. (See <ref
1595 id="upgrade_preparations"> for recommendations on preparing for this
1596 possibility if you are upgrading remotely.)</p>
1597
1598 <p>If your system does not have the <tt>desktop</tt> task installed, or
1599 other packages that would cause an unacceptable number of package
1600 removals, it is therefore recommended that you upgrade the kernel on its
1601 own at this point.</p>
1602
1603 <p>To proceed with this kernel upgrade, run:
1604 <example>
1605 # aptitude install linux-image-2.6-<var>flavor</var>
1606 </example>
1607
1608 See <ref id="kernel-metapackage"> for help in determining which flavor of
1609 kernel package you should install.</p>
1610
1611 <p>In the desktop case, it is unfortunately not possible to ensure the
1612 new kernel package is installed immediately after the new <package/udev/
1613 is installed, so there is a window of unknown length when your system
1614 will have no kernel installed with full hotplug support. See <ref
1615 id="newkernel"> for information on configuring your system to not depend
1616 on hotplug for booting.</p>
1617
1618 </sect1>
1619
1620 <!-- TODO: For lenny, consider restoring the section 'Upgrade aptitude' -->
1621
1622 <sect1 id="upgrading_other"><heading>Upgrading the rest of the system</heading>
1623
1624 <p>You are now ready to continue with the main part of the
1625 upgrade. Execute:</p>
1626 <!-- NOTE (jfs): we have not tested with the -f and with-recommends option -->
1627 <p><example>
1628 # aptitude dist-upgrade
1629 </example></p>
1630
1631 <p>This will perform a complete upgrade of the system, i.e. install
1632 the newest available versions of all packages, and resolve all
1633 possible dependency changes between packages in different releases.
1634 If necessary, it will install some new packages (usually new library
1635 versions, or renamed packages), and remove any conflicting obsoleted
1636 packages.</p>
1637
1638 <p>When upgrading from a set of CD-ROMs, you will be asked to
1639 insert specific CDs at several points during the upgrade. You
1640 might have to insert the same CD multiple times; this is due to
1641 inter-related packages that have been spread out over the CDs.</p>
1642
1643 <p>New versions of currently installed packages that cannot be
1644 upgraded without changing the install status of another package will
1645 be left at their current version (displayed as "held back"). This can
1646 be resolved by either using <prgn>aptitude</prgn> to choose these
1647 packages for installation or by trying <tt>aptitude -f install
1648 <var>package</var></tt>.</p>
1649
1650 </sect1>
1651
1652 <!-- JFS: Bug #403496 -->
1653 <sect1 id="get_signatures"><heading>Getting package signatures</heading>
1654
1655 <p>After the upgrade, with the new version of <prgn/apt/ you can now
1656 update your package information, which will include the new package
1657 signature checking mechanism:</p>
1658 <p><example>
1659 # aptitude update
1660 </example></p>
1661
1662 <p>The upgrade will have already retrieved and enabled the signing
1663 keys for Debian's package archives. If you add other (unofficial)
1664 package sources, <prgn/apt/ will print warnings related to its
1665 inability to confirm that packages downloaded from them are
1666 legitimate and have not been tampered with. For more information
1667 please see <ref id="secureapt">.
1668 </p>
1669
1670 <!-- JFS: Bug #376158 -->
1671 <p>You will notice that, since you are using the new version of
1672 <prgn/apt/, it will download package differences files (<tt/pdiff/)
1673 instead of the full package index list. For more information on this
1674 feature please read <ref id="apt-pdiff">.</p>
1675
1676 </sect1>
1677
1678 <sect1 id="trouble"><heading>Possible issues during upgrade</heading>
1679
1680 <p>If an operation using <prgn/aptitude/, <prgn/apt-get/, or
1681 <prgn/dpkg/ fails with the error
1682 <example>
1683 E: Dynamic MMap ran out of room
1684 </example>
1685 the default cache space is insufficient. You can solve this by either
1686 removing or commenting lines you don't need in
1687 <file>/etc/apt/sources.list</file> or by increasing the cache size.
1688 The cache size can be increased by setting <tt/APT::Cache-Limit/ in
1689 <file>/etc/apt/apt.conf</file>. The following command will set it
1690 to a value that should be sufficient for the upgrade:
1691 <example>
1692 # echo 'APT::Cache-Limit "12500000";' >> /etc/apt/apt.conf
1693 </example>
1694 This assumes that you do not yet have this variable set in that file.</p>
1695
1696 <!-- (vorlon) FIXME: I recommend dropping this paragraph, it doesn't seem relevant
1697 for sarge->etch?
1698 -->
1699 <p>Sometimes it's necessary to enable the <tt/APT::Force-LoopBreak/ option
1700 in APT to be able to temporarily remove an essential package due
1701 to a Conflicts/Pre-Depends loop. <prgn/aptitude/ will alert you of
1702 this and abort the upgrade. You can work around that by specifying
1703 <tt>-o APT::Force-LoopBreak=1</tt> option on <prgn/aptitude/
1704 command line.</p>
1705 <!-- JFS: Shouldn't this mention also Apt's configuration file? -->
1706
1707 <p>It is possible that a system's dependency structure can be so
1708 corrupt as to require manual intervention. Usually this means
1709 using <prgn/aptitude/ or
1710
1711 <example>
1712 # dpkg --remove <var>package_name</var>
1713 </example>
1714
1715 to eliminate some of the offending packages, or
1716
1717 <example>
1718 # aptitude --fix-broken install
1719 # dpkg --configure --pending
1720 </example></p>
1721
1722 <p>In extreme cases you might have to force re-installation with a
1723 command like
1724
1725 <example>
1726 # dpkg --install <var>/path/to/package_name.deb</var>
1727 </example></p>
1728
1729 <p>File conflicts should not occur if you upgrade from a "pure"
1730 &oldreleasename; system, but can occur if you have unofficial
1731 backports installed. A file conflict will result in an error like:
1732
1733 <example>
1734 Unpacking <var>&lt;package-foo&gt;</var> (from <var>&lt;package-foo-file&gt;</var>) ...
1735 dpkg: error processing <var>&lt;package-foo&gt;</var> (--install):
1736 trying to overwrite `<var>&lt;some-file-name&gt;</var>',
1737 which is also in package <var>&lt;package-bar&gt;</var>
1738 dpkg-deb: subprocess paste killed by signal (Broken pipe)
1739 Errors were encountered while processing:
1740 <var>&lt;package-foo&gt;</var>
1741 </example></p>
1742
1743 <p>You can try to solve a file conflict by forcibly removing the
1744 package mentioned on the <em/last/ line of the error message:
1745
1746 <example>
1747 # dpkg -r --force-depends <var>package_name</var>
1748 </example></p>
1749
1750 <p>After fixing things up, you should be able to resume the
1751 upgrade by repeating the previously described <tt/aptitude/
1752 commands.</p>
1753
1754 <p>During the upgrade, you will be asked questions regarding the
1755 configuration or re-configuration of several packages. When you are
1756 asked if any file in the <file>/etc/init.d</file> or
1757 <file>/etc/terminfo</file> directories, or the
1758 <file>/etc/manpath.config</file> file should be replaced by the
1759 package maintainer's version, it's usually necessary to answer `yes'
1760 to ensure system consistency. You can always revert to the old
1761 versions, since they will be saved with a <tt/.dpkg-old/
1762 extension.</p>
1763
1764 <p>If you're not sure what to do, write down the name of the
1765 package or file and sort things out at a later time. You can
1766 search in the typescript file to review the information that
1767 was on the screen during the upgrade.</p>
1768
1769 </sect1>
1770 </sect>
1771
1772 <sect id="newkernel"><heading>Upgrading your kernel and related
1773 packages</heading>
1774
1775 <p>You should upgrade the Linux kernel separately from the rest of
1776 your packages.
1777 <!-- TODO: add something in "before you upgrade", and get the order right -->
1778 You may wish to do so yourself, either by installing one
1779 of the <package/linux-image-*/ packages or by compiling a customized
1780 kernel from sources.
1781 Please read the information in this section about potential issues
1782 with kernel upgrades.</p>
1783
1784 <![ %defaulted-2.4 [
1785 <p>If you are currently using a 2.4 kernel, you should also read
1786 <ref id="upgrade-to-2.6"> carefully.</p>
1787 ]]>
1788
1789 <sect1 id="kernel-metapackage"><heading>Installing the kernel metapackage</heading>
1790 <p>When you dist-upgrade from &oldreleasename; to &releasename;,
1791 it is strongly recommended that you install a new
1792 linux-image-2.6-* metapackage.
1793 This package may be installed automatically by the dist-upgrade
1794 process. You can verify this by running:
1795 <!-- NOTE (jfs): Users using apt/aptitude might not have their available file
1796 updated so '^ii' is really unnecessary, maybe dpkg -l 'linux-image*' would be
1797 better here? -->
1798 <example>
1799 # dpkg -l "linux-image*" | grep ^ii
1800 </example></p>
1801
1802 <p>If you do not see any output, then you will need to install a
1803 new linux-image package by hand. To see a list of available
1804 linux-image-2.6 metapackages, run:
1805 <example>
1806 # apt-cache search linux-image-2.6- | grep -v transition
1807 </example></p>
1808
1809 <p>If you are unsure about which package to select, run
1810 <tt>uname -r</tt> and look for a package with a similar name.
1811 For example, if you see '2.4.27-3-686', it is recommended that you
1812 install <package/linux-image-2.6-686/.
1813 <![ %i386 [
1814 (Note that the 386 flavor no longer exists; if you are currently using
1815 the 386 kernel flavor, you should install the 486 flavor instead.)
1816 ]]>
1817 You may also use <prgn>apt-cache</prgn> to see a long description of each
1818 package in order to help choose the best one available.
1819 For example:
1820 <example>
1821 # apt-cache show linux-image-2.6-686
1822 </example></p>
1823
1824 <p>You should then use <tt/aptitude install/ to install it. Once
1825 this new kernel is installed you should reboot at the next available
1826 opportunity to get the benefits provided by the new kernel version.</p>
1827
1828 <p>For the more adventurous there is an easy way to compile your
1829 own custom kernel on &debian;. Install the
1830 <package>kernel-package</package> tool and read the documentation
1831 in <file>/usr/share/doc/kernel-package</file>.</p>
1832
1833 </sect1>
1834
1835 <sect1 id="upgrade-from-2.6"><heading>Upgrading from a 2.6 kernel</heading>
1836
1837 <p>If you are currently running a 2.6 series kernel from
1838 &oldreleasename; this upgrade will take place automatically after you do a full upgrade
1839 of the system packages (as described in <ref id="upgradingpackages">).
1840 </p>
1841
1842 <p>If possible, it is to your advantage to upgrade the kernel package
1843 separately from the main <tt/dist-upgrade/ to reduce the chances of a
1844 temporarily non-bootable system. See <ref id="upgrading_kernel"> for a
1845 description of this process. Note that this should only be done after the
1846 minimal upgrade process described in <ref id="minimal_upgrade">.
1847 </p>
1848
1849 <p>You can also take this step if you are using your own custom
1850 kernel and want to use the kernel available in &releasename;.
1851 If your kernel version is not supported by <package/udev/ then
1852 it is recommended that you upgrade after the minimal upgrade.
1853 If your version is supported by <package/udev/ you can safely wait
1854 until after the full system upgrade.</p>
1855
1856 <!--
1857 <p><em>TRY</em>: In aptitude, upgrade only 'required' 'important'
1858 'standard' packages limit by pressing 'l' and input
1859 !~v(~pextra|~poptional) keep with : for hold this time upgrade by
1860 pressing 'U' and 'g' (untested but ...) (You can do this in much
1861 finer steps.)
1862 -->
1863 </sect1>
1864
1865 <![ %defaulted-2.4 [
1866 <sect1 id="upgrade-from-2.4"><heading>Upgrading from a 2.4 kernel</heading>
1867
1868 <p>If you have a 2.4 kernel installed, and your system relies on
1869 <package/hotplug/ for its hardware detection you should first upgrade
1870 to a 2.6 series kernel from &oldreleasename; before attempting the upgrade. Make
1871 sure that the 2.6 series kernel boots your system and all your hardware is
1872 properly detected before you perform the upgrade. The <package/hotplug/ package
1873 is removed from the system (in favor of <package/udev/) when you do a full system
1874 upgrade. If you do not do the kernel upgrade before this your system might
1875 not boot up properly from this point on. Once you have done an upgrade
1876 to a 2.6 series kernel in &oldreleasename; you can do a kernel upgrade
1877 as described in <ref id="upgrade-from-2.6">.</p>
1878
1879 <p>If your system does not rely on <package/hotplug/<footnote>You can
1880 have the kernel modules needed by your system loaded statically through proper configuration
1881 of <file>/etc/modules</file></footnote> you can delay the kernel upgrade
1882 to after you have done a full system upgrade, as described in <ref
1883 id="upgrading_other">. Once your system has been upgraded
1884 you can then do the following (changing the kernel package name to the one most
1885 suited to your system by substituting <em>&lt;flavor&gt;</em>):
1886 <example>
1887 # aptitude install linux-image-2.6-&lt;flavor&gt;
1888 </example>
1889 </p>
1890
1891 </sect1>
1892 ]]>
1893
1894 <sect1 id="device-reorder"><heading>Device enumeration reordering</heading>
1895 <p>&releasename; features a more robust mechanism for hardware discovery
1896 than previous releases. However, this may cause changes in the
1897 order devices are discovered on your system, affecting the order
1898 in which device names are assigned.
1899 For example, if you have two network adapters that are associated
1900 with two different drivers, the devices eth0 and eth1 refer to
1901 may be swapped.
1902 Please note that the new mechanism means that if you e.g. exchange
1903 ethernet adapters in a running &releasename; system, the new adapter
1904 will also get a new interface name.</p>
1905
1906 <p>For network devices, you can avoid this reordering by using
1907 <package>udev</package> rules, more specifically, through the definitions at
1908 <file>/etc/udev/rules.d/z25_persistent-net.rules</file><footnote>
1909 The rules there are automatically generated by the script
1910 <file>/etc/udev/rules.d/z45_persistent-net-generator.rules</file> to
1911 have persistent names for network interfaces. Delete this symlink to
1912 disable persistent device naming for NICs by <package/udev/.</footnote>.
1913 Alternatively you can use the <prgn>ifrename</prgn> utility to bind
1914 physical devices to specific names at boot time.
1915 <!-- TODO: add ifupdown-scripts-zg2 as well here? -->
1916 See <manref name="ifrename" section="8"> and <manref name="iftab"
1917 section="5"> for more information.
1918 The two alternatives (<package>udev</package> and <prgn>ifrename</prgn>)
1919 should not be used at the same time.
1920 </p>
1921
1922 <!-- TODO:
1923 *** maks: please review the initramfs stuff for accuracy - I'm going
1924 *** by what I remember, and haven't tested this recently
1925 -->
1926 <p>For storage devices, you can avoid this reordering by using
1927 <package/initramfs-tools/ and configuring it to load storage device
1928 driver modules in the same order they are currently loaded.
1929 To do this, identify the order the storage modules on your system
1930 were loaded by looking at the output of <prgn/lsmod/.
1931 <prgn/lsmod/ lists modules in the reverse order that they were loaded
1932 in, i.e., the first module in the list was the last one
1933 loaded. Note that this will only work for devices which the kernel
1934 enumerates in a stable order (like PCI devices).</p>
1935
1936 <p>However, removing and reloading modules after initial boot
1937 will affect this order. Also, your kernel may have some drivers
1938 linked statically, and these names will not appear in the output
1939 of <prgn>lsmod</prgn>. You may be able to decipher these driver
1940 names and load order from looking at
1941 <file>/var/log/kern.log</file>, or the output of
1942 <prgn>dmesg</prgn>.</p>
1943
1944 <p>Add these module names to <file>/etc/initramfs-tools/modules</file>
1945 in the order they should be loaded at boot time. Some module names may
1946 have changed between &oldreleasename; and &releasename;. For
1947 example, sym53c8xx_2 has become sym53c8xx.</p>
1948
1949 <p>You will then need to regenerate your initramfs image(s) by
1950 executing <tt>update-initramfs -u -k all</tt>.</p>
1951
1952 <p>Once you are running a &releasename; kernel and <package/udev/, you may
1953 reconfigure your system to access disks by an alias that is not
1954 dependent upon driver load order. These aliases reside in the
1955 <file>/dev/disk/</file> hierarchy.</p>
1956 </sect1>
1957
1958 <![ %ia64 [
1959 <sect1><heading>Serial device reordering</heading>
1960 <p>If you have an HP machine and you're using the MP serial
1961 console port (the connector labelled "console" on the 3-headed
1962 cable), this kernel upgrade will break your console!</p>
1963
1964 <p>Upon reboot, the system will show up the message "Loading
1965 initrd...." but it will stop there. Notice that systems with
1966 outdated firmware will show similar symptoms, although the issue is
1967 related to kernel incompatibilities (see <ref
1968 id="upgrade-to-2.6">).</p>
1969
1970 <p>Please read the following information before upgrading.</p>
1971
1972 <p><list>
1973 <item><p>The console device will change from <file>ttyS0</file> to
1974 <file>ttyS1</file>, <file>ttyS2</file>, or <file>ttyS3</file> so
1975 <list>
1976 <item><p>Edit <file>/etc/inittab</file> to add a getty entry for
1977 <file>/dev/ttyS1</file> (rx4640, rx5670, rx7620, rx8620, Superdome),
1978 <file>/dev/ttyS2</file> (rx1600), or
1979 <file>/dev/ttyS3</file> (rx2600).</p></item>
1980 <item><p>Edit <file>/etc/securetty</file> to add
1981 <file>ttyS1</file>, <file>ttyS2</file>, or
1982 <file>ttyS3</file>.</p></item>
1983 <item><p>Leave the existing <file>ttyS0</file> entries in
1984 <file>/etc/inittab</file> and <file>/etc/securetty</file> so
1985 you can still boot old kernels.</p></item>
1986 </list>
1987 </p></item>
1988
1989 <item><p>Edit <file>/etc/elilo.conf</file> to remove any "console="
1990 arguments.</p></item>
1991
1992 <item><p>Run <prgn/elilo/ to install the bootloader with new
1993 configuration.</p></item>
1994
1995 <item><p>Reboot and use the EFI boot option maintenance menu to
1996 select exactly one device for console output, input, and standard
1997 error. Then do a cold reset so the changes take
1998 effect.</p>
1999
2000 <p>For the MP console, be careful to select the device with
2001 "Acpi(HWP0002,700)/Pci(...)/Uart" in the path.</p></item>
2002 </list></p>
2003
2004 <p>More details about these changes and troubleshooting hints are
2005 available at
2006 <url id="http://lists.debian.org/debian-ia64/2005/01/msg00008.html">.</p>
2007
2008 </sect1>
2009 ]]>
2010
2011 </sect>
2012
2013 <sect id="nownownow"><heading>Things to do before rebooting</heading>
2014
2015 <p>When <tt>aptitude dist-upgrade</tt> has finished, the
2016 "formal" upgrade is complete, but there are some other things
2017 that should be taken care of <em/before/ the next reboot.</p>
2018
2019 <sect1 id="convert-devfs"><heading>Converting from devfs</heading>
2020 <p>Debian kernels no longer include support for <tt>devfs</tt>,
2021 so <tt>devfs</tt> users will need to convert their systems
2022 manually before booting an &releasename; kernel.</p>
2023
2024 <p>If you see the string 'devfs' in <file>/proc/mounts</file>,
2025 you are most likely using <tt>devfs</tt>.
2026 Any config files that reference <tt>devfs</tt>-style names will need to be
2027 adjusted to use <package>udev</package>-style names. Files that are likely to
2028 refer to <tt>devfs</tt>-style device names include <file>/etc/fstab</file>,
2029 <file>/etc/lilo.conf</file>, <file>/boot/grub/menu.lst</file>, and <file>/etc/inittab</file>.</p>
2030
2031 <p>More information about potential issues is available in bug report
2032 <url id="http://bugs.debian.org/341152" name="#341152">.</p>
2033 </sect1>
2034
2035 <![ %sparc [
2036 <sect1 id="missingdrivers"><heading>Possible missing drivers in initrd</heading>
2037 <p>The &releasename; kernels do not yet have full sysfs support for
2038 the native sparc sbus. <package/initramfs-tools/ relies on this to
2039 include drivers for disk controllers in the initrd. If a driver is
2040 not included in the initrd, your system may fail to boot.
2041 <p>If your system uses the <tt/esp/ or <tt/qlogicpti/ module to
2042 access your hard disks, you will need to include that module in
2043 <file>/etc/initramfs-tools/modules</file> and regenerate the initrd
2044 before you reboot your system. The initrd can be regenerated using:
2045 <example>
2046 # update-initramfs -u -k all
2047 </example></p>
2048 ]]>
2049
2050 <![ %hppa [
2051 <sect1 id="missingdrivers"><heading>Possible missing drivers in initrd</heading>
2052 <p>The &releasename; kernels do not yet have full sysfs support for
2053 the native HP bus. <package/initramfs-tools/ relies on this to
2054 include drivers for disk controllers in the initrd. If a driver is
2055 not included in the initrd, your system may fail to boot.
2056 <p>If your system uses the <tt/lasi700/ or <tt/zalon7xx/ module to
2057 access your hard disks, you will need to include that module in
2058 <file>/etc/initramfs-tools/modules</file> and regenerate the initrd
2059 before you reboot your system. The initrd can be regenerated using:
2060 <example>
2061 # update-initramfs -u -k all
2062 </example></p>
2063 </sect1>
2064 ]]>
2065
2066 <![ %i386-amd64 [
2067 <sect1 id="rerunlilo"><heading>Rerun lilo</heading>
2068
2069 <p>If you are using <package/lilo/ as your bootloader (it is the
2070 default bootloader for some installations of &oldreleasename;) it is strongly recommended
2071 that you rerun <prgn>lilo</prgn> after the upgrade:
2072 <example>
2073 # /sbin/lilo
2074 </example></p>
2075
2076 <p>Notice this is needed even if you did not upgrade your system's kernel, as
2077 <prgn>lilo</prgn>'s second stage will change due to the package upgrade.</p>
2078
2079 <p>Also, review the contents of your <file>/etc/kernel-img.conf</file> and
2080 make sure that you have <em>do_bootloader = Yes</em> in it. That way the
2081 bootloader will always be rerun after a kernel upgrade.
2082 </p>
2083
2084 <p>If you encounter any issues when running <prgn/lilo/, review the
2085 symbolic links in <file>/</file> to <file>vmlinuz</file> and
2086 <file>initrd</file> and the contents of your
2087 <file>/etc/lilo.conf</file> for discrepancies.</p>
2088
2089 <p>If you forgot to rerun <prgn/lilo/ before the reboot or the system
2090 is accidentally rebooted before you could do this manually, your
2091 system might fail to boot. Instead of the lilo prompt, you will only
2092 see <em/LI/ when booting the system<footnote>For more information on
2093 <prgn/lilo/'s boot error codes please see <url
2094 id="http://tldp.org/HOWTO/Bootdisk-HOWTO/a1483.html" name="The Linux
2095 Bootdisk HOWTO">.</footnote>. In order to
2096 recover from this you will have to start up a media installation disk
2097 in <em/rescue/ mode. For
2098 more information on how to do this please review the <url
2099 id="http://wiki.debian.org/DebianInstaller/FAQ" name="DebianInstaller
2100 FAQ">.</p>
2101
2102 </sect1>
2103 ]]>
2104
2105 <![ %s390 [
2106 <sect1 id="s390-config"><heading>S/390 hardware configuration</heading>
2107
2108 <p>Not all S/390 hardware can be configured automatically. For the
2109 &releasename; kernels a new utility <package/sysconfig-hardware/ is
2110 used to correctly set up devices. Unfortunately documentation for
2111 this utility and its configuration files is not yet available. The
2112 configuration files for <package/sysconfig-hardware/ can be found
2113 under <file>/etc/sysconfig/</file>.</p>
2114
2115 <p>Especially if your system is currently running a 2.4 kernel,
2116 getting the configuration right can be a challenge. If you need any
2117 help, feel free to contact the
2118 <url id="http://lists.debian.org/debian-s390"
2119 name="Debian S/390 mailing list">.</p>
2120
2121 <p>First install the utility and regenerate the initramfs initrd as
2122 the utility provides some scripts that need to be included in the
2123 initrd:
2124 <example>
2125 # aptitude install sysconfig-hardware
2126 # update-initramfs -u -k all
2127 </example></p>
2128
2129 <sect2 id="s390-dasd"><heading>Configuration for disks</heading>
2130
2131 <p>This is done by modifying <file>/etc/zipl.conf</file>. The
2132 sysconfig utility can use the device path to the root device to
2133 enable it, which means that this path needs to be passed in the kernel
2134 boot parameters. For a regular dasd, the path is composed as follows:
2135 <example>
2136 &lt;bus&gt;-&lt;device&gt;
2137 </example>
2138
2139 For the <tt/root/ parameter the partition needs to be appended to
2140 the path. So if your dasda is <tt/0.0.0122/, instead of
2141 <file>root=/dev/dasda1</file> you would include the following in
2142 the <tt/parameters/ line in <tt>/etc/zipl.conf</tt>:
2143 <example>
2144 root=/dev/disks/by-path/ccw-0.0.0122-part1
2145 </example>
2146
2147 Or, alternatively you can use the <tt/enable/ parameter to specify
2148 the device to be enabled; in that case the partition:
2149 <example>
2150 root=/dev/dasda1 enable=ccw-0.0.0122
2151 </example>
2152
2153 The paths to be used can vary for different devices. For example, for
2154 disks on a zFCP fiberchannel host adapter, the path consists of bus,
2155 device, driver, wwpn and lun. The parameters for a RAID1 would look
2156 like (on a single line):
2157 <example>
2158 root=/dev/md0 enable=ccw-0.0.2900-zfcp-0x21000020371c93a5:0
2159 enable=ccw-0.0.2900-zfcp-0x21000020371d8f94:0
2160 </example></p>
2161
2162 <p>Other dasd devices (dasds not needed to bring up the root file
2163 system are enabled through configuration files in
2164 <file>/etc/sysconfig/hardware/</file>. For a regular dasd, you just
2165 need to touch a file with the device path in its name:
2166 <example>
2167 # cd /etc/sysconfig/hardware
2168 # touch config-ccw-0.0.0122
2169 </example>
2170
2171 For disks on a zFCP fiberchannel host adapter the individual devices
2172 are listed inside the file. Using the same example as above,
2173 create a file <file/config-ccw-0.0.2900/ containing (second device
2174 truncated for readability):
2175 <example>
2176 ZFCP_DEVICES=(0x21000020371c93a5:0x0000000000000000 0x2100...:0x...)
2177 </example></p>
2178
2179 </sect2>
2180 <sect2 id="s390-other"><heading>Configuration for network devices</heading>
2181
2182 <p>Network devices are enabled through configuration files in
2183 <file>/etc/sysconfig/hardware/</file>. For a ctc network device with
2184 read channel <tt/0.0.0a00/ and write channel <tt/0.0.0a01/ and using
2185 the S/390 protocol, you would create a file <file/config-ccw-0.0.0a00/
2186 containing:
2187 <example>
2188 CCWGROUP_CHANS=(0.0.0a00 0.0.0a01)
2189 CTC_PROTOCOL=0
2190 </example>
2191
2192 For a qeth network device with layer2 mode enabled, this could be a
2193 file <file/config-ccw-0.0.0600/:
2194 <example>
2195 CCWGROUP_CHANS=(0.0.0600 0.0.0601 0.0.0602)
2196 QETH_OPTIONS=(layer2)
2197 </example></p>
2198
2199 <p>Supported options for ctc are: <tt/CTC_PROTOCOL/ and <tt/CTC_BUFFER/;
2200 and for qeth: <tt/QETH_PORTNAME/, <tt/QETH_PORTNO/ and <tt/QETH_OPTIONS/.
2201 </p>
2202 <p>As network devices on S/390 do not have a stable MAC address, it is
2203 not possible to use <package/udev/ persistent device naming. Instead you
2204 can add an option <tt/INTERFACE_NAME/ in the configuration file to
2205 rename an interface.</p>
2206
2207 </sect2>
2208 </sect1>
2209 ]]>
2210
2211 <sect1 id="mdadm"><heading>Upgrading mdadm</heading>
2212
2213 <p>mdadm now needs a configuration file to assemble MD arrays (RAID)
2214 from the initial ramdisk and during the system initialisation
2215 sequence. Please make sure to read and act upon the instructions in
2216 <file>/usr/share/doc/mdadm/README.upgrading-2.5.3.gz</file> after
2217 the package has been upgraded <strong>and before you reboot</strong>.
2218 The latest version of this file is available at
2219 <url id="http://svn.debian.org/wsvn/pkg-mdadm/mdadm/trunk/debian/README.upgrading-2.5.3?op=file">;
2220 please consult it in case of problems.</p>
2221
2222 </sect1>
2223 </sect>
2224
2225 <sect id="for_next"><heading>Preparing for the next release</heading>
2226
2227 <p>After the upgrade there are several things you can do
2228 to prepare for the next release.</p>
2229
2230 <p><list>
2231
2232 <item><p>If using <prgn/grub/, edit <file>/etc/kernel-img.conf</file>
2233 and adjust the location of the <prgn/update-grub/ program changing
2234 <file>/sbin/update-grub</file> to <file>/usr/sbin/update-grub</file>.</p>
2235
2236 <item><p>If the new kernel image metapackage was pulled in as a
2237 dependency of the old one, it will be marked as automatically installed,
2238 which should be corrected:
2239 <example>
2240 # aptitude unmarkauto $(dpkg-query -W 'linux-image-2.6-*' | cut -f1)
2241 </example>
2242 </p>
2243 <item><p>Remove &oldreleasename;'s kernel metapackages by running:
2244 <example>
2245 # aptitude purge kernel-image-2.6-&lt;flavor&gt;
2246 </example>
2247 </p>
2248
2249 <item><p>Move any kernel configuration values at
2250 <file>/etc/network/options</file> to <file>/etc/sysctl.conf</file>.</p>
2251
2252 <item><p>Remove obsolete and unused packages as described in <ref
2253 id="obsolete">. You should review which configuration files they use
2254 and consider purging the packages to remove their configuration files</p>
2255
2256 </list></p>
2257
2258 </sect>
2259
2260 <sect id="obsolete"><heading>Obsolete packages</heading>
2261
2262 <!-- JFS: Providing a full listing might be useful, especially if we can
2263 point to the Bug that was opened when the bug was removed. This list should
2264 be moved to an appendix, instead of adding it inline as we did in the
2265 potato to woody RN -->
2266
2267 <p>Introducing several thousand new packages, &releasename; also
2268 retires and omits more than two thousand old packages that were in
2269 &oldreleasename;. It provides no upgrade path for these obsolete
2270 packages. While nothing prevents you from continuing to use an
2271 obsolete package where desired, the Debian project will usually
2272 discontinue security support for it a year after &releasename;'s
2273 release<footnote>Or for as long as there is not another release in
2274 that time frame. Typically only two stable releases are supported
2275 at any given time.</footnote>, and will not normally provide other
2276 support in the meantime. Replacing them with available
2277 alternatives, if any, is recommended.</p>
2278
2279 <p>There are many reasons why packages might have been removed from
2280 the distribution: they are no longer maintained upstream; there is
2281 no longer a Debian Developer interested in maintaining the packages;
2282 the functionality they provide has been superseded by different
2283 software (or a new version); or they are no longer considered
2284 suitable for &releasename; due to bugs in them. In the latter case,
2285 packages might still be present in the "unstable" distribution.</p>
2286
2287 <!-- (vorlon) FIXME: not true in etch because 'Obsolete and Locally Created
2288 Packages' is not the default view AFAICS?
2289 -->
2290 <p>Detecting which packages in an updated system are "obsolete" is
2291 easy since the package management front-ends will mark them as
2292 such. If you are using <prgn>aptitude</prgn>, you will see a
2293 listing of these packages in the "Obsolete and Locally Created
2294 Packages" entry. <prgn>dselect</prgn> provides a similar section
2295 but the listing it presents might differ. Also, if you have used
2296 <prgn>aptitude</prgn> to manually install packages in
2297 &oldreleasename; it will have kept track of those packages you
2298 manually installed and will be able to mark as obsolete those
2299 packages pulled in by dependencies alone which are no longer
2300 needed if a package has been removed. Also, <prgn>aptitude</prgn>,
2301 unlike <prgn>deborphan</prgn> will not mark as obsolete packages
2302 that you manually installed, as opposed to those that were
2303 automatically installed through dependencies.</p>
2304
2305 <!-- (vorlon) FIXME: AIUI, cruft is not useful for this? -->
2306 <p>There are additional tools you can use to find obsolete packages
2307 such as <prgn>deborphan</prgn>, <prgn>debfoster</prgn> or
2308 <prgn>cruft</prgn>. <prgn>deborphan</prgn> is highly recommended,
2309 although it will (in default mode) only report obsolete libraries:
2310 packages in the "libs" or "oldlibs" sections that are not used by
2311 any other packages. Do not blindly remove the packages these tools
2312 present, especially if you are using aggressive non-default
2313 options that are prone to produce false positives. It is highly
2314 recommended that you manually review the packages suggested for
2315 removal (i.e. their contents, size and description) before you
2316 remove them.</p>
2317
2318 <!-- JFS: Should we recommend purging old packages? This might be
2319 dangerous since the maintainer scripts might try to remove stuff that
2320 didn't belong to them... -->
2321
2322 <p>The <url id="&url-bts;" name="Debian Bug Tracking System">
2323 often provides additional information on why the package was
2324 removed. You should review both the archived bug reports for the
2325 package itself and the archived bug reports for the <url
2326 id="&url-bts;cgi-bin/pkgreport.cgi?pkg=ftp.debian.org&#38;archive=yes"
2327 name="ftp.debian.org pseudo-package">.</p>
2328
2329 <sect1 id="dummy"><heading>Dummy packages</heading>
2330
2331 <!-- JFS: If the appendix is kept this section should point there and the packages described here should be moved to that section -->
2332
2333 <p>Some packages from &oldreleasename; have been split into several
2334 packages in &releasename;, often to improve system maintainability. To
2335 ease the upgrade path in such cases, &releasename; often provides
2336 "dummy" packages: empty packages that have the same name as the old
2337 package in &oldreleasename; with dependencies that cause the new
2338 packages to be installed. These "dummy" packages are considered
2339 obsolete packages after the upgrade and can be safely removed.
2340
2341 <p>Most (but not all) dummy packages' descriptions indicate their
2342 purpose. Package descriptions for dummy packages are not uniform,
2343 however, so you might also find <prgn>deborphan</prgn> with the
2344 <tt>--guess</tt> options useful to detect them in your system.
2345 Note that some dummy packages are not intended to be removed after
2346 an upgrade but are, instead, used to keep track of the current
2347 available version of a program over time.</p>
2348
2349 </sect1>
2350 </sect>
2351 </chapt>
2352
2353 <!-- FJP: Add more info here on dealing with obsolete packages?
2354 Also how to purge packages that were deleted but still have conffiles
2355 (use "limit" command in aptitude and search for ~c) -->
2356
2357 <chapt id="information">
2358 <heading>Issues to be aware of for &releasename;</heading>
2359
2360 <sect id="problems"><heading>Potential problems</heading>
2361 <p>Sometimes, changes have side-issues we cannot reasonably avoid,
2362 or we expose bugs somewhere else.
2363 We document here the issues we are aware of.
2364 Please also read the errata, the relevant packages' documentation,
2365 bug reports and other information mentioned in <ref id="morereading">.
2366 </p>
2367
2368 <sect1 id="udev"> <heading>Problems with devices related to udev</heading>
2369 <p>Although <package/udev/ has been tested extensively, you may experience
2370 minor problems with some devices that will need to be fixed. The most
2371 common problems are changed permission and/or ownership of a device.
2372 In some cases a device may not be created by default (e.g.
2373 <file>/dev/video</file> and <file>/dev/radio</file>).</p>
2374
2375 <p><package/udev/ provides configuration mechanisms to deal with these
2376 issues. See <manref name="udev" section="8"> and <file>/etc/udev</file>
2377 for further information.</p>
2378 </sect1>
2379
2380 <![ %defaulted-2.4 [
2381 <sect1 id="incompatible-2.4">
2382 <heading>Some applications may no longer work with a 2.4 kernel</heading>
2383 <p>Some applications in &releasename; may no longer work with a 2.4
2384 kernel, for example because they require <tt/epoll()/ support, which
2385 is not available in 2.4 kernels. Such applications may either not
2386 work at all or not work correctly until the system has been rebooted
2387 with a 2.6 kernel.</p>
2388 <p>One example is the HTTP proxy <package/squid/.</p>
2389 </sect1>
2390 ]]>
2391
2392 <sect1 id="window-scaling"><heading>Certain networking site cannot be reached by TCP</heading>
2393 <p>
2394 Since 2.6.17, Linux aggressively uses TCP window scaling which is specified in RFC 1323.
2395 Some servers have a broken behavior, and announce wrong
2396 window sizes for themselves. Please see the bugs
2397 <url id="http://bugs.debian.org/381262" name="#381262"> and
2398 <url id="http://bugs.debian.org/395066" name="#395066">
2399 for more information.
2400 </p>
2401 </sect1>
2402
2403 <![ %i386 [
2404 <sect1 id="poweroff"><heading>Automatic poweroff stops working</heading>
2405 <p>
2406 On some older systems, <tt>shutdown -h</tt> may not power off the system
2407 anymore (but just stop it). This happens because apm needs to be used there.
2408 Adding <tt>acpi=off apm=power_off</tt> to the kernel's command line, e.g.
2409 in <package/grub/ or <package/lilo/ configuration files should fix this issue.
2410 Please see bug
2411 <url id="http://bugs.debian.org/390547" name="#390547">
2412 for additional information.
2413 </p>
2414 </sect1>
2415 ]]>
2416
2417 <!-- JFS: Bug #376158 -->
2418 <sect1 id="apt-pdiff"><heading>Slower updates of APT package index files</heading>
2419 <p>By default, the new <prgn>apt</prgn> uses a new way to update APT package
2420 index files (when you run <tt/apt-get update/) which downloads differences
2421 files (instead of the full package index file) called <tt/pdiff/. This new
2422 feature should use less bandwidth and be faster for most systems.
2423 Unfortunately, the opposite effect of making the updates slower can
2424 happen on systems with fast network connections (or a very nearby
2425 mirror) which are infrequently updated, as it might take more time
2426 for the system to merge the differences files than to download a
2427 full package index. One can disable the new mechanisms by adding
2428 <tt>Acquire::Pdiffs "false";</tt> to the
2429 <file>/etc/apt/apt.conf</file> configuration file.</p>
2430 <!-- For more info, see thread "These new diffs are great, but...", d-devel, july 2006 -->
2431
2432 <p>This change mostly affects users of the <em/unstable/ and
2433 <em/testing/ branch of &debian;, due to the changing nature of the
2434 archive for those users. Users of &releasename; will notice this
2435 feature mainly when updating their package archive with their sources
2436 for security updates.</p>
2437 </sect1>
2438
2439 <![ %i386 [
2440 <sect1 id="hp-acpi"><heading>ACPI support disabled for some HP laptop models in &releasename; kernel</heading>
2441 <p>
2442 Certain models of HP laptops have an ACPI BIOS that is incompatible with the
2443 Linux 2.6.18 kernel shipped in &releasename;, which would prevent the fans from
2444 spinning up leading to unnecessary heat stress. Also, fans might not work after
2445 the system is suspended. The kernel therefore disables ACPI support
2446 internally when it detects certain ACPI BIOS versions. Models known
2447 to be affected by this change include the HP nx6125, nx6120, nx6325,
2448 nc6120 and nc6000 models.
2449 </p>
2450 <p>
2451 Users who require ACPI support on these systems may install a Linux 2.6.19 or
2452 later kernel. Please see Debian bug
2453 <url id="http://bugs.debian.org/404143" name="#404143"> and
2454 <url id="http://bugs.debian.org/400488" name="#400488">,
2455 and Linux Kernel's bugs
2456 <url id="http://bugzilla.kernel.org/show_bug.cgi?id=5534" name="#5534">
2457 and
2458 <url id="http://bugzilla.kernel.org/show_bug.cgi?id=7122" name="#7122">
2459 for additional information.
2460 </p>
2461 </sect1>
2462 ]]>
2463
2464 </sect>
2465
2466
2467 <!-- Controversial, disabled for now, please translate though
2468 <sect id="german-quotes"><heading>Problems with German Quotes</heading>
2469
2470 <p>The locales for German style languages (e.g. de_DE@euro)
2471 unfortunately use an aesthetically unpleasing way of representing
2472 open quotation marks. We have retained it this way in order to
2473 preserve compatibility with other Linux distributions, and we hope
2474 that in the future it will be fixed. We suggest that you switch to a
2475 UTF-8 locale (e.g. de_DE@euro.UTF-8), which fully supports German with
2476 the correct quotation marks, and, using Unicode encoding, has better
2477 support for other languages as well.</p>
2478
2479 <p>To change the system wide locale choice, use:
2480 <example>dpkg-reconfigure locales</example></p>
2481 </sect>
2482 -->
2483 <!-- Will be added if relevant information is written here
2484 <sect id="syntax"><heading>Important program syntax changes</heading>
2485
2486 <p>Debian attempts to avoid changing upstream packages, therefore
2487 any changes in the upstream package will be present in the version in
2488 &debian;. This can mean that program behavior may change between
2489 releases of &debian;. </p>
2490
2491 <p><em>No changes yet reported.</em></p>
2492
2493 </sect>
2494 -->
2495
2496 <![ %defaulted-2.4 [
2497 <sect id="upgrade-to-2.6">
2498 <heading>Upgrading to a 2.6 kernel</heading>
2499
2500 <p>The 2.6 kernel series contains major changes from the 2.4 series.
2501 Modules have been renamed and a lot of drivers have been partially
2502 or sometimes almost completely rewritten. Upgrading to a 2.6 kernel
2503 from an earlier version is therefore not a process to be undertaken
2504 lightly. This section aims to make you aware of some of the issues
2505 you may face.</p>
2506
2507 <p>If you compile your own kernel from source, make sure you install
2508 <package/module-init-tools/ before you reboot with the 2.6 kernel.
2509 This package replaces <package/modutils/ for 2.6 kernels. If you
2510 install one of the Debian <package/linux-image/ packages, this
2511 package will be installed automatically because of dependencies.</p>
2512
2513 <p>If you use <em/LVM/, you should also install <package/lvm2/
2514 before you reboot as the 2.6 kernel does not directly support LVM1.
2515 To access LVM1 volumes, the compatibility layer of <package/lvm2/
2516 (the dm-mod module) is used. You can leave <package/lvm10/ installed;
2517 the init scripts will detect which kernel is used and execute the
2518 appropriate version.</p>
2519
2520 <p>If you have entries in the <file>/etc/modules</file> file (the
2521 list of modules to be loaded during system boot), be aware that some
2522 module names may have changed. If this happens you will have to update
2523 this file with the new module names.</p>
2524
2525 <!-- JFS: Can't this device name change even for some other disk controllers? I've found
2526 references in debian-user posts talking about some strange chipsets and BIOS
2527 which are seen in sarge' 2.4 as hda and in etch's 2.6 as hdf... -->
2528 <![ %i386 [
2529 <p>For some SATA disk controllers, the device assigned to a drive and
2530 its partitions may change from <file>/dev/hdX</file> to
2531 <file>/dev/sdX</file>. If this happens, you will have to modify your
2532 <file>/etc/fstab</file> and bootloader configuration accordingly.
2533 Unless these changes are made correctly, your system may not boot
2534 correctly<footnote>It will boot the kernel but will fail when trying
2535 to mount the root filesystem and will abort with an error <em>waiting for root filesystem</em>
2536 followed by <em>unable to mount /dev/hdX ..not found</em>.
2537 You can use the <prgn/initramfs/ shell to fix this issue, after you
2538 identify the names newly assigned devices in the kernel boot messages or by reviewing
2539 the contents of <file>/dev/disk</file>.</footnote>.</p>
2540 ]]>
2541
2542 <!-- Bug: #416720 -->
2543 <![ %ia64 [
2544 <p>HP Itanium systems running older firmware are incompatible with the
2545 2.6 kernel in &releasename;. That means you should upgrade your
2546 system to the latest firmware before upgrading your kernel. It is
2547 recommended you do this before the system upgrade, as if you are
2548 already running a 2.6 kernel you will automatically retrieve the
2549 latest kernel when upgrading the rest of the system (see <ref
2550 id="upgrading_other">). Failing to do this will result in an system
2551 that does not boot.
2552 </p>
2553 ]]>
2554
2555 <p>Once you have installed your 2.6 kernel, but before you reboot,
2556 make sure you have a recovery method. First, make sure that the
2557 bootloader configuration has entries for both the new kernel and
2558 the old, working 2.4 kernel. You should also ensure you have a "rescue"
2559 floppy or CD-ROM to hand, in case misconfiguration of the bootloader
2560 prevents you booting the old kernel.</p>
2561
2562 <![ %not-s390 [
2563 <sect1 id="2.6-keyboard">
2564 <heading>Keyboard configuration</heading>
2565
2566 <p>The most invasive change in the 2.6 kernels is a fundamental
2567 change of the input layer. This change makes all keyboards look
2568 like "normal" PC keyboards. This means that if you currently have
2569 a different type of keyboard selected (e.g. a USB-MAC or Sun
2570 keyboard), you will very likely end up with a non-working keyboard
2571 after rebooting with the new 2.6 kernel.</p>
2572
2573 <p>If you can SSH into the box from another system, you can resolve
2574 this issue by running <tt>dpkg-reconfigure console-data</tt>, choosing
2575 the option "Select keymap from full list" and selecting a "pc"
2576 keyboard.</p>
2577
2578 <p>If your console keyboard is affected, you will probably also need to
2579 reconfigure your keyboard for the X Window System. You can do this
2580 either by running <tt>dpkg-reconfigure xserver-xorg</tt> or by
2581 editing <file>/etc/X11/xorg.conf</file> directly. Don't forget
2582 to read the documentation referred to in <ref id="nownownow">.</p>
2583
2584 <![ %i386 [
2585 <p>This issue is unlikely to affect the &arch-title; architecture
2586 as all PS/2 and most USB keyboards will already be configured as
2587 a "normal" PC keyboard.</p>
2588 ]]>
2589 <![ %not-i386 [
2590 <p>Note that if you are using a USB keyboard, this may be configured
2591 as either a "normal" PC keyboard or as a USB-MAC keyboard. In the
2592 first case you will not be affected by this issue.</p>
2593 ]]>
2594 </sect1>
2595
2596 <sect1 id="2.6-mouse">
2597 <heading>Mouse configuration</heading>
2598
2599 <p>Again because of the changes in the input layer, you may have to
2600 reconfigure the X Window System and <package/gpm/ if your mouse is
2601 not working after upgrading to a 2.6 kernel. The most likely cause is
2602 that the device which gets the data from the mouse has changed.
2603 You may also need to load different modules.</p>
2604
2605 <![ %sparc [
2606 <p>If you currently have X configured for <file>/dev/sunmouse</file>,
2607 you probably need to change this to <file>/dev/psaux</file>.</p>
2608 ]]>
2609
2610 </sect1>
2611
2612 <sect1 id="2.6-sound">
2613 <heading>Sound configuration</heading>
2614
2615 <p>For the 2.6 kernel series the ALSA sound drivers are recommended
2616 over the older OSS sound drivers. ALSA sound drivers are provided
2617 as modules by default. In order for sound to work, the ALSA modules
2618 appropriate for your sound hardware need to be loaded. In general
2619 this will happen automatically if you have, in addition to the
2620 <package>alsa-base</package> package, either the
2621 <package>hotplug</package> package or the <package>discover</package>
2622 package installed. The <package>alsa-base</package> package also
2623 "blacklists" OSS modules to prevent <prgn>hotplug</prgn> and
2624 <prgn>discover</prgn> from loading them. If you have OSS modules
2625 listed in <file>/etc/modules</file>, you should remove them.</p>
2626
2627 </sect1>
2628 ]]> <!-- %not-s390 -->
2629 </sect>
2630 ]]> <!-- %defaulted-2.4 -->
2631
2632 <sect id="xorg"> <heading>XFree86 to X.Org transition</heading>
2633 <p>The transition to X.Org involves some structural changes. In case
2634 all installed packages are from Debian and also included in &releasename;,
2635 the upgrade should work without problems.
2636 However, experience has shown that there are a few changes to be aware
2637 of, as they can potentially cause issues during the upgrade.</p>
2638
2639 <p>The most important change is that <file>/usr/X11R6/bin</file> has
2640 been dropped and only remains as a symlink to <file>/usr/bin</file>.
2641 This means the directory has to be empty at the time the new packages
2642 are installed. The new packages conflict with most packages that used
2643 <file>/usr/X11R6/bin</file>,
2644 but in some cases manual intervention may be needed.
2645 Please remember to not run the distribution upgrade from within an
2646 X session.</p>
2647
2648 <p>In case the upgrade aborts during X.Org installation, you should
2649 check if any files are still left in <file>/usr/X11R6/bin</file>.
2650 You can then use <tt>dpkg -S</tt> to find out which Debian package
2651 installed that file (if any), and remove such packages with
2652 <tt>dpkg --remove</tt>. Please make a note which packages you
2653 remove, so that you can install substitute packages later on.
2654 Before continuing with the upgrade, all files in
2655 <file>/usr/X11R6/bin</file> need to be removed.</p>
2656
2657 <p>Please read <url id="http://wiki.debian.org/Xorg69To7">
2658 for more details and other issues.</p>
2659
2660 </sect>
2661
2662 <!-- JFS: Bug #406300 -->
2663 <sect id="xorg-8bit"><heading>No support for 8-bit displays in many applications</heading>
2664
2665 <p>After the upgrade to the Xorg and the latest libraries, X terminals
2666 which can only represent colors 8 bits depth will not work. This is
2667 because the Cairo 2D vector graphics library (<package/libcairo2/)
2668 doesn't have 8-bit pseudocolor support. This library is used by the GNOME
2669 and Xfce desktops as well as by many desktop applications compiled
2670 with the Gtk2+ toolikt, such as <package/abiword/.</p>
2671
2672 <!-- TODO: make this arch-specific ? This applies to remote terminals, so
2673 it might not make sense to make it arch-specific ... -->
2674 <!-- Specific models mentioned in freedeskop's BTS, might not be complete:
2675 - Tektronix XP117C X terminal,
2676 - NCD: 19r X11, 256 color X terminal
2677 - IBM: Netstation
2678 - SUN: Ultra 10, Ultra 5, Ultra 60 (Solaris 8 with Xsun)
2679 - SGI: Octane
2680 -->
2681 <p>Known systems that are affected by this include X terminals from
2682 Tektronix, NCD, IBM, and SGI and some Sun machines, as well as some other
2683 remote X windowing systems. You should configure these terminals to use
2684 16-bit colour, if possible.</p>
2685
2686 <p>More information is available
2687 in Freedesktop's <url id="https://bugs.freedesktop.org/show_bug.cgi?id=4945"
2688 name="bug #4945">.</p>
2689
2690 </sect>
2691
2692 <sect id="exim"> <heading>Upgrading from exim to exim4</heading>
2693 <p>One of the packages that has been obsoleted by the &releasename;
2694 release is the Mail Transfer Agent (MTA) <package/exim/, which has been replaced
2695 by the completely new package <package/exim4/.</p>
2696
2697 <p><prgn/exim/ (version 3.xx) has been unmaintained upstream for years, and
2698 Debian has dropped support for that version as well. If you are still using
2699 <prgn/exim/ 3.xx, please upgrade your <package/exim/ installation to <package/exim4/ manually.
2700 Since <package/exim4/ is already part of &oldreleasename;, you can choose to do the
2701 upgrade on your &oldreleasename; system before the upgrade to &releasename;,
2702 or after the &releasename; upgrade at your convenience. Just remember that
2703 your old <package/exim/ package is not going to be upgraded and that it won't get
2704 security support after support for &oldreleasename; has been discontinued.</p>
2705
2706 <p>Note that, depending on your configuration of <package/debconf/, you may not
2707 be asked any configuration question during installation of <package/exim4/.
2708 If no questions are asked, the system will default to a 'local delivery' setup.
2709 Configuration is possible using the command <tt/dpkg-reconfigure exim4-config/.</p>
2710
2711 <p>The <package/exim4/ packages in Debian are extensively documented. The package's
2712 home page is <url id="http://wiki.debian.org/PkgExim4"> on the Debian Wiki, and
2713 the README file can be found at
2714 <url id="http://pkg-exim4.alioth.debian.org/README/README.Debian.html"> and
2715 inside the packages as well.</p>
2716
2717 <p>The README file has a chapter about Packaging, which explains the
2718 different package variations we offer, and it has a chapter about
2719 Updating from <prgn/Exim/ 3, which will help you in doing the actual
2720 transition.</p>
2721 <!-- FIXME: update with decisions of (S)RMs might be needed -->
2722 </sect>
2723
2724 <sect id="apache2"> <heading>Upgrading apache2</heading>
2725 <p>Apache has been upgraded to the new version 2.2.
2726 Although this shouldn't impact the average user,
2727 there are some potential issues to be aware of.</p>
2728
2729 <p><url id="http://httpd.apache.org/docs/2.2/upgrading.html"> contains
2730 the upstream changes. Please read this page, and remember that especially:
2731 <list>
2732 <item><p>all modules need to be recompiled</p></item>
2733 <item><p>authorization modules have been resorted and renamed</p></item>
2734 <item><p>some configuration options have been renamed</p></item>
2735 </list></p>
2736
2737 <p>Debian-specific changes include that the string SSL is no longer defined,
2738 as ssl is now supported by the default package.</p>
2739
2740 <p>If you are using the experimental ITK MPM (from the
2741 <package/apache2-mpm-itk/ package), the cgi module will not be correctly
2742 enabled by default. To properly enable it, you will need to manually
2743 disable <tt/mod_cgid/ and enable <tt/mod_cgi/:
2744 <example>
2745 # cd /etc/apache2/mods-enabled
2746 # rm cgid.conf cgid.load
2747 # ln -s ../mods-available/cgi.load .
2748 # /etc/init.d/apache2 force-reload
2749 </example></p>
2750
2751 </sect>
2752
2753 <sect id="zope"> <heading>Upgrading Zope and Plone</heading>
2754 <p>Zope and all related products have been updated. Many products were
2755 also dropped from the distribution (either because they were obsoleted,
2756 or because they are incompatible with the newer Zope, CMF or Plone.</p>
2757 <p>Unfortunately there is no easy and guaranteed way to upgrade a
2758 complex <prgn/zope/ or <prgn/plone/ server. Even though Plone includes
2759 a migration tool, experience has shown that automatic migrations
2760 can easily fail.</p>
2761
2762 <p>For this reason, users are recommended to set up their system so they
2763 can continue to run the &oldreleasename; installation of Zope/Plone
2764 alongside the new &releasename; versions while testing the migration.</p>
2765 <p>The easiest and safest way to achieve this, is to make a copy of your
2766 &oldreleasename; system to another hard disk or partition, and then
2767 upgrade only one of the two copies. You can then use <prgn/chroot/ to
2768 run the &oldreleasename; version in parallel to the &releasename;
2769 version.</p>
2770
2771 <!-- FIXME: this is not possible, the old zope packages depend on python2.3
2772 and there is no way to keep python2.3 on the system when dist-upgrading!
2773 -->
2774 <p>For Zope, you may also be able to keep the old packages installed on
2775 your &releasename; system. For most packages this is possible as they
2776 use a different name space. To keep the old versions, you will need to
2777 package holding as documented in <ref id="package_status">. This method
2778 is not possible for Plone because the <package/zope-cmfplone/ package
2779 is not versioned.</p>
2780 </sect>
2781
2782 <sect id="tar"> <heading>Wildcard expansion (globbing) with GNU tar</heading>
2783 <p>Previous versions of GNU <prgn/tar/ assumed shell-style globbing
2784 when extracting files from or listing an archive. For example:
2785 <example>
2786 tar xf foo.tar '*.c'
2787 </example>
2788 would extract all files whose names end in '.c'. This behavior was not
2789 documented and was incompatible with traditional <prgn/tar/
2790 implementations. Therefore, starting from version 1.15.91, GNU
2791 <prgn/tar/ no longer uses globbing by default. For example, the above
2792 invocation is now interpreted as a request to extract from the archive
2793 the file named '*.c'.</p>
2794 <p>See <file>/usr/share/doc/tar/NEWS.gz</file> for further information.</p>
2795 </sect>
2796
2797 <sect id="nis"><heading>NIS and Network Manager</heading>
2798 <p>The version of <prgn/ypbind/ included with <package/nis/ for
2799 &releasename; contains support for Network Manager. This support causes
2800 <prgn/ypbind/ to disable NIS client functionality when Network Manager
2801 reports that the computer is disconnected from the network. Since Network
2802 Manager will usually report that the computer is disconnected when it is
2803 not in use, NIS users with NIS client systems should ensure that Network
2804 Manager support is disabled on those systems.</p>
2805 <p>This can be done by either uninstalling the <package/network-manager/
2806 package, or editing <file>/etc/default/nis</file> to add <tt/-no-dbus/ to
2807 <tt/YPBINDARGS/.</p>
2808 <p>The use of <tt/-no-dbus/ is the default for new installs of Debian, but
2809 was not the default in previous releases.</p>
2810 </sect>
2811
2812 <sect id="php-globals"> <heading>Deprecated insecure php configurations</heading>
2813 <p>For many years, turning on the <tt/register_globals/ settings in PHP
2814 has been known to be insecure and dangerous, and this option has defaulted to
2815 off for some time now. This configuration is
2816 now finally deprecated on Debian systems as too dangerous.
2817 The same applies to flaws in <tt/safe_mode/ and <tt/open_basedir/, which
2818 have also been unmaintained for some time.</p>
2819
2820 <p>Starting with this release, the Debian security team does not provide
2821 security support for a number of PHP configurations which are known to
2822 be insecure. Most importantly, issues resulting from
2823 <tt/register_globals/ being turned on will no longer be addressed.</p>
2824
2825 <p>If you run legacy applications that require <tt/register_globals/,
2826 enable it for the respective paths only, e.g. through the Apache
2827 configuration file. More information is available in the
2828 <file>README.Debian.security</file> file in the PHP
2829 documentation directory (<file>/usr/share/doc/php4</file>,
2830 <file>/usr/share/doc/php5</file>).</p>
2831 </sect>
2832
2833 <!-- JFS: Bug #400311 -->
2834 <sect id="mozilla-security"> <heading>Security status of Mozilla products</heading>
2835 <p>The Mozilla programs <package>firefox</package> and <package>thunderbird</package>
2836 (rebranded in Debian to <package>iceweasel</package> and <package>icedove</package>, respectively),
2837 are important tools for many users.
2838 Unfortunately the upstream security policy is to urge users to update to
2839 new upstream versions, which conflicts with Debian's policy of not shipping
2840 large functional changes in security updates.
2841 We cannot predict it today, but during the lifetime of &releasename; the
2842 Debian Security Team may come to a point where supporting
2843 Mozilla products is no longer feasible and announce
2844 the end of security support for Mozilla products.
2845 You should take this into account when deploying Mozilla and consider
2846 alternatives available in Debian if the absence of security support would
2847 pose a problem for you.</p>
2848 </sect>
2849
2850 <!-- JFS: Bug #400838 -->
2851 <sect id="kde-desktop-changes"> <heading>KDE desktop</heading>
2852 <p>KDE media handling has changed in the version available in
2853 &releasename; from using <file>device:/</file> to <file>media:/</file>.
2854 Some user configuration files might have stored <file>device:/</file>
2855 links in them which should be adapted. Notably,
2856 <file>~/.kde/share/apps/konqsidebartng/virtual_folders/services</file>
2857 contains this reference and can be safely deleted as it will not be
2858 created when setting up new users.
2859
2860 <p>There have been many changes in the KDE desktop environment from
2861 the version shipped in &oldreleasename; to the version in
2862 &releasename;, you can find more information in the <url
2863 id="http://www.kde.org/announcements/announce-3.5.php" name="KDE
2864 3.5 Release Notes">.</p>
2865 </sect>
2866
2867 <!-- JFS: Bug #387921 -->
2868 <sect id="gnome-desktop-changes"> <heading>GNOME desktop changes and support</heading>
2869 <p>If you used the GNOME desktop in &oldreleasename; you will not benefit
2870 of some of the changes introduced in the default configuration in
2871 Debian for &releasename;. In some extreme cases the GNOME desktop might
2872 not properly handle your old configuration and might not behave properly.</p>
2873
2874 <p>If you have not heavily invested in configuring your GNOME desktop
2875 you might want to move the the <file>.gconf</file> directory in user's
2876 home directories to a different name (such as <file>.gconf.old</file>)
2877 so that it gets recreated, with the default configuration for
2878 &releasename;, upon starting a new session.</p>
2879
2880 <p>With the release of &releasename;, Debian no longer contains packages for
2881 most of the obsolete version 1 release of GNOME. Although some packages
2882 remain in order to support some Debian packages which have not yet
2883 been updated to GNOME 2. Packages for GTK1.2 remain fully maintained.</p>
2884
2885 <p>There have been many changes in the GNOME desktop environment from
2886 the version shipped in &oldreleasename; to the version in
2887 &releasename;, you can find more information in the <url
2888 id="http://www.gnome.org/start/2.14/notes/en/" name="GNOME
2889 2.14 Release Notes">.</p>
2890 </sect>
2891
2892 <!-- FJP: Bug #398887 -->
2893 <sect id="default-editor"> <heading>Default editor</heading>
2894 <p>If you were using <prgn/vim/ as your default editor, this may
2895 be changed to <prgn/nano/ during the upgrade.</p>
2896
2897 <p>Administrators who wish to change the default editor for all users
2898 will have to update the alternatives system using:
2899
2900 <example>
2901 # update-alternatives --config editor
2902 </example>
2903 </p>
2904
2905 <p>Users wishing to change the default editor can define the
2906 environment variable <em>EDITOR</em> by introducing the following lines
2907 in their own profiles:
2908
2909 <example>
2910 EDITOR=vi
2911 export EDITOR
2912 alias editor=$EDITOR
2913 </example>
2914 </p>
2915
2916 </sect>
2917
2918 </chapt>
2919
2920 <chapt id="moreinfo">
2921
2922 <heading>More information on &debian;</heading>
2923
2924 <sect id="morereading"> <heading>Further reading</heading>
2925 <p>Beyond these release notes and the installation guide, further
2926 documentation on &debian; is available from the Debian
2927 Documentation Project (DDP), whose goal is to create high quality
2928 documentation for Debian users and developers. Documentation,
2929 including the Debian Reference, Debian New Maintainers Guide, and Debian
2930 FAQ are available, and many more. For full details of the existing resources
2931 see the <url id="&url-ddp;" name="DDP website">.</p>
2932
2933 <p>Documentation for individual packages is installed into
2934 <file>/usr/share/doc/<var>package</var></file>, this may include
2935 copyright information, Debian specific details and any upstream
2936 documentation.</p>
2937
2938 </sect>
2939
2940 <sect id="gethelp">
2941 <heading>Getting help</heading>
2942
2943 <p>There are many sources of help, advice and support for Debian
2944 users, but these should only be considered if research into
2945 documentation of the issue has exhausted all sources. This section
2946 provides a short introduction into these which may be helpful for
2947 new Debian users.</p>
2948
2949 <sect1 id="lists">
2950 <heading>Mailing lists</heading>
2951 <p>The mailing lists of most interest to Debian users are the
2952 debian-user list (English) and other debian-user-<var/language/ lists
2953 (for other languages). For information on these lists and details of
2954 how to subscribe see <url id="&url-debian-list-archives;">. Please
2955 check the archives for answers to your question prior to posting and
2956 also adhere to standard list etiquette.</p>
2957 </sect1>
2958 <!-- TODO: Changed to OFTC -->
2959 <sect1 id="irc">
2960 <heading>Internet Relay Chat</heading>
2961
2962 <p>Debian has an IRC channel dedicated to the support and aid of
2963 Debian users located on the OFTC IRC network which exists to
2964 provide interactive services to peer-directed project communities.
2965 To access the channel, point your favorite IRC client at
2966 &debian-irc-server; and join #debian.</p>
2967
2968 <p>Please follow the channel guidelines, respecting other users
2969 fully. For more information on OFTC please visit the <url
2970 id="&url-irc-host;" name="website">.</p>
2971
2972 </sect1>
2973 </sect>
2974
2975 <sect id="bugs">
2976 <heading>Reporting bugs</heading>
2977
2978 <p>We strive to make Debian GNU/Linux a high quality operating
2979 system, however that does not mean that the packages we provide are
2980 totally free of bugs.
2981 Consistent with Debian's "open development" philosophy and as a
2982 service to our users, we provide all the information on reported bugs
2983 at our own Bug Tracking System (BTS). The BTS is browseable at
2984 <url id="&url-bts;" name="bugs.debian.org">.</p>
2985
2986 <p>If you find a bug in the distribution or in packaged software
2987 that is part of it, please report it so that it can be properly
2988 fixed for future releases. Reporting bugs requires a valid email
2989 address. We ask for this so that we can trace bugs and developers
2990 can get in contact with submitters should additional information be
2991 needed.</p>
2992
2993 <p>You can submit a bug report using the program
2994 <package>reportbug</package> or manually using email.
2995 You can read more about the Bug Tracking System and how to use it by
2996 reading the reference cards (available at
2997 <file>/usr/share/doc/debian</file> if you have
2998 <package>doc-debian</package> installed) or online at the
2999 <url id="&url-bts;" name="Bug Tracking System">.</p>
3000
3001 </sect>
3002
3003 <sect id="contributing">
3004 <heading>Contributing to Debian</heading>
3005
3006 <p>You do not need to be an expert to contribute to Debian. By
3007 assisting users with problems on the various user support <url
3008 id="&url-debian-list-archives;" name="lists"> you are contributing to
3009 the community. Identifying (and also solving) problems
3010 related to the development of the distribution by participating on
3011 the development <url id="&url-debian-list-archives;" name="lists"> is
3012 also extremely helpful. To maintain Debian's high quality
3013 distribution, <url id="&url-bts;" name="submit bugs">
3014 and help developers track them down and fix them. If you have a way
3015 with words then you may want to contribute more actively by helping
3016 to write <url id="&url-ddp;"
3017 name="documentation"> or <url
3018 id="&url-debian-i18n;" name="translate"> existing
3019 documentation into your own language.</p>
3020
3021 <p>If you can dedicate more time, you could manage a piece of the
3022 Free Software collection within Debian. Especially helpful is if
3023 people adopt or maintain items that people have requested for
3024 inclusion within Debian, the <url id="&url-wnpp;" name="Work Needing
3025 and Prospective Packages database"> details this information. If you
3026 have an interest in specific groups then you may find enjoyment in
3027 contributing to some of Debian's subprojects which include ports to
3028 particular architectures, <url id="&url-debian-jr;" name="Debian
3029 Jr."> and <url id="&url-debian-med;" name="Debian Med">.</p>
3030
3031 <p>In any case, if you are working in the free software community in
3032 any way, as a user, programmer, writer or translator you are already
3033 helping the free software effort. Contributing is rewarding and fun,
3034 and as well as allowing you to meet new people it gives you that
3035 warm fuzzy feeling inside.</p></sect>
3036
3037 </chapt>
3038
3039 <!-- This may or may not still be useful -->
3040 <appendix id="old-stuff">
3041 <heading>Managing your &oldreleasename; system</heading>
3042
3043 <p>This appendix contains information on how to make sure you can install
3044 or upgrade &oldreleasename; packages before you upgrade to &releasename;.
3045 This should only be necessary in specific situations.</p>
3046
3047 <sect id="old-upgrade">
3048 <heading>Upgrading your &oldreleasename; system</heading>
3049
3050 <p>Basically this is no different than any other upgrade of
3051 &oldreleasename; you've been doing. The only difference is that you
3052 first need to make sure your package list still contains
3053 &oldreleasename; packages as explained in <ref id="old-sources">.</p>
3054
3055 <p>If you upgrade your system using a Debian mirror, it will
3056 automatically be upgraded to the latest &oldreleasename; point
3057 release.</p>
3058
3059 </sect>
3060
3061 <sect id="old-sources">
3062 <heading>Checking your sources list</heading>
3063
3064 <p>If any of the lines in your <file>/etc/apt/sources.list</file>
3065 refer to 'stable', you are effectively already "using" &releasename;.
3066 If you have already run <tt>apt-get update</tt>, you can still get
3067 back without problems following the procedure below.</p>
3068
3069 <p>If you have also already installed packages from &releasename;,
3070 there probably is not much point in installing packages from
3071 &oldreleasename; anymore. In that case you will have to decide for
3072 yourself whether you want to continue or not. It is possible to
3073 downgrade packages, but that is not covered here.</p>
3074
3075 <p>Open the file <file>/etc/apt/sources.list</file> with your favorite
3076 editor (as root) and check all lines beginning with <tt>deb http:</tt>
3077 or <tt>deb ftp:</tt> for a reference to "<tt/stable/". If you find any,
3078 change <tt/stable/ to <tt/&oldreleasename;/.</p>
3079
3080 <p>If you have any lines starting with <tt>deb file:</tt>, you will
3081 have to check for yourself if the location they refer to contains
3082 a &oldreleasename; or a &releasename; archive.</p>
3083
3084 <p><strong/Important!/ Do not change any lines that begin with
3085 <tt>deb cdrom:</tt>. Doing so would invalidate the line and you would
3086 have to run <prgn/apt-cdrom/ again. Do not be alarmed if a 'cdrom' source
3087 line refers to "<tt/unstable/". Although confusing, this is normal.</p>
3088
3089 <p>If you've made any changes, save the file and execute
3090
3091 <example>
3092 # apt-get update
3093 </example>
3094
3095 to refresh the package list.</p>
3096
3097 </sect>
3098
3099 </appendix>
3100
3101 </book>
3102 </debiandoc>
3103
3104 <!-- Keep this comment at the end of the file
3105 Local Variables:
3106 mode: sgml
3107 sgml-omittag:t
3108 sgml-shorttag:t
3109 sgml-namecase-general:t
3110 sgml-general-insert-case:lower
3111 sgml-minimize-attributes:nil
3112 sgml-always-quote-attributes:t
3113 sgml-indent-step:2
3114 sgml-indent-data:nil
3115 sgml-declaration:nil
3116 sgml-parent-document:nil
3117 sgml-exposed-tags:nil
3118 sgml-local-catalogs:nil
3119 sgml-local-ecat-files:nil
3120 fill-column: 75
3121 End:
3122 -->

  ViewVC Help
Powered by ViewVC 1.1.5