Using debconf

As discussed in chapter 5.8, debconf is a caching system that supports user interactions in a programmatic and flexible way. debconf-enabled packages query the administrator for desired settings in a freely configurable and programmable way before the package is installed so that the configuration phase can complete without bothering the installing user. To export this functionality, a package must provide (at least) three files which work hand in hand templates, config, and postinst. Chapter...

User and group management

User management on a Debian system is handled by a family of four tools, ad-duser, addgroup, deluser, delgroup, which are commonly referred to as the ad-duser suite, and installed with adduser package. These cover the most important tasks, including group membership management. All other operations, such as the modification of account data or the setting of passwords, are handled by the appropriate standard Unix tools (e.g. chfn, chsh, usermod, or passwd). As with most Debian approaches, you...

FAI Fully automatic installations

FAI stands for Fully Automatic Installation24 and provides a scaleable solution for installation management of any number of clients. Unlike alternative solutions, such as systemimager or replicator, FAI can handle different types of hardware and install systems for different purposes all with a single, central configuration repository. A manual is linked from the FAI homepage25, and user-contributed installation reports and documentation26 provide valuable additional resources. FAI uses NFS to...

The Debian philosophy

During the development cycle that followed Ian Murdock's initial formalisation of the goals, a number of priorities began to crystalise and form the basis for the philosophy by which the project abides. In its foundation documents - the Social Contract (see appendix E) as well as the DFSG (see appendix F) - the project formalises major parts of its philosophy, including the priorities governing the development of the Debian GNU Linux operating system. At first encounter, many of the priorities...

Caching APT archives

APT caches its downloads for the local machine. However, if you operate multiple machines, this cache is useless as you may have to download a package multiple times, once for each machine being upgraded. Depending on the upstream link, this may be time-consuming, and system administrators generally do not like to wait for progress bars to complete. While it is possible to share APT's cache among a bunch of machines, only one machine may access it at any time. The locking required to enforce...

Debianisp

This list unites people running Debian in an ISP environment. As ISPs usually battle with advanced issues, the level of this list is generally kept high. 24http www.albion.com netiquette 25 Any discussions about legal matters, such as licences, are held here. Discussions can grow rather fierce at times, such is the law Anything related to documentation in Debian is on topic here. debian-kernel This list is exclusive to discussions about the kernels used with Debian (not just Linux), patches,...

Connectivity via PPP

In addition to kernel-driven network interfaces (most of which are Ethernet these days), PPP is a common way to access computer networks. PPP itself is actually a transfer protocol between two peers with more features than the Ethernet protocol, allowing for authentication and the negotiation of IP addresses for the calling client. PPP is used in standard InternetService Provider (ISP) modemdial-in scenarios, as well as for DSL (PPPoE or PPP-over-Asynchronous-Transfer-Mode (PPPoA)) connections...

Bootstrapping a new system

When faced with a machine whose hardware does not support regular installation methods - perhaps because the hardware cannot boot off any medium other than the local hard disk - you will need to use an existing system to bootstrap an installation onto the hard disk to be used in the machine. You can bootstrap a new system in two ways, which I will refer to as clean and the dirty way. The dirty approach is dirty because you need to use a screwdriver to move hard disks between machines The clean...

The Filesystem Hierarchy Standard FHS

With 15 000 binary packages in the Debian pool at the time of writing, you may wonder how many conflicts had to be resolved between two packages each trying to install a file of the same name. Well, the answer is very few, which may be surprising were it not again for the policy to confine packages to use very specific locations for their files, rather than installing all over the place. Section 9.1.1 of the Debian policy specifies that all installed files and directories must comply with the...

The debhelper suite Overview

Unix is the operating system of scripts and automation. It is therefore unsurprising that most of the steps and functionality needed to create a binary Debian package have been further hidden behind more abstract and simpler interfaces. The most prominent of these interfaces is debhelper, which provides a plethora of small scripts to handle most aspects of packaging in an intuitive and consistent way. The tools are intended for use in the binary-* targets of debian rules. Most of the debhelper...

Anatomy of a personal repository

There is no stringent requirement for the directory layout of an APT repository. APT only needs to find the Packages and or Sources file, which contain the relative paths to the actual data files. APT does not mind whether the layout uses a pool structure like the official Debian mirrors, or all files are in the same directory. For gruezi, we set up a apt directory and put the gruezi package into the directory. This layout scales well to several dozens of packages. For our purposes, we will...

Debsigs and dpkgsig

While APT 0.6 uses index files to verify package integrity and is thus of little use when the indices are not available, two other tools use signatures attached to the DEB file for the integrity verification dpkg-sig and debsigs. debsigs in package debsigs was written shortly after the release of potato. In the mean time, another programme, dpkg-sig in package dpkg-sig was authored to deal with its shortcomings17. A package signature is similar to the digital signatures as used in e.g. emails,...