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

  ViewVC Help
Powered by ViewVC 1.1.5