book main | contents | reviews
|
1 Introduction 1.1 About this book 1.2 Target audience 1.2.1 The Linux administrator 1.2.2 The Unix administrator 1.2.3 The Debian user 1.2.4 The Linux apprentice 1.3 How to use this book 1.4 Final notes 1.4.1 Conventions 1.4.2 Keeping up to date 1.4.3 An urgent plea for feedback 1.5 About the author 1.6 Acknowledgements 2 The Debian project in a nutshell 2.1 A history lesson 2.2 The Debian philosophy 2.2.1 Debian and its users 2.2.2 Free beer and free speech 2.2.3 Debian and the market 2.3 Licensing issues 2.4 The Debian community 2.4.1 Organization of the project 2.4.2 Social aspects of the community 2.4.3 Social aspects of the group of developers 2.5 Helping the Debian project 2.5.1 Contributing to the project 2.5.2 Becoming a Debian developer 2.6 The Debian swirl 3 Installing Debian the right way 3.1 The Debian installer 3.1.1 Features of the new installer 3.1.2 System requirements 3.2 The minimalistic approach to installation 3.2.1 Installing the base system 3.2.2 Configuring the base system 3.3 Configuring the X server 3.3.1 An overview of X in Debian 3.3.2 Integrating automatic hardware detection 3.3.3 Dealing with unsupported hardware 3.3.4 Customizing the X session 4 Debian releases and archives 4.1 Structure of the Debian archive 4.1.1 The package pool 4.1.2 Package indices 4.1.3 The Release files 4.2 The package upload 4.3 The official releases 4.3.1 The unstable release 4.3.2 The testing release 4.3.3 The stable release 4.4 Unofficial APT archives 4.4.1 The experimental archive 4.4.2 The volatile archive 4.4.3 The amd64 archive 4.4.4 The *proposedupdates archives 4.4.5 The backports.org archive 4.4.6 The aptget.org directory 4.4.7 Christian Marillat's multimedia archive 4.5 Architecture support 4.5.1 80386 – the processor 4.5.2 The amd64 architecture 4.5.3 Multiarch 5 The Debian package management system 5.1 Requirements 5.2 Introducing Debian packages 5.2.1 Package categories 5.2.2 Package priorities 5.2.3 Anatomy of binary packages 5.2.4 The control files 5.3 Dealing with packages: dpkg 5.3.1 Handling binary packages 5.3.2 Installing packages 5.3.3 Configuration file handling 5.3.4 Interacting with the package database 5.3.5 Deinstalling packages 5.3.6 Overriding dpkg's sanity and policy checks 5.3.7 Dealing with errors in packages 5.3.8 dpkg configuration 5.3.9 dselect 5.4 Managing packages: APT 5.4.1 Specifying repositories 5.4.2 APT configuration 5.4.3 Installing packages 5.4.4 Searching the APT database 5.4.5 Inquiring about package dependencies 5.4.6 Deinstalling and purging packages 5.4.7 Seamless upgrades 5.4.8 Enacting requests with APT 5.4.9 APT housekeeping 5.4.10 Resolving problems with APT 5.4.11 aptitude 5.4.12 synaptic 5.5 Debian tasks 5.6 Package management compared 5.7 Power from within: the Debian policy 5.7.1 The sacred configuration files 5.7.2 Mediating between packages 5.7.3 Package relations 5.7.4 The Filesystem Hierarchy Standard 5.7.5 Version numbers 5.7.6 Upgrading packages 5.8 debconf: configuration of Debian packages 5.8.1 An overview of debconf 5.8.2 Priority levels 5.8.3 debconf frontends 5.8.4 Reconfiguring packages 5.8.5 debconf in action 5.8.6 Using a remote database backend 5.8.7 Problems and shortcomings 5.9 Modifying packages 5.9.1 Recompiling packages 5.9.2 Repacking packages 5.10 Integrating nonDebian software 5.10.1 alien 5.10.2 checkinstall 5.10.3 equivs 5.11 Miscellaneous package tools 5.11.1 debsums 5.11.2 aptlistchanges 5.11.3 aptlistbugs 5.11.4 cronapt 5.11.5 deborphan 5.11.6 Keeping a clean system: debfoster 5.11.7 Caching APT archives 5.11.8 Mirroring the Debian archive: debmirror 5.11.9 Enhanced queries of the package database 5.11.10 Package popularity contest 5.11.11 Purposely omitted tools 5.12 Debian kernels 5.12.1 Kernel support 5.12.2 Anatomy of the kernel packages 5.12.3 Sources, headers, and documentation 5.12.4 Kernel modules and patches 6 Debian system administration 6.1 Fundamentals 6.1.1 Using directories instead of configuration files 6.1.2 Overriding permissions 6.1.3 Overriding files 6.1.4 The alternatives system 6.1.5 The Debian menu system 6.2 Users and authentication 6.2.1 System users and groups 6.2.2 User and group management 6.2.3 PAM . Pluggable Authentication Modules 6.3 System initialization and automatic processes 6.3.1 The system initialization process 6.3.2 Regular maintenance processes 6.3.3 Backups 6.4 Device management 6.4.1 discover and hotplug 6.4.2 kmod, the kernel autoloader 6.4.3 Loading modules during startup 6.5 Configuring kernel parameters 6.6 Log file management 6.6.1 Monitoring logs with logcheck 6.7 Network configuration management 6.7.1 Network configuration with ifupdown 6.7.2 Using DHCP to obtain a network address 6.7.3 Managing /etc/resolv.conf 6.7.4 Connectivity via PPP 6.7.5 Integrating PCMCIA network cards 6.7.6 Integrating wireless network interfaces 6.7.7 Miscellaneous network options 6.8 Administering inetd, the Internet superserver 6.9 Integrated management tools 6.9.1 wajig 6.9.2 feta 6.10 System administration resources 7 Security of the Debian system 7.1 Handling security problems 7.2 Security updates 7.3 Security out of the box 7.4 Package quality 7.5 Package integrity 7.5.1 Manual verification of package integrity 7.5.2 Secure APT 7.5.3 debsigs and dpkgsig 8 Advanced concepts 8.1 Building kernel packages with makekpkg 8.1.1 Using initial ramdisks 8.1.2 Patching the kernel 8.1.3 Compiling modules 8.1.4 Crosscompiling for other architectures 8.1.5 Symlink farming 8.1.6 Configuring makekpkg 8.2 Mixing releases 8.2.1 Pinning releases with APT 8.2.2 Selecting target releases 8.2.3 Extending APT's internal cache 8.2.4 Mixing releases and security updates 8.2.5 aptitude and multiple releases 8.3 Alternative approaches to installing a Debian system 8.3.1 Bootstrapping an installation 8.3.2 Booting the installation from the network (PXE) 8.3.3 Customizing the installer 8.3.4 Preseeding the installer 8.3.5 FAI: Fully automatic installations 9 Creating Debian packages 9.1 Manual packaging 9.2 Debianising with the package maintainer tools 9.2.1 A closer look at source packages 9.2.2 Investigating the upstream source tree 9.2.3 dhfimake 9.2.4 Building source packages 9.2.5 Jumpstarting with dhfimake 9.2.6 Writing debian/rules 9.2.7 Modifying the debian/* files 9.2.8 Creating the DEB file 9.2.9 Cleaning the source tree 9.2.10 Splitting and updating a package 9.2.11 The debhelper suite 9.2.12 The changes file 9.2.13 Verifying new packages 9.2.14 Signing the package files 9.2.15 Checking packages 9.2.16 Automating the package build 9.3 Local APT repositories 9.3.1 Anatomy of a personal repository 9.3.2 Upload tools 9.3.3 Automated repository management 9.4 Advanced package concepts 9.4.1 Package hook scripts 9.4.2 Using debconf 9.4.3 Library packages 9.5 Alternative build tools 9.5.1 cdbs 9.5.2 yada 9.6 Automating clean builds with pbuilder 9.6.1 Setting up a base tarball 9.6.2 Building packages with pbuilder 9.6.3 Using pbuilder to set up test systems 9.6.4 Mounting host directories inside the chroot 9.6.5 Modifying the tarball 10 Documentation and resources 10.1 Local documentation 10.2 Online resources 10.2.1 Official documentation and manuals 10.2.2 Semiofficial resources 10.2.3 Unofficial resources 10.3 Printed resources 10.4 Discussion forums 10.4.1 Mailing lists 10.4.2 Web forums 10.4.3 IRC . Internet Relay Chat 10.5 Contacting people 10.6 The bug tracking system 10.6.1 Querying the BTS 10.6.2 Querying bugs from the command line 10.6.3 Bug severities 10.6.4 Bug tags 10.6.5 Reporting bugs 10.6.6 Mail traffic following a bug report 10.6.7 Interacting with the BTS 10.6.8 Bugs against pseudopackages 10.6.9 Subscribing to a package's bug reports 10.6.10 Fixing bugs Appendix A Debian flavours and other Debianbased operating systems 559 A.1 CDDs . Custom Debian Distributions A.2 Debian derivatives A.2.1 Knoppix A.2.2 Ubuntu A.2.3 Gnoppix A.2.4 MEPIS A.2.5 MNIS A.2.6 Quantian A.2.7 Skolelinux A.2.8 Adamantix A.2.9 SELinux B When is Debian the right choice? B.1 You should run Debian if B.2 You should probably choose something else, if C Miscellaneous C.1 Important GPG keys related to Debian C.1.1 Official Debian archive signing keys C.1.2 Other relevant signing keys C.2 Setting up the filesystems C.2.1 A sensible partition table C.2.2 Supported filesystems C.3 Extra packages C.4 Configuring a local packet filter C.5 Dualbooting with other operating systems C.5.1 Chainloading other bootloaders C.5.2 Dealing with Windows peculiarities D The Debian Linux Manifesto E Debian Social Contract E.1 The current Social Contract E.2 The future Social Contract F The Debian Free Software Guidelines |
book main | contents | reviews
Copyright 2008 by No Starch Press