Contents
|
|
|
|
Preface
|
|
Organization of the Book
|
|
Conventions used in This Book Book
|
|
The Open Publication License
|
|
Acknowledgments
|
| |
Part 1
|
Files and File Systems
|
1
|
Linux Files and File Systems
|
1.1
|
Understanding File Types
|
1.2
|
Determining the File Type
|
1.3
|
Creating Files
|
1.4
|
Understanding File Systems
|
1.5
|
Exploring the File System Hierarchy
|
2
|
SuSE and the File System Hierarchy Standard (FHS)
|
2.1
|
The Root Directory
|
2.2
|
/usr: Secondary hierarchy
|
2.3
|
/var: Variable data
|
3
|
Collecting System Information
|
3.1
|
Process-Specific Subdirectories
|
3.2
|
Kernel data
|
3.3
|
IDE devices in /proc/ide
|
3.4
|
Networking info in /proc/net
|
3.5
|
SCSI info
|
3.6
|
Parallel port info in /proc/parport
|
3.7
|
TTY info in /proc/tty
|
4
|
Modifying System Parameters
|
4.1
|
/proc/sys/fs - File system data
|
4.2
|
/proc/sys/fs/binfmt_misc - Miscellaneous binary formats
|
4.3
|
/proc/sys/kernel - general kernel parameters
|
4.4
|
/proc/sys/vm - The virtual memory subsystem
|
4.5
|
/proc/sys/dev - Device specific parameters
|
4.6
|
/proc/sys/sunrpc - Remote procedure calls
|
4.7
|
/proc/sys/net - Networking stuff
|
4.8
|
/proc/sys/net/ipv4 - IPV4 settings
|
4.9
|
Appletalk
|
4.10
|
IPX
|
| |
Part 2
|
The Boot Process
|
5
|
LILO: From "power on" to "Loading linux..."
|
5.1
|
The Four Steps of the Booting Process
|
5.2
|
Introducing LILO
|
5.3
|
Installing LILO
|
5.4
|
Lilo loads Linux
|
5.5
|
Linux: The kernel takes the stage
|
6
|
The init process: the kernel needs company
|
6.1
|
Runlevels
|
6.2
|
System V init
|
6.3
|
Shutting down the system
|
7
|
Customizing the boot process
|
7.1
|
Writing rc-scripts
|
7.2
|
Adding an rc-script to a runlevel
|
7.3
|
Creating customized runlevels
|
| |
Part 3
|
System Setup
|
8
|
Automating tasks: the system never sleeps
|
8.1
|
Using cron to automate tasks
|
8.2
|
Standard maintenance tasks set up by SuSE
|
8.3
|
Adding customized tasks
|
8.4
|
Executing a job once at a specified time
|
9
|
TCP/IP networks: some theory
|
9.1
|
Managing networks: subnets and routing
|
9.2
|
Routing
|
10
|
SuSE's scheme of network configuration
|
10.1
|
Interface configuration
|
10.2
|
Virtual interfaces
|
10.3
|
The dummy interface
|
10.4
|
Setting up static routing
|
10.5
|
ICMP redirects
|
11
|
inetd: the Internet super server
|
11.1
|
What does inetd do?
|
11.2
|
Configuring inetd
|
12
|
Basic network services
|
12.1
|
Services provided by inetd
|
12.2
|
Standard Services
|
13
|
SSH: Secure Shell
|
14
|
DNS: Domain Name Service
|
14.1
|
Configuring the Domain Name Service
|
14.2
|
Debugging the Domain Name Service
|
15
|
NIS: Network Information Service
|
15.1
|
Setting up the Network Information Service
|
15.2
|
Setting up an NIS client
|
15.3
|
Making sure it works
|
16
|
FTP: File Transfer Protocol
|
16.1
|
Setting up wu.ftpd
|
16.2
|
Anonymous FTP
|
17
|
HTTP: Hyper Text Transfer Protocol
|
17.1
|
Walking through the document tree
|
17.2
|
Permitting user home pages
|
17.3
|
More information
|
18
|
SMTP - Simple Mail Transport Protocol
|
18.1
|
SuSE's standard configuration
|
18.2
|
Features of the SuSE setup
|
18.3
|
Using m4 macros to set up sendmail
|
19
|
Samba - The Server Message Block Protocol (SMB)
|
20
|
NFS - Network File System
|
20.1
|
The user-space daemon
|
20.2
|
The kernel NFS daemon-new and improved
|
20.3
|
Controlling the NFS filesystems
|
20.4
|
Monitoring NFS
|
21
|
DHCP - Dynamic Host Configuration Protocol
|
21.1
|
Preparations for configuring dhcpd
|
21.2
|
Configuring the DHCP server
|
21.3
|
A generic example
|
21.4
|
More info on DHCP configuration
|
22
|
Configuring Dial-in networking
|
22.1
|
Hooking up modems
|
22.2
|
Mgetty configuration
|
22.3
|
Configuring PPP dial-in
|
| |
Part 4
|
System Security
|
23
|
General Thoughts on Security
|
24
|
Host Security
|
24.1
|
Security Policies
|
24.2
|
Administrative Tasks to Ensure Host Security
|
24.3
|
Tripwire
|
25
|
PAM - Pluggable Authentication Modules
|
25.1
|
The PAM configuration scheme
|
25.2
|
The configuration file syntax
|
25.3
|
PAM modules
|
25.4
|
Some examples
|
26
|
Network Security
|
26.1
|
Network Setup
|
26.2
|
The TCP Wrapper
|
27
|
The Secure Shell Client
|
27.1
|
Cryptography in ssh
|
27.2
|
Creating the public and private keys
|
27.3
|
Copying the public key to the server machine
|
27.4
|
Using ssh
|
27.5
|
Ssh-agent as Repository for the Passphrase
|
28
|
Packet Filtering with IP-Chains
|
29
|
The SuSE packet filter
|
29.1
|
Expectations from the packet filter
|
29.2
|
The firewall script
|
29.3
|
Configuration of the Packet Filter
|
| |
Part 5
|
Customized Installations
|
30
|
Setting up an Installation Server
|
30.1
|
Copying the five CDs into a single tree
|
30.2
|
Using the installation server via FTP
|
30.3
|
Using the installation server via NFS
|
30.4
|
Installing from Scratch Using the Installation Server
|
31
|
Diskless Clients
|
31.1
|
A guide for diskless clients
|
31.2
|
Setting up the server machine
|
31.3
|
Creating the Boot Floppy for Clients
|
31.4
|
Customizing the Setup for Diskless Operation
|
31.5
|
Booting the Client
|
31.6
|
Extending the Server to Multiple Clients
|
32
|
Setting up an X-Terminal
|
| |
Part 6
|
Package Development
|
33
|
RPM - The Red Hat Package Manager
|
33.1
|
Installing Packages
|
33.2
|
Upgrading Packages
|
33.3
|
Querying Package Information
|
33.4
|
Verification of installed packages
|
33.5
|
Removing Packages
|
34
|
Compiling SuSE Source Packages
|
34.1
|
Installing SRPMs
|
34.2
|
The RPM build tree
|
34.3
|
Building the Package
|
35
|
Creating Your Own RPM Packages
|
35.1
|
Roadmap
|
35.2
|
Preparing the Source Code
|
35.3
|
Integration into the SuSE Setup Scheme
|
35.4
|
Creating the Patch-File
|
35.5
|
Creating the Spec-File
|
35.6
|
Build the RPM and SRPM packages
|
| |
Appendix
|
Appendix
|
A
|
Linux Allocated Devices
|
B
|
GNU General Public License
|
C
|
GNU LIBRARY GENERAL PUBLIC LICENSE
|
D
|
Open Publication License
|