| |
| |
Introduction | |
| |
| |
| |
The Basics | |
| |
| |
| |
Introduction to Debian Linux | |
| |
| |
Free Software | |
| |
| |
What Is Linux? | |
| |
| |
Linux Distributions | |
| |
| |
Why Linux Is Better | |
| |
| |
Why Choose Debian? | |
| |
| |
Who Makes Debian? | |
| |
| |
Summary | |
| |
| |
| |
Shells | |
| |
| |
Bash: The Bourne-Again Shell | |
| |
| |
tcsh: The Tenex C Shell | |
| |
| |
Summary | |
| |
| |
| |
The X Window System Environment | |
| |
| |
Basic X Concepts | |
| |
| |
Installing and Configuring X | |
| |
| |
Starting X | |
| |
| |
Window Managers | |
| |
| |
Selecting a Window Manager | |
| |
| |
Desktop Managers | |
| |
| |
Troubleshooting X | |
| |
| |
Summary | |
| |
| |
| |
User Applications | |
| |
| |
Office Applications | |
| |
| |
Network Applications | |
| |
| |
Multimedia Software | |
| |
| |
Summary | |
| |
| |
| |
Your Virtual Toolbelt | |
| |
| |
Online Documentation | |
| |
| |
Managing Files | |
| |
| |
Examining Files | |
| |
| |
Manipulating Data | |
| |
| |
Handling Archives and Compression | |
| |
| |
Informational Commands | |
| |
| |
Disk Space | |
| |
| |
Process Management | |
| |
| |
Communication with Other Users | |
| |
| |
Managing the System | |
| |
| |
Miscellaneous Commands | |
| |
| |
Summary | |
| |
| |
| |
Advanced Text Editing | |
| |
| |
Understanding vi Components | |
| |
| |
vi Commands for Different Inputs | |
| |
| |
emacs | |
| |
| |
Summary | |
| |
| |
| |
Typesetting | |
| |
| |
Typesetting Versus WYSIWYG Editors | |
| |
| |
DocBook and XML | |
| |
| |
TEX and Friends | |
| |
| |
groff | |
| |
| |
Summary | |
| |
| |
| |
Conventional Means, Extraordinary Ends: Powerful Scripting Tools | |
| |
| |
Scripting Basics | |
| |
| |
Scripting with the bash Shell | |
| |
| |
Perl: Scripting on Steroids | |
| |
| |
Summary | |
| |
| |
| |
Regular Expressions | |
| |
| |
Regular Expression Basics | |
| |
| |
Ideas of Regular Expressions | |
| |
| |
Matching a Set of Characters | |
| |
| |
Logic | |
| |
| |
Tools That Use Regular Expressions | |
| |
| |
Summary | |
| |
| |
| |
Debian System Administration | |
| |
| |
| |
Software Management | |
| |
| |
Debian's Package Management System | |
| |
| |
dselect--A Text-Mode UI for Package Management | |
| |
| |
Apt--An Intelligent Command-Line Package Manager | |
| |
| |
dpkg--The Core of Debian | |
| |
| |
Summary | |
| |
| |
| |
Administration Essentials | |
| |
| |
User Management | |
| |
| |
Programs and Processes | |
| |
| |
The Login Process | |
| |
| |
Printing | |
| |
| |
Scheduling Tasks | |
| |
| |
Disks and Filesystems | |
| |
| |
The Buffer Cache | |
| |
| |
Summary | |
| |
| |
| |
Customizing the Bootup Procedure | |
| |
| |
The Linux Kernel | |
| |
| |
Building and Installing the Kernel | |
| |
| |
lilo | |
| |
| |
init and Software Startup | |
| |
| |
Additional Reading | |
| |
| |
Summary | |
| |
| |
| |
System Logs and Accounting | |
| |
| |
The System Logs | |
| |
| |
Accounting | |
| |
| |
Automated Monitoring Tools | |
| |
| |
Summary | |
| |
| |
| |
Disaster Recovery | |
| |
| |
Backup as the First Line of Defense | |
| |
| |
Recovery Disks | |
| |
| |
Documenting the System | |
| |
| |
Avoiding Problems | |
| |
| |
Assessing the Disaster | |
| |
| |
Booting the System | |
| |
| |
Fixing Disk Problems | |
| |
| |
Restoring from Backup | |
| |
| |
Tips on Solving Problems | |
| |
| |
Summary | |
| |
| |
| |
Advanced System Administration | |
| |
| |
Understanding (and Hacking) the Boot Process | |
| |
| |
Scheduling Jobs with cron | |
| |
| |
Switching User Identities | |
| |
| |
Quotas and Accounting | |
| |
| |
Automounting | |
| |
| |
Places to Learn More | |
| |
| |
Summary | |
| |
| |
| |
TCP/IP Networking Essentials | |
| |
| |
TCP/IP Basics | |
| |
| |
Configuring the Network | |
| |
| |
Network Daemons | |
| |
| |
Setting Up a PPP Dial-Up Server | |
| |
| |
Summary | |
| |
| |
| |
Information Servers | |
| |
| |
inetd and TCP Wrappers | |
| |
| |
Email | |
| |
| |
FTP | |
| |
| |
Telnet | |
| |
| |
ssh | |
| |
| |
Web Servers | |
| |
| |
DNS and Bind | |
| |
| |
Usenet | |
| |
| |
Summary | |
| |
| |
| |
Interacting with Microsoft Networks Using Samba | |
| |
| |
Installing Samba | |
| |
| |
Getting a Simple Samba Setup Running | |
| |
| |
Configuring Samba: The /etc/smb.conf file | |
| |
| |
Sharing Files and Print Services | |
| |
| |
Optimizing Samba Performance | |
| |
| |
Testing Your Configuration | |
| |
| |
Running the Samba Server | |
| |
| |
Accessing Shares | |
| |
| |
Common smb.conf Configuration Options | |
| |
| |
Samba Documentation Sources | |
| |
| |
Summary | |
| |
| |
| |
Tools for Advanced Network Administration | |
| |
| |
NFS--The Network File System | |
| |
| |
NIS--The Network Information System | |
| |
| |
TCP/IP Troubleshooting Tools | |
| |
| |
Summary | |
| |
| |
| |
Security Issues | |
| |
| |
| |
Conceptual Overview of Security Issues | |
| |
| |
Security Concepts | |
| |
| |
Types of Online Attacks | |
| |
| |
Monitoring and Intrusion Detection | |
| |
| |
Summary | |
| |
| |
| |
Principles of Security | |
| |
| |
Common Security Concerns | |
| |
| |
Common Sense Precautions | |
| |
| |
Securing from Remote Access | |
| |
| |
Securing from a Local Network | |
| |
| |
Securing from Local Users | |
| |
| |
Securing from Denial-of-Service Attacks | |
| |
| |
Securing from Physical Access | |
| |
| |
Specialized Security Tools | |
| |
| |
Recovering from a Compromised System | |
| |
| |
Other Security Resources | |
| |
| |
Summary | |
| |
| |
| |
Firewalls and Proxies | |
| |
| |
Firewalls and the Linux Kernel | |
| |
| |
Configuring a Linux Firewall | |
| |
| |
Configuring Proxy Servers | |
| |
| |
Configuring the Local Network | |
| |
| |
Running Servers Behind a Firewall | |
| |
| |
Online Documentation | |
| |
| |
Summary | |
| |
| |
| |
Encryption | |
| |
| |
What Is Encryption? | |
| |
| |
Uses for Encryption | |
| |
| |
Legal Issues and Export Controls | |
| |
| |
Tools for Encrypted Communication | |
| |
| |
Summary | |
| |
| |
| |
Development Environment | |
| |
| |
| |
C/C++ Development Environment | |
| |
| |
The C/C++ Environment | |
| |
| |
Compiling and Debugging C and C++ | |
| |
| |
Summary | |
| |
| |
| |
Java Programming | |
| |
| |
What Is Java? | |
| |
| |
What Makes Java Special? | |
| |
| |
Getting and Installing Java | |
| |
| |
Programming in Java | |
| |
| |
Summary | |
| |
| |
| |
tc1 and tk Programming | |
| |
| |
tc1 Basics | |
| |
| |
The tc1 Language | |
| |
| |
The tk Toolkit | |
| |
| |
A tc1/tk Widget Programming Example | |
| |
| |
A tc1/tk Interface to xsetroot | |
| |
| |
Summary | |
| |
| |
| |
Programming in Python | |
| |
| |
Getting Ready to Run Python | |
| |
| |
Python Command-Line Interpreter | |
| |
| |
Python Programs | |
| |
| |
Control Statements | |
| |
| |
Lists and the range() Function | |
| |
| |
Dictionaries | |
| |
| |
Console I/O | |
| |
| |
File I/O | |
| |
| |
Functions and Modules | |
| |
| |
Strings and Regular Expressions | |
| |
| |
Classes | |
| |
| |
Additional Python Capabilities | |
| |
| |
Summary | |
| |
| |
| |
Programming with Scheme and Expect | |
| |
| |
Installing MzScheme | |
| |
| |
Running Scheme | |
| |
| |
Scripting Scheme | |
| |
| |
Using Command-Line Arguments | |
| |
| |
Available Data Types | |
| |
| |
Implementing Conditional Statements | |
| |
| |
File Input and Output | |
| |
| |
Echo Example | |
| |
| |
Expect | |
| |
| |
Installing Expect | |
| |
| |
Command-Line Switches | |
| |
| |
Summary | |
| |
| |
| |
Linux Applications | |
| |
| |
| |
Tying Them All Together in Projects: make and autoconf | |
| |
| |
Making Things with make | |
| |
| |
The Evolving Makefile | |
| |
| |
Using make's Internal Functions | |
| |
| |
Generating Dependencies Automatically | |
| |
| |
Using make with Other Projects | |
| |
| |
More Documentation for make | |
| |
| |
Using autoconf | |
| |
| |
Summary | |
| |
| |
| |
Distributed Project Management | |
| |
| |
CVS | |
| |
| |
Fixing Bugs in Released Versions | |
| |
| |
Bugzilla | |
| |
| |
The Debian Bug Tracking System | |
| |
| |
Jitterbug | |
| |
| |
Doozer | |
| |
| |
Summary | |
| |
| |
| |
Appendixes | |
| |
| |
| |
Installing Debian Linux | |
| |
| |
Preparing Your Computer for Linux | |
| |
| |
Disk Partitioning | |
| |
| |
Booting Linux | |
| |
| |
Installing the System | |
| |
| |
Using dselect to Install Applications | |
| |
| |
Booting Multiple Operating Systems | |
| |
| |
Troubleshooting | |
| |
| |
Online Resources | |
| |
| |
Summary | |
| |
| |
| |
Online References | |
| |
| |
Web Sites | |
| |
| |
Newsgroups | |
| |
| |
Email Lists | |
| |
| |
| |
DFSG-Compliant Licenses | |
| |
| |
The GNU General Public License (GPL) | |
| |
| |
The GNU Lesser General Public License (LGPL) | |
| |
| |
The BSD License | |
| |
| |
| |
Open-Source Licenses | |
| |
| |
What Exactly Is Open-Source Software? | |
| |
| |
Important Issues: Interpreting Software Licenses | |
| |
| |
GNU GPL | |
| |
| |
GNU LGPL | |
| |
| |
BSD | |
| |
| |
Artistic | |
| |
| |
An Explosion of Commercial Open-Source Licenses | |
| |
| |
Other Open Software Licenses | |
| |
| |
References and Additional Reading | |
| |
| |
| |
Kernel Configuration Options | |
| |
| |
Code Maturity Level Options | |
| |
| |
Processor Type and Features | |
| |
| |
Loadable Module Support | |
| |
| |
General Setup | |
| |
| |
Plug and Play Support | |
| |
| |
Block Devices | |
| |
| |
Networking Options | |
| |
| |
QoS and/or Fair Queuing | |
| |
| |
SCSI Support | |
| |
| |
Network Device Support | |
| |
| |
Amateur Radio and Wireless Support | |
| |
| |
IrDA Subsystem and Infrared Port Device Drivers | |
| |
| |
ISDN Subsystem | |
| |
| |
Older CD-ROM Drivers (Not SCSI or IDE) | |
| |
| |
Character Devices | |
| |
| |
Video for Linux | |
| |
| |
Joystick Support | |
| |
| |
Ftape, the Floppy Tape Device Driver | |
| |
| |
Filesystems | |
| |
| |
Partition Types | |
| |
| |
Native Language Support | |
| |
| |
Console Drivers | |
| |
| |
Sound | |
| |
| |
Additional Low-Level Drivers | |
| |
| |
Kernel Hacking | |
| |
| |
Load/Save Configuration | |
| |
| |
Index | |