| |
| |
Preface | |
| |
| |
List of Tables | |
| |
| |
| |
Getting Started | |
| |
| |
| |
The Operating System | |
| |
| |
| |
The UNIX Operating System | |
| |
| |
| |
Knowing Your Machine | |
| |
| |
| |
Knowing Your Keyboard | |
| |
| |
| |
The System Administrator | |
| |
| |
| |
Logging In and Out | |
| |
| |
| |
Trying Out Some Commands | |
| |
| |
| |
Two Important Observations | |
| |
| |
| |
When Things Go Wrong | |
| |
| |
| |
Yet Another Session: Working with Files and Directories | |
| |
| |
| |
How It All Clicked | |
| |
| |
| |
Linux and GNU | |
| |
| |
| |
Inside UNIX | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
Understanding the UNIX Command | |
| |
| |
| |
General Features of a Command | |
| |
| |
| |
The PATH: Locating Commands | |
| |
| |
| |
Internal and External Commands | |
| |
| |
| |
Command Structure | |
| |
| |
| |
Flexibility of Command Usage | |
| |
| |
| |
man: On-Line Help | |
| |
| |
| |
The man Documentation | |
| |
| |
| |
info: The Texinfo Documentation | |
| |
| |
| |
whatis and apropos: Which Command Will Do the Job? | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
General-Purpose Utilities | |
| |
| |
| |
passwd: Change Your Password | |
| |
| |
| |
who and w: Know the Users | |
| |
| |
| |
tty: Know Your Terminal | |
| |
| |
| |
lock: Lock Your Terminal | |
| |
| |
| |
stty: Set Terminal Characteristics | |
| |
| |
| |
script: Record Your Session | |
| |
| |
| |
clear and tput: Clear Your Screen | |
| |
| |
| |
uname: Know Your Machine's Name | |
| |
| |
| |
date: Display the System Date | |
| |
| |
| |
cal: The Calendar | |
| |
| |
| |
calendar: A Useful Reminder Mechanism | |
| |
| |
| |
bc: The Calculator | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
The vi/vim Editor | |
| |
| |
| |
vi Preliminaries | |
| |
| |
| |
Quitting vi--The Last Line Mode | |
| |
| |
| |
Inserting and Replacing Text | |
| |
| |
| |
Saving Text (:w) | |
| |
| |
| |
Exit to the UNIX Shell | |
| |
| |
| |
The Repeat Factor | |
| |
| |
| |
The Command Mode | |
| |
| |
| |
Navigation | |
| |
| |
| |
Operators | |
| |
| |
| |
Deleting, Moving and Yanking Text | |
| |
| |
| |
Changing Text (c and *) | |
| |
| |
| |
The Dot: Repeating the Last Command | |
| |
| |
| |
Undoing Last Editing Instructions (u and U) | |
| |
| |
| |
String Search | |
| |
| |
| |
Searching with Regular Expressions | |
| |
| |
| |
Search and Replace (:s) | |
| |
| |
| |
Handling Multiple Files | |
| |
| |
| |
Marking Text | |
| |
| |
| |
Filtering Text--The ! Operator | |
| |
| |
| |
Named Buffers: Copying and Moving Multiple Text Sections | |
| |
| |
| |
Recovering Multiple Deletions | |
| |
| |
| |
Abbreviating Text (:ab) | |
| |
| |
| |
Customizing the Keyboard (:map) | |
| |
| |
| |
Customizing the Environment (:set) | |
| |
| |
Summary | |
| |
| |
Going Further | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Going Further | |
| |
| |
Key Terms | |
| |
| |
| |
The GNU emacs Editor | |
| |
| |
| |
emacs Preliminaries | |
| |
| |
| |
Quitting emacs | |
| |
| |
| |
Inserting and Replacing Text | |
| |
| |
| |
Saving Text | |
| |
| |
| |
The Digit Argument | |
| |
| |
| |
Navigation | |
| |
| |
| |
Working with Regions | |
| |
| |
| |
Deleting, Moving and Copying Text | |
| |
| |
| |
Changing Case of Text | |
| |
| |
| |
Command Completion | |
| |
| |
| |
Undoing and Redoing Editing | |
| |
| |
| |
String Search | |
| |
| |
| |
Searching with Regular Expressions | |
| |
| |
| |
Search and Replace | |
| |
| |
| |
Using Multiple Files, Windows and Buffers | |
| |
| |
| |
Escape to Shell | |
| |
| |
| |
Using the Help Facility ([Ctrl-h]) | |
| |
| |
| |
Marking Text | |
| |
| |
| |
Filtering Text | |
| |
| |
| |
Storing Multiple Text Sections | |
| |
| |
| |
Recovering Multiple Deletions ([Alt-y]) | |
| |
| |
| |
Abbreviating Text (abbrev-mode) | |
| |
| |
| |
Customizing the Keyboard | |
| |
| |
| |
Using Macros | |
| |
| |
| |
Customizing the Editor Environment | |
| |
| |
Summary | |
| |
| |
Going Further | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Going Further | |
| |
| |
Key Terms | |
| |
| |
| |
The File System | |
| |
| |
| |
The File | |
| |
| |
| |
What's in a (File)name? | |
| |
| |
| |
The Parent-Child Relationship | |
| |
| |
| |
The UNIX File System | |
| |
| |
| |
pwd: Knowing Your Current Directory | |
| |
| |
| |
Absolute Pathnames | |
| |
| |
| |
cd: Changing Directories | |
| |
| |
| |
Relative Pathnames (. and ..) | |
| |
| |
| |
mkdir: Making Directories | |
| |
| |
| |
rmdir: Removing Directories | |
| |
| |
| |
cp: Copying Files | |
| |
| |
| |
rm: Deleting Files | |
| |
| |
| |
mv: Renaming Files | |
| |
| |
| |
cat: Displaying and Creating Files | |
| |
| |
| |
file: Know the File Types | |
| |
| |
| |
lp and cancel: Printing a File | |
| |
| |
| |
df: Finding Out the Free Disk Space | |
| |
| |
| |
du: Finding Out Your Own Consumption | |
| |
| |
| |
compress, gzip and zip: Compress Your Files | |
| |
| |
| |
Conclusion | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
File Attributes | |
| |
| |
| |
ls: Listing Files | |
| |
| |
| |
ls -l: Listing File Attributes | |
| |
| |
| |
Listing Directory Attributes (ls -d) | |
| |
| |
| |
File Permissions | |
| |
| |
| |
chmod: Changing File Permissions | |
| |
| |
| |
Directory Permissions | |
| |
| |
| |
umask: Default File Permissions | |
| |
| |
| |
File Ownership | |
| |
| |
| |
chown and chgrp: Changing File Ownership | |
| |
| |
| |
File Modification and Access Times | |
| |
| |
| |
touch: Changing the Time Stamps | |
| |
| |
| |
File Systems and Inodes | |
| |
| |
| |
ln: Links | |
| |
| |
| |
Symbolic Links | |
| |
| |
| |
find: Locating Files | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
The Shell | |
| |
| |
| |
The Shell as Command Processor | |
| |
| |
| |
Pattern Matching--The Wild Cards | |
| |
| |
| |
Escaping--The Backslash (\) | |
| |
| |
| |
Quoting | |
| |
| |
| |
Escaping and Quoting in echo | |
| |
| |
| |
Redirection | |
| |
| |
| |
/dev/null and /dev/tty: Two Special Files | |
| |
| |
| |
Pipes | |
| |
| |
| |
tee: Splitting a Stream | |
| |
| |
| |
Command Substitution | |
| |
| |
| |
Shell Variables | |
| |
| |
| |
Shell Scripts | |
| |
| |
| |
The Shell's Treatment of the Command Line | |
| |
| |
| |
The Other Shells | |
| |
| |
| |
More Wild Cards in the Korn Shell and bash | |
| |
| |
Summary | |
| |
| |
Going Further | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Going Further | |
| |
| |
Key Terms | |
| |
| |
| |
Simple Filters | |
| |
| |
| |
more: Paging Output | |
| |
| |
| |
wc: Line, Word and Character Counting | |
| |
| |
| |
od: Displaying Data in Octal | |
| |
| |
| |
pr: Paginating Files | |
| |
| |
| |
cmp: Comparing Two Files | |
| |
| |
| |
diff: Converting One File to Another | |
| |
| |
| |
comm: What Is Common? | |
| |
| |
| |
head: Displaying the Beginning of a File | |
| |
| |
| |
tail: Displaying the End of a File | |
| |
| |
| |
cut: Slitting a File Vertically | |
| |
| |
| |
paste: Pasting Files | |
| |
| |
| |
sort: Ordering a File | |
| |
| |
| |
tr: Translating Characters | |
| |
| |
| |
uniq: Locate Repeated and Nonrepeated Lines | |
| |
| |
| |
nl: Line Numbering | |
| |
| |
| |
dos2unix and unix2dos: DOS and UNIX Files | |
| |
| |
| |
spell: Check Your Spellings | |
| |
| |
| |
Applying the Filters | |
| |
| |
Summary | |
| |
| |
Summing Up Linux | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
The Process | |
| |
| |
| |
Understanding the Process | |
| |
| |
| |
How a Process Is Created | |
| |
| |
| |
The Login Shell: The First User Process | |
| |
| |
| |
The init Process | |
| |
| |
| |
Internal and External Commands | |
| |
| |
| |
ps: Process Status | |
| |
| |
| |
Running Jobs in Background | |
| |
| |
| |
nice: Job Execution with Low Priority | |
| |
| |
| |
Signals | |
| |
| |
| |
kill: Premature Termination of a Process | |
| |
| |
| |
Job Control | |
| |
| |
| |
at and batch: Execute Later | |
| |
| |
| |
cron: Running Jobs Periodically | |
| |
| |
| |
time: Timing Processes | |
| |
| |
Summary | |
| |
| |
Summing Up Linux | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
TCP/IP Networking Tools | |
| |
| |
| |
TCP/IP Basics | |
| |
| |
| |
talk: Real-Time Conversation | |
| |
| |
| |
mesg: Your Willingness to Talk | |
| |
| |
| |
finger: Details of Users | |
| |
| |
| |
telnet: Remote Login | |
| |
| |
| |
rlogin: Remote Login without Password | |
| |
| |
| |
ftp: File Transfer Protocol | |
| |
| |
| |
rcp: Remote File Copying | |
| |
| |
| |
rsh: Remote Command Execution | |
| |
| |
| |
Enforcing Security for the Berkeley r-Utilities | |
| |
| |
| |
Prelude to the Internet | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
The X Window System | |
| |
| |
| |
Why Use X? | |
| |
| |
| |
The Graphical User Interface in X | |
| |
| |
| |
Starting and Stopping X | |
| |
| |
| |
The X Architecture | |
| |
| |
| |
Running X Programs Remotely | |
| |
| |
| |
X Techniques and Components | |
| |
| |
| |
The Window Manager--A Special Client | |
| |
| |
| |
CDE: The Common Desktop Environment | |
| |
| |
| |
xterm: The Main Client | |
| |
| |
| |
Command Line Options | |
| |
| |
| |
Copy and Paste | |
| |
| |
| |
Standard X Clients | |
| |
| |
| |
.xinitrc: The Startup File | |
| |
| |
| |
X Resources | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
Electronic Mail | |
| |
| |
| |
Email Basics | |
| |
| |
| |
mail: The Good Old Mailer | |
| |
| |
| |
elm: A Screen-Oriented Mail Handler | |
| |
| |
| |
pine: Yet Another Mail Program | |
| |
| |
| |
.signature and .forward: Two Important Files | |
| |
| |
| |
How Mail Works | |
| |
| |
| |
Netscape Messenger: The Most Powerful Mailer | |
| |
| |
| |
vacation: Going on Leave | |
| |
| |
| |
MIME: Handling Binary Files | |
| |
| |
Summary | |
| |
| |
Going Further | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Going Further | |
| |
| |
Key Terms | |
| |
| |
| |
The Internet | |
| |
| |
| |
The Internet Top-Level Domains | |
| |
| |
| |
The Services on the Internet | |
| |
| |
| |
Mailing Lists | |
| |
| |
| |
Newsgroups | |
| |
| |
| |
Using tin to Read Newsgroups | |
| |
| |
| |
Using Netscape Messenger for Net News | |
| |
| |
| |
irc: Internet Relay Chat | |
| |
| |
| |
The World Wide Web | |
| |
| |
| |
Using the Web Browser: Netscape Navigator | |
| |
| |
| |
Hypertext, HTTP and the URL | |
| |
| |
| |
HTML: The Language of the Web | |
| |
| |
| |
Saving Web Pages and Graphics | |
| |
| |
| |
Enhancing Browser Performance | |
| |
| |
| |
The Bubble that Didn't Burst | |
| |
| |
| |
MIME Technology on the Web | |
| |
| |
Summary | |
| |
| |
Going Further | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Going Further | |
| |
| |
Key Terms | |
| |
| |
| |
Filters Using Regular Expressions--grep and sed | |
| |
| |
| |
The Sample Database | |
| |
| |
| |
grep: Searching for a Pattern | |
| |
| |
| |
grep Options | |
| |
| |
| |
Regular Expressions--Round One | |
| |
| |
| |
egrep and fgrep: The Other Members | |
| |
| |
| |
Regular Expressions--Round Two | |
| |
| |
| |
sed: The Stream Editor | |
| |
| |
| |
Line Addressing | |
| |
| |
| |
Context Addressing | |
| |
| |
| |
Editing Text | |
| |
| |
| |
Substitution | |
| |
| |
| |
Regular Expressions--Round Three | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
Programming with awk | |
| |
| |
| |
awk Preliminaries | |
| |
| |
| |
Splitting a Line into Fields | |
| |
| |
| |
printf: Formatting Output | |
| |
| |
| |
The Comparison Operators | |
| |
| |
| |
Number Processing | |
| |
| |
| |
Variables | |
| |
| |
| |
Reading the Program from a File (-f) | |
| |
| |
| |
The BEGIN and END Sections | |
| |
| |
| |
Positional Parameters | |
| |
| |
| |
getline: Making awk Interactive | |
| |
| |
| |
Built-In Variables | |
| |
| |
| |
Arrays | |
| |
| |
| |
Functions | |
| |
| |
| |
Control Flow--The if Statement | |
| |
| |
| |
Looping: for and while | |
| |
| |
| |
Conclusion | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
Customizing the Environment | |
| |
| |
| |
Which Shell? | |
| |
| |
| |
Environment Variables | |
| |
| |
| |
Significance of the Environment (System) Variables | |
| |
| |
| |
Aliases | |
| |
| |
| |
Command History | |
| |
| |
| |
In-line Command Editing in Korn Shell and bash | |
| |
| |
| |
Filename Completion | |
| |
| |
| |
Miscellaneous Features | |
| |
| |
| |
The Initialization Scripts | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
Shell Programming | |
| |
| |
| |
Shell Variables | |
| |
| |
| |
Shell Scripts | |
| |
| |
| |
read: Making Scripts Interactive | |
| |
| |
| |
Positional Parameters | |
| |
| |
| |
Exit Status of a Command | |
| |
| |
| |
The Logical Operators andand and --Conditional Execution | |
| |
| |
| |
exit: Script Termination | |
| |
| |
| |
The if Conditional | |
| |
| |
| |
test and []: Companions of if | |
| |
| |
| |
The case Conditional | |
| |
| |
| |
expr: Computation and String Handling | |
| |
| |
| |
$0: Calling a Script with Different Names | |
| |
| |
| |
sleep and wait | |
| |
| |
| |
while and until: Looping | |
| |
| |
| |
Two Sample Scripts | |
| |
| |
| |
for: Looping with a List | |
| |
| |
| |
cpback2.sh: The Final Script | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
Advanced Shell Programming Including Korn and bash | |
| |
| |
| |
set: Assigning Values to Positional Parameters | |
| |
| |
| |
The Here Document ([[) | |
| |
| |
| |
let: Computation--A Second Look (ksh and bash) | |
| |
| |
| |
Redirection--A Second Look | |
| |
| |
| |
user_details.sh: A Script to List User Details | |
| |
| |
| |
Problems with Sub-Shells | |
| |
| |
| |
Arrays (ksh and bash) | |
| |
| |
| |
String Handling (ksh and bash) | |
| |
| |
| |
Conditional Parameter Substitution | |
| |
| |
| |
Shell Functions | |
| |
| |
| |
Devising Shell Functions | |
| |
| |
| |
eval: Evaluating Twice | |
| |
| |
| |
createuser.sh: Using eval to Create a User | |
| |
| |
| |
The exec Statement | |
| |
| |
| |
set -x: Debugging Shell Scripts | |
| |
| |
| |
trap: Interrupting a Program | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
Perl--The Master Manipulator | |
| |
| |
| |
perl Preliminaries | |
| |
| |
| |
chop(): Removing the Last Character | |
| |
| |
| |
Variables and Operators | |
| |
| |
| |
The String Handling Functions | |
| |
| |
| |
Specifying Filenames in Command Line | |
| |
| |
| |
$_: The Default Variable | |
| |
| |
| |
Current Line Number ($.) and the Range Operator (..) | |
| |
| |
| |
Lists and Arrays | |
| |
| |
| |
ARGV []: Command Line Arguments | |
| |
| |
| |
foreach: Looping Through a List | |
| |
| |
| |
split(): Splitting into a List | |
| |
| |
| |
join(): Joining a List | |
| |
| |
| |
Modifying Array Contents | |
| |
| |
| |
Associative Arrays | |
| |
| |
| |
Regular Expressions and Substitution | |
| |
| |
| |
File Handling | |
| |
| |
| |
File Tests | |
| |
| |
| |
Subroutines | |
| |
| |
| |
Conclusion | |
| |
| |
| |
CGI Programming with perl--An Overview | |
| |
| |
| |
Handling Form Data | |
| |
| |
Summary | |
| |
| |
Going Further | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Going Further | |
| |
| |
Key Terms | |
| |
| |
| |
System Administration I--The File System Revisited | |
| |
| |
| |
The Device | |
| |
| |
| |
Significance of Device Names | |
| |
| |
| |
The Hard Disk | |
| |
| |
| |
Partitions and File Systems | |
| |
| |
| |
File System Components | |
| |
| |
| |
The Directory | |
| |
| |
| |
The Standard File Systems | |
| |
| |
| |
File System Types | |
| |
| |
| |
Creating Partitions and File Systems | |
| |
| |
| |
File System Mounting and Unmounting | |
| |
| |
| |
fsck: File System Checking | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
System Administration II--The General Duties | |
| |
| |
| |
root: The System Administrator's Login | |
| |
| |
| |
The Administrator's Privileges | |
| |
| |
| |
Maintaining User Accounts | |
| |
| |
| |
Maintaining Security | |
| |
| |
| |
Booting | |
| |
| |
| |
Shutdown | |
| |
| |
| |
Handling Floppy Diskettes | |
| |
| |
| |
cpio: Copy Input-Output | |
| |
| |
| |
tar: The "Tape" Archive Program | |
| |
| |
| |
Managing the Disk Space | |
| |
| |
| |
Password Administration with passwd | |
| |
| |
| |
The rc Scripts Used by init | |
| |
| |
| |
Terminal Management | |
| |
| |
| |
Printing Preliminaries | |
| |
| |
| |
Administering an SVR4 Printer | |
| |
| |
Summary | |
| |
| |
Going Further | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Going Further | |
| |
| |
Key Terms | |
| |
| |
| |
TCP/IP Network Administration | |
| |
| |
| |
TCP/IP and the Addressing System | |
| |
| |
| |
Setting Up the Network Interface Card | |
| |
| |
| |
ifconfig: Configuring the Network Interface | |
| |
| |
| |
ping: Checking the Network | |
| |
| |
| |
Routing | |
| |
| |
| |
netstat: Displaying the Network Parameters | |
| |
| |
| |
inetd: The Internet Daemon | |
| |
| |
| |
pppd: The Point-to-Point Protocol (PPP) | |
| |
| |
| |
Using PPP to Connect to the Internet | |
| |
| |
| |
PAP and CHAP Authentication | |
| |
| |
| |
The Network File System | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
Going Further--Building the Internet Server | |
| |
| |
| |
The Network at Rational Planets | |
| |
| |
| |
The Domain Name Service (DNS) | |
| |
| |
| |
Setting Up DNS--Configuring the Master Server | |
| |
| |
| |
The Secondary and Caching Servers | |
| |
| |
| |
Configuring the Resolver | |
| |
| |
| |
ndc and nslookup: Testing the Configuration | |
| |
| |
| |
The Mail Service | |
| |
| |
| |
sendmail.cf: The Configuration File | |
| |
| |
| |
Aliases | |
| |
| |
| |
Setting Up the Mail Server for planets.com | |
| |
| |
| |
POP and IMAP: The Protocols for Offline Use | |
| |
| |
| |
Setting Up the Mail System at Velvet | |
| |
| |
| |
The Web Service | |
| |
| |
| |
httpd.conf: The Configuration File | |
| |
| |
| |
Virtual Hosting | |
| |
| |
| |
Directory Access Control | |
| |
| |
Summary | |
| |
| |
Self-Test | |
| |
| |
Exercises | |
| |
| |
Key Terms | |
| |
| |
| |
The C Shell--Programming Constructs | |
| |
| |
| |
vi/vim and emacs Command Reference | |
| |
| |
| |
The Regular Expression Superset | |
| |
| |
| |
The Shell Reference | |
| |
| |
| |
The HOWTO | |
| |
| |
| |
The ASCII Character Set | |
| |
| |
| |
Glossary | |
| |
| |
| |
Solutions to Self-Test Questions | |
| |
| |
| |
Bibliography | |
| |
| |
vi Index | |
| |
| |
emacs Index | |
| |
| |
Commands and Key Terms | |
| |
| |
C Shell | |
| |
| |
Korn Shell | |
| |
| |
bash | |
| |
| |
Comprehensive Index | |