CART

(0) items

Your UNIX : The Ultimate Guide,9780072520422
This item qualifies for
FREE SHIPPING!

FREE SHIPPING OVER $59!

Your order must be $59 or more, you must select US Postal Service Shipping as your shipping preference, and the "Group my items into as few shipments as possible" option when you place your order.

Bulk sales, PO's, Marketplace Items, eBooks, Apparel, and DVDs not included.

Your UNIX : The Ultimate Guide

by
Edition:
2nd
ISBN13:

9780072520422

ISBN10:
0072520426
Format:
Paperback
Pub. Date:
1/7/2005
Publisher(s):
McGraw-Hill Science/Engineering/Math
List Price: $137.05
More New and Used
from Private Sellers
Starting at $37.10

Rent Textbook

We're Sorry
Sold Out

Used Textbook

We're Sorry
Sold Out

eTextbook

We're Sorry
Not Available

New Textbook

We're Sorry
Sold Out

Related Products


  • Your Unix/Linux : The Ultimate Guide
    Your Unix/Linux : The Ultimate Guide




Summary

Your UNIX: The Ultimate Guideis both an outstanding pedagogical tool and an exhaustive reference. It is the ideal text for any Unix course. It can also be used for any introductory programming course that includes Unix and for advanced courses such as those on Operating Systems and System Administration. Excellent pedagogy is implemented throughout. Real-world examples make it easier for students to grasp concepts while chapters on advanced material take more experienced students beyond the basics. Over nine hundred exercises and self-test questions allow students to test and reinforce their understanding of material at different levels. This book also features coverage of Linux, where Linux differs from UNIX.

Table of Contents

List of Tables
xxix
Preface xxxii
Introducing UNIX
1(22)
The Operating System
1(2)
The UNIX Operating System
3(1)
Knowing Your Machine
4(1)
The System Administrator
5(1)
Logging In and Out
5(2)
Logging In
5(1)
Logging Out
6(1)
A Hands-On Session
7(5)
System Information with date and who
7(1)
Viewing Processes with ps
8(1)
Handling Files
9(1)
Handling Directories
10(2)
How It All Clicked
12(2)
Berkeley: The Second School
13(1)
UNIX Gets Fragmented
13(1)
The Internet
14(1)
The Windows Threat
14(1)
POSIX and the Single UNIX Specification
14(1)
Linux and GNU
15(1)
The UNIX Architecture
15(3)
Division of Labor: Kernel and Shell
16(1)
The File and Process
17(1)
The System Calls
17(1)
Features of UNIX
18(5)
A Multiuser System
18(1)
A Multitasking System Too
18(1)
A Repository of Applications
19(1)
The Building-Block Approach
19(1)
Pattern Matching
19(1)
Programming Facility
19(1)
Documentation
20(1)
Summary
20(1)
Self-Test
21(1)
Exercises
22(1)
Becoming Familiar with UNIX Commands
23(30)
Command Basics
23(3)
The PATH: Locating Commands
24(1)
Where Is the Command?
25(1)
Command Structure
26(1)
Flexibility of Command Usage
27(2)
man: On-Line Help
29(2)
Navigation and Search
31(1)
Further Help with man -k and man -f
31(1)
The man Documentation
31(4)
Understanding a man Page
32(1)
Using man to Understand man
33(2)
echo: Displaying Messages
35(2)
printf: Alternative to echo
37(1)
script: Recording Your Session
37(1)
Using Email with mailx
38(3)
Sending Mail
38(1)
Receiving Mail
39(1)
mailx Internal Commands
40(1)
passwd: Changing Your Password
41(1)
uname: Your Machine's Name and Operating System
42(1)
who: Know the Users
43(1)
date: Displaying the System Date
44(1)
stty: When Things Go Wrong
44(2)
Changing the Settings
45(1)
The X Window System
46(7)
The Terminal Emulator
47(1)
The File Manager
48(1)
Summary
49(1)
Self-Test
49(1)
Exercises
50(3)
The File System
53(33)
The File
53(2)
Ordinary (Regular) File
54(1)
Directory File
54(1)
Device File
55(1)
What's in a (File)name?
55(1)
The File System Hierarchy
56(1)
The UNIX File System
57(1)
Using Absolute Pathnames with Commands
58(1)
The HOME Variable and ~: The Home Directory
59(1)
pwd and cd: Navigating the File System
59(2)
Relative Pathnames (. and . .)
61(2)
mkdir: Making Directories
63(1)
rmdir: Removing Directories
64(1)
ls: Listing Files
65(3)
Is Options
66(2)
cp: Copying Files
68(1)
cp Options
69(1)
mv: Renaming Files
69(1)
rm: Deleting Files
70(2)
rm Options
70(2)
cat: Displaying and Concatenating Files
72(1)
more: The UNIX Pager
73(2)
wc: Counting Lines, Words, and Characters
75(1)
lp: Printing a File
75(2)
Other Commands in the lp Subsystem
76(1)
od: Viewing Nonprintable Characters
77(1)
dos2unix and unix2dos: Converting Between DOS and UNIX
78(1)
tar: The Archival Program
79(1)
gzip: The Compression Program
79(2)
zip: The Compression and Archival Program
81(1)
Other Ways of Using These Commands
82(4)
Summary
82(1)
Self-Test
83(1)
Exercises
84(2)
File Attributes
86(29)
Is Revisited (-1): Listing File Attributes
86(2)
Listing Directory Attributes (-ld)
88(1)
File Permissions
88(2)
chmod: Changing File Permissions
90(4)
Relative Permissions
90(2)
Absolute Assignment
92(1)
Recursive Operation (-R)
93(1)
The Directory
94(2)
Read Permission
94(1)
Write Permission
94(2)
Execute Permission
96(1)
umask: Default File and Directory Permissions
96(1)
File Systems and Inodes
97(2)
ln: Creating Hard Links
99(2)
Where to Use Hard Links
101(1)
In Again: Creating Symbolic Links
101(2)
File Ownership
103(3)
chown: Changing File Ownership
104(1)
chgrp: Changing Group Owner
105(1)
How to Handle Intruders
106(1)
Modification and Access Times
106(1)
find: Locating Files
107(8)
Selection Criteria
108(2)
The find Operators (!, -o, and -a)
110(1)
Operators of the Action Component
110(1)
Summary
111(1)
Self-Test
112(1)
Exercises
113(2)
The vi/vim Editor
115(34)
vi Basics
116(2)
The File .exrc
117(1)
A Few Tips First
118(1)
Input Mode---Entering and Replacing Text
119(5)
Inserting and Appending Text(i and a)
120(1)
Inserting and Appending Text at Line Extremes (I and A)
120(1)
Opening a New Line (o and 0)
121(1)
Replacing Text(r, s, R, and S)
122(1)
Entering Control Characters ([Ctrl-v])
123(1)
Saving Text and Quitting---The ex Mode
124(3)
Saving Your Work (:w)
124(1)
Saving and Quitting (:x and :wq)
125(1)
Aborting Editing (:q)
125(1)
Writing Selected Lines
126(1)
Escape to the Shell (:sh and [Ctrl-z])
127(1)
Recovering from a Crash (:recover and -r)
127(1)
Navigation
127(4)
Relative Movement in the Four Directions (h, j, k, and l)
128(1)
Scrolling ([Ctrl-f], [Ctrl-b], [Ctrl-d], and [Ctrl-u])
129(1)
Word Navigation (b, e, and w)
129(1)
Moving to Line Extremes (0, |, and $)
130(1)
Absolute Movement (G)
130(1)
Editing Text without Operators
131(2)
Deleting Text(x, X, and dd)
131(1)
Moving Text (p)
132(1)
Joining Lines (J)
132(1)
Changing Case (~)
133(1)
Correcting a C Program
133(1)
Editing Text with Operators
134(3)
Deleting and Moving Text (d, p, and P)
135(1)
Yanking Text (y, p, and P)
136(1)
Changing Text (c)
137(1)
Copying and Moving Text from One File to Another
137(1)
Undoing Last Editing Instructions (u and U)
138(1)
Searching for a Pattern (/ and ?)
139(1)
Repeating the Last Pattern Search (n and N)
139(1)
Repeating the Last Command (.)
140(1)
Substitution---Search and Replace (:s)
141(1)
set: Customizing vi
142(2)
Going Further
144(1)
map: Mapping Keys of Keyboard
144(1)
abbr: Abbreviating Text Input
145(4)
Summary
145(1)
Self-Test
146(1)
Exercises
147(2)
The GNU emacs Editor
149(36)
emacs Basics
150(3)
The Control and Meta Keys
151(1)
Entering Commands Directly (M-x)
152(1)
The File .emacs
152(1)
A Few Tips First
153(1)
Inserting and Replacing Text
154(1)
Entering Control Characters (C-q)
154(1)
Saving Text and Quitting
155(2)
Saving Your Work (C-x C-s and C-x C-w)
155(1)
Quitting the Editor (C-x C-c)
156(1)
Escape to the Shell (C-x, C-z, and M-x shell)
156(1)
Recovering from a Crash
157(1)
Navigation
158(3)
Movement in the Four Directions (C-b, C-f, C-p, and C-n)
158(1)
Scrolling (C-v and M-v)
159(1)
Word Navigation (M-f and M-b)
159(1)
Moving to Line and File Extremes
160(1)
Absolute Movement
161(1)
Working with Regions
161(1)
Deleting, Moving, and Copying Text
161(5)
Deleting Text
162(2)
The Kill Ring
164(1)
Deleting Text in a Region (C-w)
164(1)
Moving and Copying Text (C-y)
164(1)
Copying and Moving Text from One File to Another
165(1)
Transposing Text (C-t)
165(1)
Changing Case of Text
166(1)
Undoing and Redoing Editing
167(1)
Searching for a Pattern
168(3)
The Incremental Search (C-s and C-r)
168(1)
Repeating the Last Incremental Search (C-s and C-r)
168(1)
Nonincremental Search
169(2)
Substitution---Search and Replace
171(1)
Using Multiple Windows and Buffers
171(4)
Handling Windows
172(1)
Handling Buffers
173(2)
Using the Help Facility (C-h)
175(2)
Accessing Help by Key (C-h k)
176(1)
Accessing Help by Function Name (C-h f and C-h w)
176(1)
Viewing the Tutorial and info Documentation (C-h t and C-h i)
177(1)
Customizing emacs: Setting Variables
177(2)
Going Further
179(1)
Recovering Multiple Deletions (M-y)
179(1)
Abbreviating Text (abbrev-mode)
179(1)
Customizing the Keyboard
180(1)
Using Macros
180(5)
Summary
181(1)
Self-Test
182(1)
Exercises
183(2)
The Shell
185(31)
The Shell as Command Processor
186(1)
Shell Offerings
187(1)
Pattern Matching---The Wild Cards
187(4)
The * and ?
187(2)
The Character Class
189(1)
Matching the Dot
190(1)
Rounding Up
191(1)
Escaping and Quoting
191(3)
Escaping
192(1)
Quoting
193(1)
Escaping in echo
194(1)
Redirection
194(6)
Standard Input
195(1)
Standard Output
196(2)
The File Descriptor
198(1)
Standard Error
198(1)
Filters---Using Both Standard Input and Standard Output
199(1)
Collective Manipulation
200(1)
Replicating Descriptors
200(1)
Command Grouping
201(1)
/dev/null and /dev/tty: Two Special Files
201(1)
Pipes
202(2)
When a Command Needs to Be Ignorant of Its Source
204(1)
tee: Creating a Tee
204(1)
Command Substitution
205(1)
Shell Variables
206(3)
Effects of Quoting and Escaping
208(1)
Where to Use Shell Variables
208(1)
Shell Scripts
209(1)
The Shell's Treatment of the Command Line
210(1)
Going Further
210(1)
More Wild Cards
210(1)
xargs: Building a Dynamic Command Line
211(5)
Summary
212(1)
Self-Test
212(1)
Exercises
213(3)
The Process
216(25)
Process Basics
216(1)
The Shell and init
217(1)
ps: Displaying Process Attributes
218(1)
System Processes and init
219(3)
The Process Creation Mechanism
222(1)
Inherited Process Attributes
223(1)
When Variables Are Inherited and When They Are Not
224(1)
When You Can't Use a Separate Process
224(1)
Process States and Zombies
225(1)
ps -1: Detailed Process Listing
226(1)
Signal Handling
226(3)
kill: Premature Termination of a Process
227(2)
Running Jobs in Background
229(1)
&: No Logging Out
229(1)
nohup: Log Out Safely
229(1)
Job Control
230(3)
Handling Standard Input and Standard Output
232(1)
at and batch: Execute Later
233(2)
at: One-Time Execution
233(1)
batch: Execute in Batch Queue
234(1)
Restricting Use of at and batch
234(1)
cron and crontab: Running Jobs Periodically
235(6)
Controlling Access to cron
237(1)
Summary
237(1)
Self-Test
238(1)
Exercises
239(2)
The Shell---Customizing the Environment
241(27)
The Shells
241(2)
Setting Your Shell
242(1)
Environment Variables
243(1)
export: Creating Environment Variables
244(1)
The Common Environment Variables
244(4)
Aliases
248(2)
Command History
250(3)
Accessing Previous Commands
251(1)
Substitution in Previous Commands
251(1)
Using Arguments to Previous Command ($_)
252(1)
The History Variables
252(1)
In-Line Command Editing
253(1)
Tilde Substitution
254(1)
Using set Options
255(2)
The Initialization Scripts
257(2)
The Login Script
257(1)
The rc File
258(1)
The C Shell
259(4)
Local and Environment Variables
259(2)
Aliases
261(1)
History
262(1)
Other Shell Variables
262(1)
The Initialization Scripts
262(1)
Going Further
263(1)
Directory Stack Manipulation
263(5)
Summary
265(1)
Self-Test
266(1)
Exercises
267(1)
Simple Filters
268(24)
pr: Paginating Files
269(1)
pr Options
269(1)
Comparing Files
270(1)
cmp: Byte-by-byte Comparison
271(1)
comm: What Is Common?
272(1)
diff: Converting One File to Another
273(1)
head: Displaying the Beginning of a File
274(1)
tail: Displaying the End of a File
275(1)
tail Options
275(1)
cut: Slitting a File Vertically
276(1)
paste: Pasting Files
277(1)
sort: Ordering a File
278(4)
sort Options
279(3)
uniq: Locate Repeated and Nonrepeated Lines
282(2)
uniq Options
282(2)
tr: Translating Characters
284(2)
tr Options
285(1)
Applying the Filters
286(6)
Listing the Five Largest Files in the Current Directory
286(1)
Creating a Word-Usage List
287(1)
Finding Out the Difference between Two Password Files
288(1)
Summary
289(1)
Self-Test
290(1)
Exercises
290(2)
Filters Using Regular Expressions---grep and sed
292(31)
The Sample Database
293(1)
grep: Searching for a Pattern
293(2)
Quoting in grep
294(1)
When grep Fails
295(1)
grep Options
295(3)
Basic Regular Expressions (BRE)---An Introduction
298(5)
The Character Class
298(2)
The *
300(1)
The Dot
301(1)
Specifying Pattern Locations (^ and $)
301(1)
When Metacharacters Lose Their Meaning
302(1)
Extended Regular Expressions (ERE) and egrep
303(1)
The + and ?
303(1)
Matching Multiple Patterns (|, ( and ))
304(1)
sed: The Stream Editor
304(3)
Line Addressing
306(1)
sed Options
307(1)
Context Addressing
308(1)
Writing Selected Lines to a File (w)
309(1)
Text Editing
309(2)
Inserting and Changing Lines (i, a, c)
309(1)
Deleting Lines (d)
310(1)
Substitution (s)
311(2)
Using Regular Expressions in Substitution
312(1)
The Remembered Pattern (//)
313(1)
Basic Regular Expressions Revisited
313(3)
The Repeated Pattern (&)
314(1)
Interval Regular Expression (IRE)
314(1)
The Tagged Regular Expression (TRE)
315(1)
Applying the IRE and TRE
316(7)
Handling a Telephone Directory
316(1)
Replacing an Obsolescent Function with a POSIX-Compliant One
317(1)
Converting Pathnames in URLs
317(1)
Summary
318(1)
Self-Test
319(1)
Exercises
320(3)
Filtering and Programming with awk
323(28)
awk Preliminaries
323(3)
Using print and printf
326(1)
Redirecting Standard Output
327(1)
Number Processing
327(2)
Variables and Expressions
329(1)
The Comparison and Logical Operators
330(3)
String and Numeric Comparison
330(2)
~ and !~: The Regular Expression Operators
332(1)
The Logical Operators
332(1)
The -f Option: Storing awk Programs in a File
333(1)
The BEGIN and END Sections
334(1)
Positional Parameters
335(1)
Arrays
336(2)
Associative (Hash) Arrays
337(1)
ENVIRON[ ]: The Environment Array
337(1)
Built-In Variables
338(2)
Applying the Built-In Variables
339(1)
Functions
340(2)
Control Flow---The if Statement
342(1)
Looping with for
343(2)
Using for with an Associative Array
344(1)
Looping with while
345(1)
Conclusion
346(5)
Summary
347(1)
Self-Test
347(1)
Exercises
348(3)
Shell Programming
351(44)
Shell Scripts
352(1)
script.sh: A Simple Script
352(1)
The She-Bang Line
353(1)
read: Making Scripts Interactive
353(1)
Using Command Line Arguments
354(2)
exit and $?: Exit Status of a Command
356(1)
The Logical Operators && and ||---Conditional Execution
357(1)
The if Conditional
358(1)
Using test and [ ] to Evaluate Expressions
359(5)
Numeric Comparison
359(2)
[ ]: Shorthand for test
361(1)
String Comparison
361(1)
File Attribute Tests
362(1)
Using Compound Conditions
363(1)
Two Important Programming Idioms
364(2)
Running a Task Both Interactively and Noninteractively
364(1)
Calling a Script by Different Names ($0)
365(1)
The case Conditional
366(2)
Using Wild Cards and the |
367(1)
expr and basename: Computation and String Handling
368(2)
Computation with expr
368(1)
String Handling with expr
369(1)
basename: Changing Filename Extensions
370(1)
Sample Program #1: Automatically Selects Last C Program
370(2)
for: Looping with a List
372(1)
Sources of the List
372(1)
Important Applications Using for
373(1)
while: Looping
373(5)
Handling Redirection in a Loop
374(1)
Using while to Wait for a File
375(1)
Finding Out Users' Space Consumption
376(1)
break and continue
377(1)
Sample Script #2: Providing Numeric Extensions to Backup Files
378(2)
Manipulating Positional Parameters with set and shift
380(3)
Killing a Process by Name
381(1)
shift: Shifting Positional Parameters Left
382(1)
The IFS Variable: set's Default Delimiter
383(1)
Sample Script #3: A Table of Contents for Downloaded Files
383(2)
Going Further
385(1)
The Here Document (<<)
385(1)
Shell Functions
386(2)
trap: How a Script Handles Signals
388(1)
eval: Evaluating Twice
389(1)
The exec Statement
389(6)
Summary
390(1)
Self-Test
391(1)
Exercises
392(3)
Networking Tools
395(32)
TCP/IP Basics
396(1)
Hostnames and IP Addresses
396(1)
Resolving Hostnames and IP Addresses
397(3)
/etc/hosts: The Hosts File
397(1)
The Domain Name System (DNS)
398(2)
Client-Server: How Networked Applications Communicate
400(1)
ping: Checking the Network
401(1)
telnet: Remote Login
402(1)
ftp: File Transfer Protocol
403(3)
Basic File and Directory Handling
403(1)
Transferring Files
404(1)
Anonymous FTP
405(1)
Cryptography Basics
406(2)
Symmetric Key Algorithms
407(1)
Asymmetric Key Algorithms
407(1)
SSH: The Secure Shell
408(4)
Host Authentication
408(1)
The rhosts/shosts Authentication Scheme
409(1)
User Authentication with Symmetric Algorithms
409(2)
Using the SSH Agent for Noninteractive Logins
411(1)
The SSH Tools
412(2)
Remote Login and Command Execution (ssh and slogin)
412(1)
File Transfer with sftp and scp
413(1)
Internet Mail
414(2)
~/.signature and ~/.forward: Two Important Files
415(1)
MIME: Handling Binary Attachments in Mail
416(1)
Using X Window on a TCP/IP Network
417(2)
The Display
417(1)
Using the DISPLAY variable
418(1)
Using the -display Option
418(1)
HTTP and the World Wide Web
419(4)
The Uniform Resource Locator (URL)
419(1)
HTTP: The Protocol of the Web
420(1)
Running External Programs
421(1)
HTML: The Language of Web Pages
421(1)
The Web Browser
422(1)
Multimedia on the Web: MIME Revisited
423(4)
Summary
423(1)
Self-Test
424(1)
Exercises
425(2)
perl---The Master Manipulator
427(35)
perl Preliminaries
428(1)
Variables and Constants
429(2)
Using a Pragma
430(1)
Operators
431(2)
The Comparison and Logical Operators
431(1)
The Concatenation and Repetition Operators (. and x)
432(1)
The Standard Conditionals and Loops
433(2)
The if Conditional
433(1)
The while, do-while, and for Loops
433(2)
Reading Files from Command Line Arguments
435(1)
Reading Files with One-Liners
435(1)
Reading Files in a Script
436(1)
The Current Line Number ($.) and the Range Operator (..)
436(1)
$_: The Default Variable
437(1)
String Handling Functions
438(1)
Lists and Arrays
439(3)
Array Handling Functions
441(1)
foreach: Looping Through a List
442(1)
Two Important List Functions
443(3)
split: Splitting into a List or Array
443(2)
join: Joining a List
445(1)
dec2bin.pl: Converting a Decimal Number to Binary
446(1)
Associative Arrays
447(2)
Counting Number of Occurrences
448(1)
Using Regular Expressions
449(2)
Identifying Whitespace, Digits, and Words
449(1)
The IRE and TRE Features
450(1)
Substitution with the s and tr Functions
451(1)
Editing Files In-Place
451(1)
File Handling
452(2)
File Tests
454(1)
Subroutines
455(1)
Going Further
456(1)
CGI Programming with perl---An Overview
456(6)
The Query String
456(1)
GET and POST: The Request Method
457(1)
Summary
457(1)
Self-Test
458(1)
Exercises
459(3)
Program Development Tools
462(40)
Handling Multisource C Applications
462(5)
A Multisource Application
463(3)
Compiling and Linking the Application
466(1)
Why We Need the .o Files
467(1)
make: Keeping Programs Up-to-Date
467(5)
Removing Redundancies
469(1)
Other Functions of make: Cleaning Up and Backup
470(1)
Macros
471(1)
ar: Building a Library (Archive)
472(2)
Using the Library
473(1)
Maintaining an Archive with make
473(1)
Static and Shared Libraries
474(1)
Version Control with SCCS and RCS
475(1)
An SCCS Session
476(5)
admin: Creating an SCCS File
477(1)
get: Checking Out
477(2)
delta: Checking In
479(1)
unget: When You Change Your Mind
479(2)
Activity and History Information
481(1)
sact: Displaying Activity Status
481(1)
prs: Displaying the SCCS History
481(1)
Continuing Editing with SCCS
482(4)
get -r: Changing the Default Numbering Sequence
482(1)
Working with Multiple Versions
483(2)
rmdel and comb: Removing and Combining Versions
485(1)
Using Identification Keywords
486(1)
Controlling Access to SCCS
486(2)
Controlling User Access
486(1)
Controlling Releases
487(1)
The Revision Control System (RCS)
488(5)
Creating an RCS File with ci
488(1)
co and ci: Checking Out and In
489(1)
Specifying Revisions
490(1)
rlog and rcs: Other RCS Functions
491(2)
Debugging Programs with dbx
493(9)
Starting dbx
495(1)
Using a Breakpoint
496(1)
Stepping Through the Program
497(1)
Making a Reassignment
498(1)
Tracing a Variable
499(1)
Summary
499(1)
Self-Test
500(1)
Exercises
500(2)
Systems Programming I---Files
502(34)
System Call Basics
502(2)
Anatomy of a System Call
503(1)
System Calls vs. Library Functions
503(1)
errno and perror: Handling Errors
504(2)
open: Opening and Creating a File
506(2)
close: Closing a File
508(1)
read: Reading a File
508(1)
write: Writing a File
509(1)
ccp.c: Copying a File
510(2)
lseek: Positioning the Offset Pointer
512(2)
reverse_read.c: Reading a File in Reverse
513(1)
truncate and ftruncate: Truncating a File
514(2)
umask: Modifying File Permissions During Creation
516(1)
Directory Navigation
517(1)
Reading a Directory
518(2)
lls.c: Listing Filenames in a Directory
519(1)
Modifying Entries in Directory
520(2)
mkdir and rmdir: Creating and Removing Directories
521(1)
link and symlink: Creating a Hard and Symbolic Link
521(1)
unlink: Removing a Link
521(1)
rename: Renaming a File, Directory, or Symbolic Link
522(1)
Reading the Inode: struct stat and stat
522(6)
attributes.c: Displaying Some File Attributes
523(1)
S_IFMT: Manipulating the st_mode Member
524(1)
Using the S_ISxxx Macros to Determine File Type
525(1)
Accessing the Permission Bits
526(1)
lsdir.c: Listing Only Directories
526(2)
access: Checking the Real User's Permissions
528(1)
Modifying File Attributes
529(7)
chmod and fchmod: Changing File Permissions
530(1)
chown: Changing Ownership
530(1)
utime: Changing the Time Stamps
531(1)
atimemtime.c: Creating a File with Identical Time Stamps
531(2)
Summary
533(1)
Self-Test
533(1)
Exercises
534(2)
Systems Programming II---Process Control
536(36)
The Process Revisited
536(3)
The Virtual Address Space
537(1)
The Process Table
538(1)
The Process Environment
539(2)
process.c: Looking Up Some Process Credentials
540(1)
fork: Replicating the Current Process
541(1)
fork.c: A Simple Child Creation Program
541(1)
exec: The Final Step in Process Creation
542(4)
execl and execv: The Key Members
543(2)
The Other exec Members
545(1)
Gathering the Exit Status
546(1)
wait: When the Parent Waits
546(1)
waitpid: A More Powerful Waiting Mechanism
547(1)
fork_exec_wait.c: Using All Three Calls
547(3)
File Sharing
550(3)
The File Descriptor Table
550(1)
The File Table
551(1)
The Vnode Table
551(1)
When the Linkage Changes
551(2)
File Descriptor Manipulation
553(3)
dup and dup2: Duplicating a File Descriptor
553(1)
redirection.c: Redirection at Last
554(1)
fcntl: Recommended over dup and dup2
555(1)
Signal Handling
556(1)
The System Calls
557(1)
sigaction: Installing a Signal Handler
558(5)
signal.c: Catching the SIGALRM Signal
560(1)
Catching Terminal-Generated Signals
560(3)
killprocess.c: Using fork-exec-wait and SIGCHLD
563(2)
IPC with Unnamed Pipes
565(7)
Using pipe with fork
566(1)
pipe2.c: Running UNIX Commands in a Pipe
567(1)
Summary
568(1)
Self-Test
569(1)
Exercises
570(2)
System Administration
572(30)
root: The System Administrator's Login
573(1)
su: Acquiring Superuser Status
573(1)
The Administrator's Privileges
574(1)
User Management
575(3)
Understanding /etc/group
575(1)
Understanding /etc/passwd
576(1)
Adding and Modifying a User Profile
577(1)
Maintaining Security
578(2)
Restricted Shell
578(1)
Set-User-Id (SUID): Power for a Moment
579(1)
The Sticky Bit
580(1)
Booting and Shutdown
580(2)
Booting
581(1)
Shutdown
581(1)
How init Controls the System
582(3)
How init Creates the Shell
583(1)
The rc Scripts
584(1)
Device Files
585(1)
Block and Character Devices
586(1)
Major and Minor Numbers
586(1)
File Systems
586(2)
File System Components
587(1)
The Standard File Systems and Their Types
588(1)
Mounting and Unmounting File Systems
588(2)
mount: Mounting File Systems
589(1)
umount: Unmounting File Systems
590(1)
fsck: File System Checking
590(1)
Managing Disk Space
591(2)
df: Reporting Free Space
591(1)
du: Disk Usage
592(1)
find Revisited: The Administrator's Tool
593(1)
Handling Floppy Diskettes
593(2)
format and fdformat: Formatting Diskettes
593(1)
dd: Copying Diskettes
593(1)
Handling DOS Diskettes
594(1)
tar: Backing Up Files
595(7)
Backing Up Files (-c)
596(1)
Restoring Files (-x)
597(1)
Displaying the Archive (-t)
598(1)
Other Options
598(1)
Summary
598(1)
Self-Test
599(1)
Exercises
600(2)
Appendix A The C Shell---Programming Constructs 602(7)
Appendix B The Korn and Bash Shells---Exclusive Programming Constructs 609(7)
Appendix C vi/vim and emacs Command Reference 616(9)
Appendix D The Regular Expression Superset 625(3)
Appendix E The HOWTO 628(5)
Appendix F The ASCII Character Set 633(4)
Appendix G Glossary 637(19)
Appendix H Solutions to Self-Test Questions 656(23)
Index 679


Please wait while the item is added to your cart...