-->
To access the contents, click the chapter and section titles.
Linux Unleashed, Third Edition
(Imprint: Sams)
(Publisher: Macmillan Computer Publishing)
Author: Tim Parker
ISBN: 0672313723
- Introduction
- About the Author
- Part IIntroduction
- Chapter 1Introduction to Linux
- What Is Linux?
- Linuxs Kernel
- GNU Software
- X
- DOS and Windows Interface
- TCP/IP
- Linuxs History
- What Linux Can Do for You
- Learning UNIX Through Linux
- Running a Business
- Internet Servers
- What You Need to Run Linux
- Minimum System Requirements
- Motherboard Requirements
- Hard Disks
- Video System
- Mouse
- Tape Drives
- CD-ROM
- Removable Media
- Printers
- Modems
- Terminals
- Multiport Cards
- Network Cards
- Copyrights
- Getting Help
- Usenet Newsgroups
- Whats in This Book?
- Summary
- Chapter 2Types of Linux
- Where to Get Linux
- CD-ROM Linux
- FTP Sites
- World Wide Web
- Email
- Bulletin Board Systems (BBSs)
- Whats a Linux Release?
- Linux Releases and Disk Sets
- Updating Existing Linux Systems
- Summary
- Chapter 3Installing Linux
- Working with Linux
- Floppyless Installation
- Boot and Root Disks
- Selecting a Boot Kernel and Root Image
- Creating the Boot and Root Floppies
- The Installation Routine: A Quick Guide
- Choosing Text or Graphics Installation
- Setting Up Your Hard Drive
- Formatting the Partitions
- Setting Up Ethernet
- Setting Up the Mouse
- Configuring X
- Selecting Packages to Install
- Using LILO
- Partitioning the Hard Disk
- Linux Swap Space Partition
- Setting Up Partitions
- Using UMSDOS
- Installing the Linux Partitions
- Linuxs fdisk
- Setting Up Linux Partitions
- Enabling the Swap Space for Installation
- Creating the Linux Filesystem Partition
- Installing Linux
- Setting the Boot Process
- Viewing Installed Software Files
- Troubleshooting
- Software Installation
- Hard Disk and Disk Controller
- Device Conflicts
- SCSI Problems
- Booting Linux
- Summary
- Chapter 4Using LILO
- Installing LILO
- Handling Disk Problems
- LILO Makefile
- Updating LILO
- Linux and Hard Disk Layouts
- The Boot Sector
- The Boot Process
- Dedicated Linux Hard Disk
- Using BOOTACTV
- DOS and Linux
- Using BOOTLIN
- Boot Parameters
- The Map Installer
- Map Installer Command-line Syntax
- Map Installer Configuration File Options
- Boot Images
- Disk Parameter Table
- Removing or Disabling LILO
- Troubleshooting LILO
- Summary
- Chapter 5Wrapping Up the Installation
- Booting Linux
- Emergency Boot Procedure
- Using dmesg
- Changing Disk Partitions
- Installing Additional Software
- RPM
- installpkg
- Other Installation Commands
- Multiple CD-ROM Devices
- CD Changers
- CD Writers
- CD Libraries
- Changing CDs
- Summary
- Part IIGetting to Know Linux
- Chapter 6Getting Started
- Starting and Stopping Your Linux System
- Linux Shutdown Commands
- Whats This About Logging In?
- Why You Should Not Use the root Login
- Your First Login
- Passwords
- Creating a New Login
- Logging Out
- Trying Out Your New Login
- Linux Error Messages
- Search Paths
- The who Command
- Virtual Terminals
- Commands and Programs
- Summary
- Chapter 7Basic Linux Commands
- How Linux Commands Work
- Command Options
- Other Parameters
- Input and Output Redirection
- Notational Conventions Used to Describe Linux Commands
- Six Basic Rules of Linux Notation
- Online Help Available in Linux
- The Linux Man Pages
- Finding Keywords in Man Pages
- The bash Shell help Facility
- Wildcards: * and ?
- Environment Variables
- Processes and How to Terminate Them
- The Process Status Command: ps
- The Process Termination Command: kill
- Becoming Someone Else: The su Command
- The grep Command
- Summary
- Chapter 8Using the File System
- Files: An Overview
- Common Types of Files
- Filenames
- Directories: An Overview
- Parent Directories and Subdirectories
- The Root Directory
- How Directories Are Named
- The Home Directory
- Navigating the Linux File System
- The pwd Command: Where Am I?
- Absolute and Relative Filenames
- Going Places: The cd Command
- Theres No Place Like Home
- Creating and Deleting Files
- cat: That Useful Feline
- Creating Directories
- Moving and Copying Files
- Moving and Copying with Wildcards
- Moving Directories
- Removing Files and Directories
- Removing Directories
- Fear of Compression: The Zipless File
- Important Directories in the Linux File System
- /
- /home
- /bin
- /usr
- /usr/bin
- /usr/spool
- /dev
- /usr/sbin
- /sbin
- /etc
- Summary
- Chapter 9File and Directory Permissions
- File and Directory Ownership
- Users and Ownership
- Groups
- Changing Group Ownership
- File Permissions
- UMASK Settings
- Changing File Permissions
- Changing Directory Permissions
- Summary
- Chapter 10GNU Project Utilities
- GNU Software Currently Available
- acm
- Autoconf
- bash
- bc
- BFD
- Binutils
- Bison
- GNU C Compiler
- GNU C Library
- GNU C++ Library
- Calc
- GNU Chess
- CLISP
- GNU Common Lisp
- cpio
- CVS
- dc
- DejaGnu
- Diffutils
- ecc
- ed
- Elib
- GNU Emacs
- GNU Emacs 19
- es
- Fileutils
- find
- finger
- flex
- Fontutils
- gas
- gawk
- gdb
- gdbm
- Ghostscript
- Ghostview
- gmp
- GNats
- GNU Graphics
- GNU Shogi
- gnuplot
- GnuGo
- gperf
- grep
- Groff
- gzip
- hp2xx
- indent
- Ispell
- m4
- make
- mtools
- MULE
- NetFax
- NetHack
- NIH Class Library
- nvi
- Octave
- Oleo
- p2c
- patch
- PCL
- perl
- ptx
- rc
- RCS
- recode
- regex
- Scheme
- screen
- sed
- Shellutils
- Smalltalk
- Superopt
- tar
- Termcap Library
- TeX
- Texinfo
- Textutils
- Tile Forth
- time
- tput
- UUCP
- uuencode/uudecode
- wdiff
- Summary
- Chapter 11bash
- Shells in a Nutshell
- What Is a Shell?
- How the Shell Gets Started
- The Most Common Shells
- The Bourne Again Shell
- Command-line Completion
- Wildcards
- Command History
- Aliases
- Input Redirection
- Output Redirection
- Pipes
- Prompts
- Job Control
- Customizing bash
- bash Command Summary
- bash Variables
- Summary
- Chapter 12pdksh
- The Public Domain Korn Shell (pdksh)
- Command-Line Completion
- Wildcards
- Command History
- Aliases
- Input Redirection
- Output Redirection
- Pipelines
- Shell Prompts
- Job Control
- Key Bindings
- Customizing Your pdksh
- pdksh Commands
- pdksh Variables
- Summary
- Chapter 13tcsh3
- An Introduction to tcsh
- Command Completion
- Wildcards
- Command History
- Aliases
- Input and Output Redirection
- Pipelines
- Prompts
- Job Control
- Key Bindings
- Other Neat Stuff
- Correcting Spelling Errors
- Precommands
- Change Directory Commands
- Monitoring Logins and Logouts
- Customizing tcsh
- tcsh Command Summary
- tcsh Variables
- Summary
- Chapter 14Shell Programming
- Creating and Running Shell Programs
- Using Variables
- Assigning a Value to a Variable
- Accessing the Value of a Variable
- Positional Parameters and Other Built-In Shell Variables
- The Importance of Quotation Marks
- The test Command
- The tcsh Equivalent of the test Command
- Conditional Statements
- The if Statement
- The case Statement
- Iteration Statements
- The for Statement
- The while Statement
- The until Statement
- The shift Command
- The select Statement
- The repeat Statement
- Functions
- Summary
- Chapter 15FTP and Telnet
- FTP
- Setting Up FTP Server Service
- Using FTP
- Connecting with FTP
- FTP Commands
- File Transfer Modes
- Anonymous FTP Access
- Trivial File Transfer Protocol (TFTP)
- Using Telnet
- Using Telnet and GUIs
- TN3270 and Others
- Summary
- Part IIIEditing, Typesetting, and More
- Chapter 16Text Editors: vi and emacs
- What Are Editors and Why Do I Need One?
- The Editing Functions
- Inserting and Deleting Text
- Reading and Writing Files
- Searching Text
- Copying and Moving Text
- Editing Buffers
- The vi Editor
- Starting vi
- vi modes
- Inserting Text
- Quitting vi
- Moving the Cursor
- Deleting Text
- Copying and Moving Text
- Searching and Replacing Text
- Setting Preferences
- A Summary of Essential Commands
- The emacs Editor
- Starting emacs
- Control and Meta Keys
- Moving the Cursor
- Quitting emacs
- Deleting Text
- Working with Multiple Files
- Copying and Moving Text
- Searching and Replacing Text
- Using Modes with Buffers
- Online Help in emacs
- A Summary of Essential Commands
- Summary
- Chapter 17groff
- Embedding Commands
- Controlling Character Appearance
- Sizes and Line Spacing
- Fonts
- Indenting and Line Length
- Other Character Controls
- Macros
- Using mm
- Paragraphs and Headers
- Lists
- Font Changes
- Footnotes
- Summary
- Chapter 18geqn and gtbl
- geqn
- Executing geqn
- Equations
- Subscripts and Superscripts
- Fractions
- Square Roots
- Summations, Set Theory, and Integrals
- Brackets, Bars, and Piles
- Matrices
- Quoted Text
- Character Changes
- Using geqn
- gtbl
- Executing gtbl
- Options
- Format
- Data
- Examples
- Summary
- Chapter 19TeX and LaTeX
- Typesetting Versus Writing
- TeX
- Simple Text Formatting
- Fonts
- Controlling Spacing
- Page Layout
- Using Groups
- Mathematical Symbols
- Using Figures in Your Document
- Macros
- LaTeX: An Enhancement of TeX
- Defining a LaTeX Document
- Packages
- Using Special Characters
- Putting Structure into a LaTeX Document
- Adding Other Structural Elements
- Working with Figures and Tables
- VirTeX and IniTeX
- Summary
- Chapter 20Printing
- Setting Up a Printer
- Port Names
- Printer Drivers
- Linux Print Commands
- Summary
- Chapter 21Multimedia Linux
- Sound Cards
- Using the PC Speaker
- Configuring a Sound Card
- Troubleshooting the Installation and Configuration
- Applications for Sound Cards
- Joysticks
- Summary
- Part IVGUIs
- Chapter 22Installing and Configuring XFree86
- What Is XFree86?
- XFree86 Software Distribution
- Choosing an X Server
- Installing XFree86 Manually
- Installing XFree86 Using a Script
- Path Environment Variable
- Configuring XFree86
- Where to Put Xconfig or XF86Config
- SuperProbe
- Using ConfigFX86 and fx86config
- The Xconfig and XF86Config Files in Detail
- Pathnames
- Keyboard Settings
- Mouse Definition
- Monitor Model
- Video Cards
- The XFree86 Server
- Testing XFree86 Configurations
- The .xinitrc File
- Summary
- Chapter 23Wabi
- What Can Wabi Do?
- Installing Wabi
- Running Windows 3.x Applications
- Summary
- Chapter 24Ghostscript and Ghostview
- Where to Obtain Ghostscript
- Using Ghostscript
- Ghostview
- Summary
- Part VLinux for Programmers
- Chapter 25gawk
- What Is the gawk Language?
- Files, Records, and Fields
- Pattern-Action Pairs
- Simple Patterns
- Comparisons and Arithmetic
- Strings and Numbers
- Formatting Output
- Changing Field Separators
- Metacharacters
- Calling gawk Programs
- BEGIN and END
- Variables
- Built-In Variables
- Control Structures
- The if Statement
- The while Loop
- The for Loop
- next and exit
- Arrays
- Summary
- Chapter 26Programming in C
- What Is C?
- The GNU C Compiler
- Invoking GCC
- GCC Options
- Optimization Options
- Debugging and Profiling Options
- Debugging GCC Programs with gdb
- Compiling Code for Debugging
- gdb Basic Commands
- Sample gdb Session
- Additional C Programming Tools
- xxgdb
- calls
- cproto
- indent
- gprof
- f2c and p2c
- Summary
- Chapter 27Programming in C++
- What Is C++?
- Why C++?
- Classes of Objects and Methods
- GCC Options
- Debugging and Profiling Options
- GCC C++ Specific Options
- Debugging C++ Applications
- Debugging Virtual Functions
- Debugging Exception Handlers
- Summary of gdb C++ Specific Commands
- GNU C++ Class Libraries
- Streams
- Strings
- Random Numbers
- Data Collection
- Linked Lists
- Plex Classes
- Stacks
- Queues
- Sets
- Summary
- Chapter 28Perl
- What Is Perl?
- Creating and Executing Perl Programs
- Handling Data in Perl
- Variables
- Numbers
- Strings
- File Operators
- Arrays
- Perl Programming Constructs
- Statement Blocks
- if Statements
- unless Statements
- for Statements
- foreach Statements
- while Statements
- until Statements
- Functions
- Passing Arguments to Functions
- Using Return Values
- Perl Operators
- Converting Programs to Perl
- Summary
- Chapter 29Introduction to Tcl and Tk
- What Is Tcl?
- What Is Tk?
- The Tcl Language
- Tcl Variables and Variable Substitution
- Tcl Command Substitution
- Quotes
- The if Command
- The for Command
- The while Command
- The switch Command
- Comments
- The Tk Language Extensions
- Frames
- Buttons
- Menus and Menu buttons
- List Boxes
- Scrollbars
- Summary
- Chapter 30Other Compilers
- Ada
- COBOL
- DSP
- Eiffel
- FORTRAN
- LISP
- Modula-3
- OGI Speech Tools
- Scheme
- Scilab
- Summary
- Chapter 31Smalltalk/X
- What Is Smalltalk/X?
- How to Install Smalltalk/X
- Invoking Smalltalk/X
- Getting Around in ST/X
- The Browsers Option
- The System Browser
- The Class Hierarchy Browser
- Implementors
- Senders
- The Changes Browser
- Directory Browser
- The Workspace Option
- The File Browser Option
- The Projects Option
- The Utilities Option
- The Goodies Option
- The Games & Demos Option
- Editing in Browsers
- Using the Inspector
- Using the Debugger
- Summary
- Part VILinux for System Administrators
- Chapter 32System Administration Basics
- The root Account
- Starting and Stopping the System
- Booting from a Floppy
- Using LILO to Boot
- Shutting Down Linux
- Mounting File Systems
- Mounting a Floppy
- Creating a New File System
- Unmounting File Systems
- Checking File Systems
- Using a File as Swap Space
- Compressing Files with gzip and compress
- Using tar
- Backups
- Setting Up Your System
- Setting the System Name
- Using a Maintenance Disk
- Forgetting the root Password
- Setting the Login Message
- Summary
- Chapter 33Devices
- Character and Block Mode Devices
- Major and Minor Device Numbers
- The mknod Command
- Printer Administration
- The lpd Printing Daemon
- Following a Print Request
- The /etc/printcap File and Spooling Directories
- Adding Printer Devices with mknod
- Managing Printers with lpc
- Managing the Printer Queue with lpq and lprm
- Terminals
- Using Multiport Cards
- Adding Serial Port Terminals
- The Login Process
- What Are /sbin/getty and /etc/gettydefs?
- Terminal Files: /etc/ttys and /etc/inittab
- Terminal Definitions: The /etc/termcap File
- Adding a Terminal
- Using stty and tset
- Resetting a Screwy Terminal
- Adding a Modem
- Summary
- Chapter 34Processes
- What You Need to Know About Processes
- Types of Processes
- Using the ps Command
- ps Command Output
- Login Shells
- For the Superuser
- Useful ps options
- Using kill
- Killing Child Processes
- Killing Rights
- Summary
- Chapter 35Users and Logins
- The Superuser Account
- User Accounts: /etc/passwd
- Usernames
- Passwords
- User ID
- Group ID
- Comments
- Home Directory
- Login Command
- Default System Usernames
- Adding Users
- Deleting Users
- Groups
- Default System Groups
- Adding a Group
- Adding a User to New Groups
- Deleting a Group
- The su Command
- Summary
- Chapter 36SCSI Device Support
- Newer SCSI Standards
- Supported SCSI Devices
- SCSI Device Drivers
- Hard Drives
- CD-ROM Devices
- Tape Drives
- Other Devices
- Troubleshooting SCSI Devices
- Summary
- Chapter 37Networking
- What Is TCP/IP?
- Hardware Requirements
- Configuring Linux Files
- What You Need Before You Start
- Setting Up the Dummy Interface
- Configuration Files
- Testing and Troubleshooting
- The netstat Command
- ping
- Summary
- Chapter 38SLIP and PPP
- Setting Up the Dummy Interface
- Setting Up SLIP
- Configuring SLIP
- dip
- Setting Up PPP
- Setting Up a PPP Account
- Dialing Out with chat
- Running pppd
- Checking Problems
- PPP Authentication
- Using DNS with SLIP and PPP
- Summary
- Chapter 39UUCP
- UUCP Configuration
- Taylor UUCP Configuration
- HDB UUCP Configuration
- A UUCP Connection
- Direct Connections
- Login Scripts
- Changing Access Times
- UUCP Security
- Using UUCP
- Sending Email with UUCP
- Transferring Files with UUCP
- Checking on Transfers
- Summary
- Chapter 40Configuring Linux for Mail
- How Email Works
- Configuring sendmail
- The sendmail.cf File
- Configuration Table Locations
- Building sendmail.cf from sendmail.m4
- Using sendmail Version 8
- smail
- Setting Up smail
- Configuring smail for UUCP
- Modifying Behavior of smail
- Summary
- Chapter 41Configuring Linux for News
- Usenet and News
- NNTP
- Installing the NNTP Server Program
- Configuring nntpd
- Configuring Newsreaders
- Configuring trn
- Configuring tin
- Summary
- Chapter 42Network Security
- Weak Passwords
- File Security
- Modem Access
- Callback Modems
- Modem-Line Problems
- How a Modem Handles a Call
- UUCP
- Local Area Network Access
- Tracking Intruders
- Preparing for the Worst
- Summary
- Chapter 43NFS
- Configuring Linux for NFS
- Configuring Linux Servers
- Configuring Other Linux Servers
- Setting Up a Linux Client
- Summary
- Chapter 44NIS and YP
- Setting Up the NIS Domain
- NIS Daemons
- Setting Up the NIS Master
- Setting Up NIS Slaves
- Setting Up NIS Clients
- Summary
- Chapter 45Backups
- Why Make Backups?
- Backup Media
- Setting a Backup Schedule
- Backup Logs
- Using tar for Backups
- Summary
- Chapter 46cron and at
- Using cron
- Creating a crontab File
- Submitting and Managing crontab Files
- Complex cron Commands
- The at Program
- Summary
- Part VIISetting up an Internet Site
- Chapter 47Setting up an Internet Site
- Connecting to the Internet
- Services You Need
- Direct Connection Through a Gateway
- Connecting Through Another Gateway
- Using a Service Provider
- Summary
- Chapter 48Setting Up an FTP and Anonymous FTP Site
- What Is FTP?
- Using FTP
- How FTP Uses TCP
- Configuring FTP
- Setting Up ftpd
- FTP Logins
- Setting Up the Directories
- Setting Permissions
- Test the System
- A More Secure FTP
- Protecting an Anonymous FTP System
- Summary
- Chapter 49Configuring a WAIS Site
- Compiling and Installing freeWAIS
- Setting Up freeWAIS
- Starting freeWAIS
- Building Your WAIS Indexes
- WAIS Index Files
- The waisindex Command
- Getting Fancy
- Summary
- Chapter 50Setting up a Gopher Service
- Gopher and Linux
- Configuring Gopher
- The gopherd.conf File
- The gopherdlocal.conf File
- Setting Up the Makefile
- WAIS and Gopher
- Setting Up Your Gopher Directories
- Starting Gopher
- Letting the World Know
- Summary
- Chapter 51Configuring a WWW Site
- Web Server Software
- Unpacking the Web Files
- Compiling the Web Software
- Configuring the Web Software
- Starting the Web Software
- Apache
- Using make with Apache Software
- Editing the Configuration File
- Apache httpd Command Flags
- Setting Up Apache for a Simple Web Site
- Summary
- Chapter 52CGI Scripts
- What Is CGI?
- CGI and HTML
- CGI and Perl
- Summary
- Chapter 53HTML Programming Basics
- HTML Authoring Tools
- Developing Web Pages on Windows
- HTML Development on Linux
- Maintaining HTML
- HTML Programming Basics
- What Does HTML Look Like?
- Starting an HTML Document
- Paragraphs
- Hyperlinks
- Lists
- Changing Character Appearances
- A Few Other Tags
- Summary
- Chapter 54Java and JavaScript Basics
- What You Need
- The Java Language
- JavaScript and HTML
- Summary
- Chapter 55Creating a Solid Web Site
- System Response
- Keep Your Web Pages Clean
- Get Your Message Across at the Top of the Page
- Using Multiple Pages
- Using Icons
- Use Links Properly
- Using HTML Tags Properly
- Summary
- Part VIIIAdvanced Programming Topics
- Chapter 56Source Code Control
- make
- A Sample makefile
- Basic makefile Format
- Building Different Versions of Programs
- Forcing Recompiles
- Macros
- Suffix Rules
- RCS
- Deltas
- Creating an RCS file
- Retrieving an RCS File
- Using Keywords
- Retrieving Version Information from an RCS File
- Administering Access
- Comparing and Merging Revisions
- Tying It All Together: Working with make and RCS
- Summary
- Chapter 57Working with the Kernel
- Upgrading and Installing New Kernel Software
- Compiling the Kernel from Source Code
- Adding Drivers to the Kernel
- Upgrading Libraries
- The Linux C Compiler
- Debugging and Profiling Options
- Debugging gcc Programs with gdb
- Summary
- Chapter 58Writing Device Drivers
- Device Drivers
- Interrupts
- Anatomy of a Linux Device Driver
- Headers
- Opening the Device
- Closing the Device
- strategy Functions
- write() Functions
- read() Functions
- start and ioctl Routines
- Using a New Device Driver
- Summary
- Chapter 59The Wine Project
- Current Status of Wine
- Setting Up Wine
- System Requirements
- Where to Get Wine Distribution
- How to Install Wine
- How to Configure Wine Before Building
- How to Build Wine
- Using Wine
- Specifying Configuration Parameters
- Using Command-Line Options
- The Wine Debugger
- How Wine Works
- How Wine Loads Programs
- The Wine Library
- Where Does Wine End and MS-Windows Begin?
- Limitations of Wine
- Software That Works
- Using winestat to Analyze Windows Programs
- Major Pieces That Are Missing from Wine
- Software Unlikely to Ever Work
- Summary
- Chapter 60HylaFAX
- Installing HylaFAX
- Compiling HylaFAX
- Adding Modems
- Sending a Fax
- The sendfax Options
- Cover Pages
- Receiving a Fax
- Summary
- Chapter 61Games
- Which Games Have You Installed?
- X Games
- Games in the xdm Root Menu
- Character-based Games
- Text Adventure Games
- Word Games
- Card Games
- Board Games
- Simulations
- Video Games
- Math Games and Utilities
- Multiplayer Game: Hunt
- Full Graphics Game: Sasteroids
- Other Thinking Games
- Miscellaneous Demos and Utilities
- Summary
- Chapter 62Adabas-D and other Databases
- dBASE-Compatible Databases
- What Is xBase?
- What Is FlagShip?
- Installing FlagShip
- Using FlagShip
- Porting Existing Applications
- dbMan
- Adabas-D
- Installing Adabas-D
- LINCKS
- Other Database Products
- Summary
- Chapter 63StarOffice
- Installing StarOffice
- Starting StarOffice
- StarWriter
- StarCalc
- StarImpress
- Importing and Exporting Files
- Summary
- Chapter 64Lone Star Softwares Lone-Tar
- What Is Lone-Tar?
- Using Lone-Tars Interface
- Installing Lone-Tar
- Backing Up with Lone-Tar
- Verifying Files
- Restoring Files
- Utilities and Environment: Tweaking Lone-Tar
- Summary
Appendix A
Appendix B
Appendix C
Appendix D
Appendix E
Appendix F
Index