Skip to content.
The Debian System -- Concepts and Techniques The Debian System -- Concepts and Techniques
Martin F. Krafft Open Source Press / No Starch Press ISBN 3-937514-07-4 / 1-593270-69-0
Personal tools RSS feed

Document Actions
Up one level
Updates and announcements
Website back online
Sarge also does not support tilde in versions (page 218)

In the end of the forth paragraph, I claim that the woody tools do not support the tilde (~) character in the version number string. The sarge tools also do not support this character. Full support for the tilde character in version numbers will come with the release of Debian etch.

Update: while sarge's dpkg and even APT support the tilde character in version strings, the majority of package- and packaging-related tools in the sarge archive do not. Therefore, the tilde is not fully supported in sarge, but it is in the etch release.

No edition planned for etch
Due to a number of reasons, there will not be an updated edition of the book for etch. I am working on a version for Lenny though.
Faulty way of spawning sshd in single-user mode (page 299)

In chapter 6.3.1, I suggest to add sshd to the /etc/inittab file to be able to login to a remote system even in single-user mode:

# sed -i -e "/^~~/ish:S:respawn:sshd -Do 'AllowUsers=root'" /etc/inittab

Unfortunately, there are two errors with this: first, sshd must be called with the complete path (to guard against trojans), and init must be told to reload the configuration file after the change.

The following corrects both problems:

# sed -i -e "/^~~/ish:S:respawn:/usr/sbin/sshd -Do 'AllowUsers=root'" /etc/inittab
# telinit q
French translation released
Wrong argument to apt-cdrom (page 167)

The argument to apt-cdrom should be add, not --cdrom. Therefore, the first example on page 167 in section should read:

# apt-cdrom add /media/cdrom
Using CD-ROM mount point /media/cdrom/
Default-Release setting in wrong namespace (page 169)

The apt.conf examples on page 169, which illustrate the two different syntax styles, list Default-Release under the wrong namespace. Instead of APT::Get, it should just be APT:

APT::Default-Release "sarge";


Default-Release "sarge";
Missing argument to cut command (page 148)

At the bottom of the page, the cut command is missing the field delimiter argument. The correct line reads:

dpkg-query --show --showformat='${Status} ${Package}\n' \
| grep ^deinstall | cut -f4 -d' ' | xargs dpkg -P
Quote by John R. Vacca
[...] an outstanding book that is based on Debian using Linux as the kernel. [...] This excellent book has done an excellent job of targeting people familiar with Unix who are looking to understand what makes Debian different.
Quote by Jon T. Stokkeland
I believe this book is the perfect book for anyone switching from another GNU w/Linux distro to Debian GNU w/Linux.
Quote by angrykeyboarder "Scott"
This book truly rocks. [...] This is probably the single best Linux book I own.
Deborphan may need to be run iteratively (page 248)

Deborphaner is not iterative (or recursive, depending on how you look at it). In one run it may suggest to remove a set of packages, but it fails to identify packages that would be obsolete if the user removed the packages suggested in the first run.

MIRROR variable incomplete (page 408)

In section 8.3.1, the $MIRROR variable set in the example is incomplete: it lacks the path to the /debian directory. The assignment should read:


Regardless, you should still use apt-spy to determine a closer mirror!

Japanese translation released
German translation released
Removed state is called deinstall, not remove (page 152)

The name of the state of a package that has been removed is called deinstall, not remove.

Quote by Carla Schroder, Groklaw
There isn't anything about this book I don't like. Except I wish it had been published years ago.
Quote by Carla Schroder, Groklaw
This is the definitive Debian manual, and I wish it had been written years ago. Mr. Krafft's affection and enthusiasm for Debian is apparent, and makes this book a pleasurable read.
Quote by Aric Campling, MozillaQuest
[The author] approaches [the text] from a very practical stance. He writes with a very down-to-earth methodology that neither condescends to nor speaks over the heads of its intended readers.
Quote by Aric Campling, MozillaQuest
This book will have something new in store for all but the most advanced Debian users. While reading [it], I was surprised to find out how much I did not know about Debian GNU/Linux, the very operating system I use [...], especially about Debian's community orientation and about some powerful Debian tools that I never knew existed.
Quote by Aric Campling, MozillaQuest
[The book] can provide you with a wealth of knowledge to make any Debian task easier, more efficient, and relatively painless. [...] Krafft details a set of additional Debian software management tools that aid the user or administrator in maintaining a clean, streamlined system.
Quote by John Havey,
[The book] is comprehensive and well written by someone who clearly knows what they are talking about.
Source package index is named Sources, not Packages (page 107)

In the very end of section 4.1.2, I claim that index files are named Packages in all cases. This is only true for binary packages. Source packages are indexed in a file called Sources. Thus, the index of all source packages of the contrib section of the sid archive is in the file /dists/sid/contrib/source/Sources.

Unfortunately, the error also occurs in figure 4.1 on page 105. The following is an updated figure (which also corrects this error):

Figure 4.1 - Archive Tree

amd64 architecture added to official archive (page 116)

The integration of the amd64 architecture into the official archive is underway as part of the mirror split, and the first package has been uploaded. Within the next few weeks, amd64 will thus become an official Debian architecture, and it shall be released as part of Debian etch, the next stable release.

DPL election debate tonight
Announcing a delay with the German website
German translation available February 2006
Missing folder level in figure (page 105)

Unfortunately, Figure 4.1 in section 4.1 is missing a level of folders. Below /debian/dists/sarge, each section (main, contrib, non-free) gets a folder, which then hold the binary-* and source folders each.

The corrected diagram looks like this (click to enlarge):

Replacement for Figure 4.1: Archive Tree

Quote by Linux User & Developer, February 2006, p. 93f.
The Debian System does a great job in sticking very closely to a tight remit, and only covering generic areas such as networking and security where the Debian way impacts on configuration.
Quote by Linux User & Developer, February 2006, p. 93f.
The Debian System is probably one of the most complete works covering any distribution or indeed operating system, embracing the culture of the active community, key technologies and the development model itself. It's a total introduction to the Debian way [...]
Quote by Kristin Shoemaker,
I highly recommend The Debian System to anyone interested in how free/open source software works. I especially recommend it to intermediate Linux users, whether or not they're running a Debian-based system (though I imagine they'll want to try one by the time they're done with the book).
Quote by Kristin Shoemaker,
The Debian System is not just a manual. It's a philosophy tome. It's a bible. It's a love letter. And whereas this should not be one's first Linux book, it should be on every Linux enthusiast's reading list, whether one is a Debian user or not.
Quote by John Vacca
This excellent book has done an excellent job of targeting people familiar with Unix who are looking to understand what makes Debian different, and how to best put Debian's paradigms and tools to use. In other words, this book is intended to be a reference for the Debian system, as well as a guide for those that want to go further with the system.
Quote by Richard Bejtlich, Tao Security
It is fair to say that Krafft's book has helped me decide to stay with Debian for systems that need to run Linux. I am confident that I can return to TDS when I need to solve problems, and be armed with a variety of options for doing so. I would love to see an equivalent book for FreeBSD!
Quote by Richard Bejtlich, Tao Security
Prospective TDS readers should understand that this book is unlike any I have read on operating systems. Readers will not have to skip pages on setting up Apache or configuring BIND, thankfully! Instead, TDS covers core system administration subjects to a degree I have not seen elsewhere. [...] Krafft takes readers on an inside tour of the how and why of Debian. Rather than just explaining a technique or tool, the author discusses the overall problem, possible ways to approach it, and Debian's solutions. He presents pros and cons for each, and then demonstrates usage with command line syntax and sample output.
Quote by Richard Bejtlich, Tao Security
Krafft is obviously a Debian enthusiast, but he is not a zealot blind to any flaws Debian might possess. He is also not afraid to praise other OS' (like NetBSD) or declare that certain misconceptions (think debconf) are invalid. When necessary he compares Debian tools or syntax to other Linux distributions, such as a chart on pp 200-201 on apt, yum, up2date, and urpmi. The book also contains a large number of footnotes with URLs for more research and additional commentary.
Quote by Richard Bejtlich, Tao Security
I was extremely impressed by Martin Krafft's The Debian System.
Quote by Abhijeet Chavan, Urban Insight, Inc.
Krafft's explanations about the reasoning and motivation behind Debian's design and implementation have been invaluable. With the help of this book, I have discovered utilities I had no idea existed. In short, it has helped me become a more informed Debian user. The Debian System is essential reading for all Debian users.
Quote by Abhijeet Chavan, Urban Insight, Inc.
I liked Krafft's precise, straight-to-the-point writing style. He makes basic as well as advanced topics readable without coming across as either condescending or cryptic. The terse footnotes are useful and supplement the text with interesting tips and resources. This is a technical book for sure, without fluff or off-topic detours, and it's packed with information. Still, Krafft manages to impart a personal feel by sharing his observations and balanced opinions. He delivers frank assessments of the strengths, weaknesses and eccentricities of a Debian system. In fact, the book even includes an appendix on how to decide if Debian is the right GNU/Linux distribution for you.
Quote by Abhijeet Chavan, Urban Insight, Inc.
The book also provides a fascinating behind-the-scenes look at how a GNU/Linux distribution is developed
Quote by Abhijeet Chavan, Urban Insight, Inc.
The book certainly should appeal to seasoned Debian users, who will enjoy exploring the advanced topics.
Quote by Abhijeet Chavan, Urban Insight, Inc.
From fundamental concepts to advanced techniques, most topics in this book are covered in great depth, so it is likely to have a long shelf-life on most readers' bookshelves.
Bad versioning scheme for pre-release versions (page 218)

The versioning scheme for pre-release upstream  versions proposed in section 5.7.5 is not desirable: encoding the pre-release version in the Debian revision prevents a new orig.tar.gz file from being uploaded when the final release is uploaded.

The following rewrite should make the situation clear. It replaces the second half of the middle paragraphon page 218, starting at "Within the Debian archive, it is customary...":

One scheme could be to release 1.0-rc1 as 1.0-0+1.0rc1+1, followed by 1.0-0+1.0rc1+2, and then 1.0-1 when the final gets released. However, this approach has an inherent problem: for each upstream version, an orig.tar.gz file exists in the Debian archive; Debian revisions are released as diff.gz files against the orig.tar.gz file (see chapter 9.2.12). In the proposed scheme, the orig.tar.gz file will contain the 1.0-rc1 upstream release, and when the final 1.0 release is to be packaged, the diff.gz file for the 1.0-1 Debian release will have to encompass all upstream changes between 1.0-rc1 and 1.0 as well, which is undesirable.

Thus, a better approach is to encode the pre-release version as part of the upstream vesion. This can be done in one of two ways: using the previous upstream version as base (let's assume 0.90), or an obviously fake upstream version that sorts before the final release: 0.90+1.0rc1-1 or 0.999+1.0rc1-1. Now, upon release of 1.0, a new orig.tar.gz file can be uploaded to replace the previous one. With that in mind, it should be easy to infer the upstream version number from the Debian version, even in complex cases.

Gnoppix is based on Ubuntu, not vice versa (page 564)

The last sentence of A.2.3 states that Gnoppix is the basis for the Ubuntu Live CD. This is not accurate. Andreas Müller, the developer of Gnoppix, actually developed the Ubuntu Live CD first, and then reused this work for Gnoppix. Thus, Gnoppix is based on the Ubuntu Live CD, not vice versa.

Standard mode allows to choose from a set of tags (page 540)

The item on reportbug's standard mode mentions a set of patches to be applied to the bug report. Instead of patches, this should read tags.

Two small errors in preinst file (page 490)

The listing in section 9.4.1 contains two small errors related to the preinst file:

  1. The cat instruction should be redirected to debian/foo.preinst, not debian/foo/preinst.
  2. The version comparison within the preinst file should compare against 1.2.3-4, because presumably only versions before 1.2.3-4 used a working directory in /var/state.
Quote by Noel Davis,
Can you imagine a book about Debian GNU/Linux stretching to 600 pages? No, not covering any of the applications that ship with Debian, nor delving into general configuration of, say, X or Samba. Just pure Debian; that is to say, the book covers Debian-specific utilities only, in densely printed pages with hardly any screenshots. Yup, a book like that has just been published under the name of The Debian System - Concept and Techniques. Written by Martin Krafft, this is one of the most comprehensive and detailed accounts of the largest Linux distribution in existence.
Unclear wording on Pre-Depends relation (page 210)

The description of the Pre-Depends relation as part of the discussion of the Depends relation in section 5.7.3 is unclear. A better explanation is:

Another relation, Pre-Depends, provides a tighter dependency and is only used in very special cases;
packages listed here need to be fully configured before the dependending package can be unpacked or configured. If a previous version of the pre-dependent package has once been configured on the system, the depending package can be unpacked (but not configured) even if the current version of the pre-dependent package has not been configured yet.

Components select non-free software, not non-US (page 166)

The item on components on the top of page 166 states that components "also specify when non-US software is to be used."

This should say "non-free software" instead. Components cannot be used to select non-US software.

Wrong APT source line for non-US archive (page 164)

In the first listing in section 5.4.1, the line for the non-US archive should be:

deb sarge/non-US main

This is to say: the name non-US is also part of the distribution.

Quote by Geoff Sheppard
Great book, sorely needed. It's "zen" sets it apart.
grub-update should be update-grub (page 413)

The (Debian) command to update grub's menu.lst file is update-grub, not grub-update, which erroneously appears several times on pages 413ff.

New Wiki went live (page 517)

The semi-official Debian Wiki at now has a successor over at, which would finally make the Debian Wiki an official resource.

Interview by XYZ Computing
Debian still fastest growing distro (page 18)

Netcraft has determined Debian again to be the fastest growing Linux distribution (on web servers) in 2005.

Wrong hostname for the Debian snapshot server (page 266)

The third paragraph of section 5.12.3 refers to The correct hostname is

Wrong port and confusing assumption (page 250)

In the subsection on apt-proxy of section 5.11.7, the sources.list file does not include apt-proxy's default port 9999. Instead, it should read:

~# cat <<EOF > /etc/apt/sources.list
http://arakis:9999/debian sarge main
http://arakis:9999/security sarge/updates main
http://arakis:9999/pdo/~madduck/packages/stage ./

In addition, the paragraph just before the snippet says that the machine running apt-proxy must be resolvable from the machine named arakis. Rather, the machine running apt-proxy must be resolvable as arakis from the machine hosting the sources.list file.

New Wiki page detailing Secure APT (page 373)

Joey Hess added a page to the Debian Wiki with the goal to better document APT 0.6, aka. Secure APT. This should augment the information you can find in section 7.5.2.

Dissertation chapter on social aspects of the Debian community (page 46)

Biella Coleman, a Ph.D. from Chicago University (see a short biography), has the announced the release of a chapter from her dissertation on the ethics and politics of the free software movement. The chapter, titled "Three ethical moments in Debian: the making of an ethical hacker part III", is the result of years of research with and within the Debian project. It is a recommended read  for anyone interested in the inner workings of the Debian community, and complements the description of the community in chapter 2.4 on pages 46ff. You can download the chapter from this page.

Debian Linux Kernel Handbook released (page 382)

Jurij Smakov et al. have published the Debian Linux Kernel Handbook, which documentswill help in documenting the internals of the Debian Linux Kernel build process. The document is still work in progress.

Even though the kernel team does not use kernel-package, the document surely contains a great amount of useful or interesting information.

Quote by Gustavo Franco
It's the best book that I ever read about the subject.
Quote by Jason Brooks, eWEEK Labs
This 600-plus-page tome['s ...] coverage of Debian's software management system and administration concepts, and of the way the Debian development project itself is organized, is impressive.
Quote by Chad Laity, Cariboo Computer Magazine
Kudos to Martin F. Krafft for putting together one excellent book about the concepts and techniques for the Debian Linux distribution. [...] This is one of those books that goes into complete detail about every aspect of the Debian project. A very well written book with examples and lots of information for any user that wants to learn more about the Debian project or use it as a resource alongside a standard Linux reference book to bootstrap your Linux experience with Debian. I give The Debian System - Concepts and Techniques a big two thumbs up and two toes up!!
Happy new year
No news is good news, so allow me to at least wish you all the best for the new year!
New ftpmaster key for 2006 (page 574)

On 3 January 2006, a new archive signing key for the main Debian archive was put in place. The following are the relevant data to help you verify it.

ID: 2d230c5f
Date: 2003-01-03
Fingerprint: 0847 50fc 01a6 d388 a643 d869 0109 0831 2d23 0c5f
Creator: Anthony Towns (key 0x2a4e3eaa)

As in the book, this information comes without any warranty.

Quote by Peter H. Salus, UNIX Review
If you're going to be running Debian, here's your Bible.
Qmail is not Open Source (page 40)

In the end of section 2.2.2, I cite Qmail as an example of non-free open source software. Here, I have made the common mistake of equating availability of source with "open-source-ness". Qmail is non-free, and not Open Source by the Open Source Definition, although its sources are available.

Free software is not a subset of Open Source (page 40)

In chapter 2.2.2, Free Software is incorrectly described as a subset of Open Source: while it is true that there are there Open Source licenses which are not FSF-Free or not approved by Debian, that is a matter of interpretation, not of principles, as the Open Source Definition and the Debian Free Software Guidelines match almost word for word.

Quote by Javier Candeira,
The book is amazing, [... the] level of quality assurance is fantastic.
QPL situation not correctly described (page 33)

In subsection "Into the next milennium" in section 2.1, I state that Trolltech, the manufacturer of the Qt library, "agreed to license the library under the GNU Public License (GPL) for non-commercial use."

Instead, it should read: "[Trolltech] agreed to license they X11/*nix library under the GNU Public License (GPL) thus making it compatible with the Debian Free Software Guidelines."

Wrong mount options for /dev/hda2 (page 417)

In subsection "Converting another Linux to Debian" in section 8.3.1, the /etc/fstab snippet on page 417 includes the following line:

/dev/hda2   /   ext2    default      0  1

Instead of "default", the mount options should be "defaults":

/dev/hda2   /   ext2    defaults     0  1
Wrong chapter reference (page 427)

The chapter reference in the last sentence of the item called "Partitioning" should point to appendix C.5, not chapter 19.

Command is dh_install, not dg_install (page 471)

In the second sentence of the first item of the list on page 471 in section 9.2, the command should have been dh_install, not dg_install.

Option should be --upgradeable, not --upgraded (page 403)

In the third example on page 403 in section 8.2.2, the option to apt-show-versions should be --upgradeable (as in the example just before), not --upgraded.

Should be dpkg --status, not --show (page 149)

The paragraph after the first code snippet on page 149 in section 5.3.4 states that dpkg --show is more or less the same as dpkg --info. Instead of the --show, this should read --status, as in the code snippet.

Code snippet involuntarily repeated (page 278)

The first example on page 278 in section 6.1.4 contains a repeated instruction. You can ignore all code after the second command, update-alternatives --display editor, and its output.

Quote by Christian Einfeldt, MadPenguin
Martin follows [a] general pedagogic method throughout all of the technical chapters of his book: policy; concept; techniques; and examples. I say pedagogic, not pendantic. Martin is not going to talk down to you, but he will give you puh-lenty of deep info about the Debian utilities and fundamental code structures [...]. In fact, this text certainly is suitable for a college-level course on computer system administration.
Quote by Ladislav Bodnar, Distrowatch
I have always enjoyed computer books [...] The Debian System - Concepts And Techniques will go down as one of the greatest of them all - the one that I will certainly keep on the table for a long time before I put it up on the shelf, but even then, it will never be far from reach. An absolute must for all users of Debian and Debian derivatives, and a proud addition to any Linux user's book collection. Highly recommended.
Quote by Ladislav Bodnar, Distrowatch
No matter how skilled you are in administrating a Debian box and irrespective of how confident you are running the multitude of Debian commands at 4 o'clock in the morning, you are bound to learn something new. There is so much amazing information packed in this book that it is impossible for any one person to know it all. A great reference material [...].
Quote by Christian Einfeldt, MadPenguin
Martin's interesting 37-page chapter on how Debian is structured [...] will probably become a small, but important and enduring part of the stories that Debian developers will tell about themselves. [...] Martin's thorough, but succinct, summary of the Debian project will be one of the features that will cause Debian fans to keep Martin's book in a well-thumbed condition on their shelves.
Quote by Ladislav Bodnar, Distrowatch
He does not come through as a person strongly advocating his preferred operating system - in fact, he freely admits that Debian might not be for everyone and other Linux distributions (or even other operating systems) might sometimes be more suitable for certain users and tasks.
Quote by Christian Einfeldt, MadPenguin
Charles Darwin would “get” the beauty Debian if he were alive today. Martin Krafft certainly “gets” the beauty of Debian, and he wants you to get it too, so he has written a very detailed exposition of the Debian code and community. [...] If there was one word that I would use to describe Martin's book, that word would be “meticulous.”
Quote by Ladislav Bodnar, Distrowatch
This is one of the most comprehensive and detailed accounts of the largest Linux distribution in existence. [...] All technical aspects of this distribution are explained with remarkable clarity of a person who is rather familiar with the system.
Quote by Stephen Grady, Redmonk
[...] it was clear that whatever Martin had set out to achieve with his book, it had found a very receptive and appreciative audience.
Quote by Claudia Jones
I did note that you are not a native speaker on numerous occasions. However, never was I thrown off your detailed discussion of Debian's guts. [...] Future computer book authors will have quite some difficulty reaching up to your standards. I am glad you concentrated on content, not prose. [...] Your book is a pleasure to read. Thank you!
Quote by Mark Gibbs, Network World (28 Nov 2005)
This book is unusual in that it is much more than a technical discussion - it delves into the philosophy of the system, explains how someone becomes a recognized Debian developer and details the way that Debian is licensed. That's not to say the book doesn't get technical. It provides a very well-written, soup-to-nuts explanation of how Debian is organized; how to install, configure and modify the system; and how to administer and secure it. Excellent and highly recommended.
PPP is point-to-point, not peer-to-peer (page 71)
In section 3.1.2, PPP is expanded to "Peer-to-Peer Protocol". It should be "Point-to-Point Protocol".
Improper redirection of dpkg output (page 147)
The last listing on page 147 as well as the first listing on page 148 include a redirection of the form 1>&2. This redirection is an error; nothing should be redirected in both cases.
Quote by Jagadeesh K. Venugopal
I liked this book because, finally, an author has had the presence of mind to write a book that did not regurgitate Unix commands like 'ls' and 'vi' for the gazillionth time. [...] In summary, raise the quality of your Linux reading a few notches by purchasing this book, and raise the quality of your personal computer usage by installing debian or its derivatives.
Alioth project initscripts-ng started (page 61)

The "Development and improvement" subsection of section 2.5.1 talks about the need of an improved boot initialisation sequence. The initscripts-ng project has been started with the goal to create a better init system.

Changes are not expected in the stable release (page 24)

Section 1.4.2 talks about anticipated changes to the Debian project and system. As should become apparent when reading section 4.3.3, such changes are not to be expected in the stable release of the operating system, which is one of its main selling points. Thus, if you only track stable and have no interest in the surrounding project or new developments, you need not be concerned with these changes.

I keep a list of changes online to make it easier for you to track developments since the book's release.

Missing labels in archive structure graph (page 105)

The two folders marked '-' in figure 4.1 should have been labeled 'pool' and 'main' (from top to bottom).

Source machine name should be 'remote' (page 229)

In section 5.8.6, on page 229, the source machine name of the scp call in the code snippet should obviously be remote, not rempte.

Wrong source directory for copy operation (page 133)

The first command executed on the shell in the example code snippet in section 5.2.3 should copy the file /var/cache/apt/archives/postfix_2.1.5-1_i386.deb, not /var/spool/apt/archives/postfix_2.1.5-1_i386.deb.

Dpkg does report an error when asked to configure a configured package (page 141)

At the end of section 5.3.2, I claim that dpkg does not report an error when asked to configure an already configured package. In fact, dpkg does report an error:

~# dpkg --configure postfix                                                                                                                                [300]
dpkg: error processing postfix (--configure):
package postfix is already installed and configured
Errors were encountered while processing:
Partition types are mixed up (page 577)

At the bottom of page 577, in section C.2.1., the suggestion should be for data partitions to be of type 0x83 and swap partitions to have the type 0x82, not the other way around.

Quote by Tutorus Maximus "Dave"
For an overview of how and why Debian is different from other distributions, The Debian System: Concepts and Techniques by Martin Krafft explains it all.
Quote by
This is probably the best book about Debian ever written, but it has a specific target audience: those who are already familiar with GNU/Linux, or at least other unices. [...] Martin F. Krafft explains [Debian GNU/Linux] with clarity in a thorough and very well written book. [...] For those with already a basic understanding of GNU/Linux and interested in debian Kraffts book will be THE indispensable companion. [...] This is definitely the best written and most intelligent IT book I have ever read.
Wrong regular expressions in refresh_pattern (page 251)

The mysteries of LaTeX have caused the fifth and sixth line of the squid.conf file snippet to be falsely printed. In the fifth line, instead of the underlined parenthesis and 't' and 'g' characters, escaped periods should have appeared. In the sixth line, the wrapping was messed up:

refresh_pattern \.(u?deb|dsc|changes|(orig\.tar|diff)\.gz)$ 14400 20% 2592000
refresh_pattern ((Packages|Sources)(\.(gz|bz2))?|Release(\.gpg)?)$ 14300 20% 14400
Long option for dch -v is --newversion (page 237)

In the section "Logging the changes" in chapter 5.9, the following invocation of dch is used:

dch --version=$VERSION+0.local.1 -- Made some local changes

The option --version displays the version information of the tool, and does not pass its argument to dch the way I had intended it. The correct long option for -v is --newversion, and thus the command should be:

dch --newversion=$VERSION+0.local.1 -- Made some local changes
No Starch Press releases the book world-wide
Debian adds security support for the testing release (page 363)

Joey Hess announced the full security support for the Debian testing release. Even though still inofficial, this makes Debian testing a viable alternative to the stable release, for those with needs for greater currency of software.

Name of status is config-files (page 152)

The fourth item in the enumeration on page 152 introduces the conf-files dpkg state. The actual name of the state is config-files instead.

Debian bug tracker adds per-user tags (page 532)

The Debian bug tracking system now allows users to attach their own tags to bug reports. You can find the juicy details in the announcement mail.

dpkg does not automatically complete installation after dependencies are met (page 157)

In chapter 5.3.7, I state:

Since dpkg remembers the administrators request to install postfix, it will retry and automatically complete the installation as soon as the dependencies are fulfilled.

This is not correct. dpkg sets the desired state of the postfix package to "install", but it does not automatically configure it when netbase is installed.

dpkg-query command line should specify postfix, not mc (page 148)

The example displaying the use of the --showformat option to dpkg-query should obviously be:

# dpkg-query --show --showformat='${Package}\t${Status}\n' postfix
postfix install ok installed

In the book, it unfortunately specifies mc as the last argument in the command line. I had previously used mc as an example, but switched almost all examples over to postfix as a tribute to my favourite mail server, and its author, Wietse Venema.

Versioned bug reports (page 532)

Following the release of sarge, the Debian debbugs team has added the ability to track package versions instead of just single packages with the Debian bug tracking system. This has been a feature much requested, which should greatly facilitate the period leading up to an official Debian release.

Details of the added and changed features and commands can be found in the announcement.

Quote by Hans Gustav Feller
Wow! I was not going to buy this book. Really not. And then an hour later I was still standing in the store, still holding it in my hands, and still reading. [The author] has put together the most complete and definitive collection of advanced Debian knowledge I've seen, it is an outstanding book.
Quote by Nico Golde
Krafft manages to illustrate topics such as APT pinning, which have a reputation of being complicated and daunting, in an accessible way. [...] Even long-time users will most certainly find new and interesting stuff between the covers. [...] The book has the potential to become the future Debian Bible.
Debian bug tracker adds dependencies (page 532)

The debbugs maintainers are on a roll and have added the ability to block bugs with other bugs. "Blocking" is the official term, though the concept may also be described as "bug dependencies." More information is available in this blog entry by Anthony Towns, and this one by Joey Hess.

Debian adds security support for amd64 (page 122)

Even though amd64 is not (yet) an official architecture, the Debian security team has declared that it will support the sarge release of the Debian AMD64 port, which was released shortly after the official sarge release.

debedit integrated into devscripts as deb-reversion (page 239)

The debedit tool referenced in the second to last paragraph of section 5.9.2 has been added to the devscripts package in version 2.9.3 (i.e. in etch). It is called deb-reversion, not debedit, however.

Anthony signed the key, not James (page 373)

The first text paragraph on page 373 in section 7.5.1 talks about the archive key, which was signed by one of the FTP masters, Anthony Towns. Later in the paragraph, Anthony suddenly becomes James. It should just say Anthony all along

Incomplete sentence about use of dh_clean during installation (page 469)

The last paragraph of the subsection "Build dependencies and cleaning" abruptly ends with the word "Finally". The missing sentence was: "Finally, we invoke the software's installation method and tell it to install runtime files into a hierarchy rooted at debian/tmp."

Quote by Andreas Bohle (Linux Magazin 08/2005, p. V)
The book is for beginners with an interest in the technical aspects, just as much as it is for seasoned Debian users: not everyone is familiar with the diversity of configuration mechanisms and tools of the free distribution. Notwithstanding its distinctly theoretical approach, this tome excels with a substantial quantity of practical examples which illustrate the coherences [of the distribution] further.
Wrong URL to package tracking system (page 59)

The link given in footnote 60 in section 2.5.1 should be, not

Quote by Jan Colpaert
This is the best book I've seen in many years. It does not only cover the technical details I needed to understand as a Debian user, but it also shows clearly the quality of the Debian system and project.
Definition of source package type flipped (page 233)

In the first paragraph of the subsection titled "Obtaining source package" talks about the two types of source packages in the Debian archive: packages requiring modifications prior to their inclusion in Debian, and packages included directly. The text calls the former the class of "native packages" and terms the latter as "normal packages." It should be the other way around.

Malformed reference to mailing list chapter (page 49)

The first paragraph of the section titled "The developer collective" refers to a section on mailinglists in chapter 10. Unfortunately, a markup character was left out in the final script. Instead of "crefmailinglists," it should read "chapter 10.4.1."

Incomplete paragraph about sysklogd daily cron file (page 306)

The item describing the sysklogd cron.daily file somehow got mangled hard:

  1. the parenthesis before the word "mainly" in the first line should be closed after the filename, and before the word "written."
  2. the paragraph ends in an incomplete sentence which should have read: "Note that permissions of other log files are not corrected if the administrator altered them."
Mappings are applied iteratively (page 332)

When the second paragraph in the subsection "Interface mappings" in section 6.7.1 states that only the first matching mapping is applied, it is only partially correct. Mappings are applied iteratively until no further mappings match.

Missing braces in udev configuration (page 335)

The /etc/udev/rules.d/local-netifaces file in the last example in the subsection "Renaming network devices" in section 6.7.1 fell prey to LaTeX. Instead of SYSFSaddress, it should say SYSFS{address}. The example thus becomes:

~# grep lan /etc/udev/rules.d/local-netifaces
KERNEL="eth*", SYSFS{address}="00:00:de:ad:be:ef", NAME="lan"
Linux kernel packages for 2.6.12 and up are named linux-*. (page 260)

The first item in the list on page 260 in section 5.12.2 speaks of a change in the naming scheme of the Debian kernel packages. Starting with the 2.6.12 kernel packages, the Debian Kernel Team has started using linux-* for the packages containing Linux kernel files.

No Starch Press to distribute the book worldwide
postfix-tls integrated into postfix post-sarge (page 208)

In chapter 5.7.2, postfix-tls is used in an example to show how diverted files work. The package is also used in various other parts of the book. While the package exists in sarge, it has been removed from the archive for etch. Its functionality has been integrated into the postfix package. The theory of diverted files continues to hold.

Command should be adduser, not aduser (page 281)

The command referenced in the third row of table 6.1 should be adduser, not aduser.

.Xsession tried if .xsession does not exist (page 101)

Item 3 in section 3.3.4 states: "If the file [.xsession] is present, ./.Xsession is tried."
This should be: "If the file [.xsession] is not present, ./.Xsession is tried."

Mail server problems fixed
Future popularity-contest can also use HTTP (page 256)

In section 5.11.10, the popularity-contest package is introduced as a programme sending email to a central server that aggregates the data and generates statistics. Future versions of popularity-contest can optionally use the HTTP protocol as well and thus do not require a mail transport agent (such as exim4) to be installed on every system that gathers statistics.

Subscribing to single bugs now possible (page 553)

Section 10.6.9 states that single bug subscriptions are not yet possible and promises for this (frequently requested) feature to be available soon. Thanks to the work of Joachim Breitner, Don Armstrong, Pascal Hakim, Anthony Towns, and Colin Watson (hope I have not left anyone out), it is now possible to subscribe to single bug reports. Please see the developer announcement and the documentation for more information.

Chapter 4 available for download
Prefer aptitude over apt-get (for dist-upgrades) (page 181)

Chapter 5.4 introduces APT, and the Debian way of installing, removing, and upgrading packages. The traditional front-end to APT, apt-get, may in the future be replaced by aptitude, which implements most of the command-line options of apt-get (see p. 195f) and is thus a viable drop-in replacement. The sarge release notes recommend using aptitude instead of apt-get, as it "makes safer decisions about package installations than running apt-get directly."

Quote by Glenn English
"The Debian System" is exactly the one I'd been looking for. It's an excellent discussion of sarge (3.1), and it's full of useful information: theory, philosophy, HOWTO, and why. [...] And the best thing about it is that when it's lying open by the keyboard, the book doesn't try to close itself -- the pages lie flat. [...] Kudos to the publisher! And you, too. This is a marvelous piece of work.
Should be overlooks, not oversees (page 110)

The second paragraph pf 4.3.1 says that a maintainer may occasionally "oversee" a detail. This should have been "overlooks."

Should be *-clean, not *-free (page 479)

The third paragraph on this page talks about packages passing the package checkers as being lintian-free and linda-free. The correct terms are lintian-clean and linda-clean.

Confusing year: rex was released in December 1996 (page 32)

The fourth paragraph of the subsection entitled "The early days" in "A history lesson" states that Debian rex was released in December "of the same year". This refers to the release of buzz in June 1996, not the release of the Debian botch in December 1995. rex was released in December 1996.

Introductory chapter available for download
Quote by Piet Vroon
... one of the most concise and resourceful computer books I've seen. This is not a Debian reference, I would call this the Debian Bible.
Document about the workings of the security team (page 359)
Steve Kemp has documented the workings of the Debian security team online for public consumption.
Quote by Jörg Fendrich
Quote by Andreas John (CTO, net-lab GmbH)
New dpkg source package format (page 437)

Chapter 9.2.1 discusses the structure of Debian source packages. Following the release of Debian sarge, a new package format will replace the current one. The new format, dubbed "Wig and Pen" (version 2.0) is fully compatible with the current format (1.0), but adds the ability for multiple tarballs to encapsulate different aspects of the package (feature branches). In particular, it is now possible to distribute the Debian-specific files in a separate tarball rather than encapsulating them in a patch.

More information about the new source package format may be found on the website.

The #debian IRC channel is a users' forum, not a developer forum (page 52)
Linuxtag 2005   Kongresszentrum Karlsruhe, Germany, 2005-06-22 09:00:00 - 2005-06-25 18:00:00
Europe's largest event about Free Software, Linux and Open Source.
Elections had been completed by the time of release (page 33)
Debian Book release party   LinuxTag 2005, Karlsruhe, Germany; Open Source Press booth (B107), 2005-06-23 17:00:00 - 2005-06-23 18:00:00
Come celebrate the release of Debian GNU/Linux 3.1 "sarge" and the Debian Book with us!
Debconf 5 in Helsinki   Espoo, Finland, 2005-07-09 09:00:00 - 2005-07-17 18:00:00
The annual Debian developer's conference, this year hosted near Helsinki.
Debian Book to be in stores after 27 June 2005
The wait has been long; the book is going to be in stores Real Soon Now.
Debian Book available at LinuxTag 2005
"The Debian System" will be on sale at the LinuxTag 2005.
dwarfs-debian-guide package out of date and removed (page 519)
Debian Bible: Jaldhar H. Vyas is third author (page 520)

Jaldhar H. Vyas is the third author of Debian GNU/Linux 3.1 Bible. He joined the other two towards the end of their book release cycle.

Debian Bible: official title has 3.1, not 3.X (page 520)

The official title of the book written by David B. Harris, Benjamin Mako Hill and Jaldhar H. Vyas is Debian GNU/Linux 3.1 Bible, not 3.X as I wrote in my book. At the time of writing, the authors had not settled for a title.

Missing tilde in survey URL (page 519)
Wrong section numbering (page 307)

Kristin Shoemaker, I highly recommend The Debian System to anyone interested in how free/open source software works. I especially recommend it to intermediate Linux users, whether or not they're running a Debian-based system (though I imagine they'll want to try one by the time they're done with the book).


Powered by Plone

This site conforms to the following standards: