You are previewing Inside Linux.
O'Reilly logo
Inside Linux

Book Description

With in-depth complete coverage on the installation process, editing and typesetting, graphical user interfaces, programming system administration, and managing Internet sites, Inside Linux is the only book "smart users" new to Linux will need. Many of the users new to Linux have an understanding of computer technology and will be looking for just the right reference to fit their sophisticated needs. This book guides users to a high level of proficiency with all the flavors of Linux, and help them with crucial system administration chores. Inside Linux is different than other books available because it's a unique blend of a how-to and a reference guide.

Table of Contents

  1. Copyright
    1. Dedication
  2. Preface
    1. About the Author
    2. About the Technical Reviewer
    3. Acknowledgments
    4. Tell Us What You Think!
  3. I. Getting Started
    1. 1. Introduction to Linux
      1. The Purpose of This Book
      2. What Is Linux?
      3. Linux: Its Past and Present
      4. The Driving Forces Behind Linux
      5. How Is Linux Used?
      6. The Future of Linux
      7. Linux Distributions
      8. Sources of Linux Information and Documentation
      9. Summary
    2. 2. Installing Linux
      1. Requirements Checklist
        1. System Planning Worksheet
        2. CPU Requirements
        3. Memory Requirements
        4. Bus Architecture Requirements
        5. Video Requirements
        6. Network Card Requirements
        7. Modem Requirements
        8. CD-ROM Requirements
        9. Disk Drive Requirements
        10. Mouse Requirements
        11. Miscellaneous Hardware Requirements
          1. Tape Drives
          2. Printers
      2. Planning Your Installation
        1. Methods of Installation
        2. Multiple Operating Systems on One Machine
        3. Hard Disk Partitioning
      3. Distribution-Specific Installations
        1. Caldera OpenLinux Installation
          1. CD-ROM Installation
        2. Red Hat Linux Installation
          1. Preparation
          2. CD-ROM Installation
        3. Slackware Linux Installation
          1. Hardware Requirements
          2. Required Disk Space
          3. Methods of Installation
            1. Creating the Boot and Root Floppies
            2. Using VIEW
            3. Using RAWRITE
          4. Disk Partitioning
          5. Performing the Installation
        4. SuSE Linux Installation
          1. Installing SuSE
      4. Summary
    3. 3. Using Linux
      1. Linux Startup
      2. Linux Shutdown
        1. Shutdown Commands and Procedures
      3. Logging In to Linux
      4. Logging Out of Linux
      5. Managing User Accounts
        1. Creating an Account
        2. Passwords
        3. Changing Your Password
        4. The Root Account
      6. Moving Around in Linux
        1. Virtual Consoles
        2. Shells and Commands
        3. Executing Commands
        4. Command History
        5. Command Completion
        6. Environment Variables
      7. Using Files and Directories
        1. Understanding Files and Directories
        2. The Directory Tree
        3. Current Working Directory
        4. The Home Directory
      8. Some Basic Commands
        1. Moving Around in the Linux Directory System
        2. Viewing a Directory's Contents
        3. Creating New Directories
        4. Deleting Files and Directories
        5. Viewing Files
        6. Copying Files
        7. Moving Files
        8. Getting Help—The Man Pages
      9. Summary
    4. 4. Installing X Windows
      1. XFree86 Defined
      2. Installing XFree86
        1. Hardware Requirements
          1. Chip Sets
          2. SuperProbe
        2. X Servers
        3. Checking for a Previous Installation
        4. Manual Install
      3. Configuring XFree86
        1. The xf86config Program
        2. The XF86Setup Program
        3. The XF86Config File
          1. Files Section
          2. Modules Section
          3. ServerFlags Section
          4. Keyboard Section
          5. Pointer Section
          6. Monitor Section
          7. Device Section
          8. Screen Section
      4. Summary
    5. 5. Using X Windows
      1. Overview of the Graphical Environment
        1. The Desktop
        2. The Taskbar
        3. The Panel
      2. Navigating X
        1. The Main Menu
      3. Window Managers
        1. AfterStep
        2. Common Desktop Environment (CDE)
        3. Enlightenment
        4. fvwm
        5. fvwm95
        6. GNOME
        7. KDE
        8. LessTif
        9. olwm
        10. olvwm
        11. twm
      4. Exploring the Graphical Environment
      5. KDE
        1. KDE Taskbar
        2. KDE Panel
        3. KDE Main Menu
        4. Virtual Desktops
        5. KDE Sticky Window
        6. KDE Desktop Configuration
          1. Modify a Desktop Setting
          2. Customizing the Panel
        7. Extreme KDE Customization—Themes
        8. Launching Applications
        9. Command-Line Window
        10. KDE File Management
          1. Navigating with kfm
            1. Opening Directories and Files
            2. Copy, Move, and Link
            3. Bookmarks
            4. File History
            5. File Properties
        11. Mounting a Device
        12. Printer Setup
      6. GNOME
        1. GNOME Panel
        2. GNOME Main Menu
        3. The GNOME Pager and Virtual Desktops
        4. GNOME Sticky Window
        5. GNOME Desktop Configuration
          1. Modify a Desktop Setting
        6. Customizing the Panel
        7. Launching Applications
        8. Command-Line Window
        9. GNOME File Management
          1. Navigating with GNOME File Manager
            1. Opening Directories and Files
            2. Copy, Move, and Link
            3. File Properties
      7. Summary
  4. II. Configuration
    1. 6. Network Configuration
      1. TCP/IP Overview
        1. Internet Protocol (IP)
        2. Transmission Control Protocol (TCP)
        3. IP Addresses
        4. The Network Mask and Network Address
        5. Name Server Address
        6. Gateway Address
      2. Hardware Requirements
      3. Configuring TCP/IP
        1. TCP/IP Configuration Overview
        2. Configuration Files
          1. The /etc/HOSTNAME (/etc/hostname) File
          2. The /etc/hosts File
          3. The /etc/networks File
          4. The /etc/host.conf File
          5. The /etc/resolv.conf File
      4. The rc Files
      5. Testing the Network
      6. Summary
    2. 7. Hardware Configuration
      1. Overview
      2. Hard Drives
        1. MFM and RLL Interface
        2. IDE and EIDE Interfaces
        3. Ultra-ATA Controllers
        4. SCSI Controllers
      3. Modems
      4. Mouse
      5. Peripheral Computer Interface (PCI)
      6. Video Cards
        1. XFree86 Checklist
        2. XFree86 Configuration
      7. Serial Ports
        1. Serial Port Naming
        2. Serial Configuration
      8. Sound Cards
        1. SoundBlaster
        2. Alternative Sound Drivers
      9. Summary
  5. III. Linux Services
    1. 8. Email Services: SMTP and POP
      1. Overview
      2. Comprehending Electronic Mail
        1. Mailbox
        2. Electronic Mail Components
          1. Mail User Agent (MUA)
          2. Mail Transfer Agent (MTA)
          3. Mail Delivery Agent (MDA)
        3. Email Message Header and Body
        4. Simple Mail Transfer Protocol (SMTP)
        5. SMTP Envelope and Body
      3. MUA Programs
        1. mailx
        2. elm
        3. mutt
        4. exmh
        5. Netscape
        6. Emacs rmail/smail
        7. BSD mail
      4. Using MUAs
        1. KDE Kmail
        2. Netscape Messenger
      5. The sendmail Package
        1. sendmail Options
        2. Configuring sendmail
          1. Obtaining sendmail
          2. Building the sendmail Package
          3. Building the .cf File
        3. Executing sendmail
      6. Summary
    2. 9. File Transfer Protocol (FTP)
      1. FTP Overview
      2. FTP Commands
        1. FTP Transfer Commands
          1. File Commands for Downloading
          2. File Commands for Uploading
          3. Supplemental Commands for File Transfer
      3. Using FTP
      4. Configuring an FTP Server
        1. Configuring the FTP Daemon: ftpd
        2. Directory Structure for FTP
        3. Directory Permissions
        4. Configuring FTP Logins
        5. Verifying the FTP Setup
      5. Summary
    3. 10. Domain Name Service (DNS)
      1. DNS Overview
      2. DNS Configuration
        1. Setting Up the /etc/host.conf File
          1. Environment Variables
        2. Setting Up the /etc/resolv.conf File
        3. Setting Up named (BIND 4.x)
          1. Configuring the /etc/named.boot File
        4. Starting and Talking to named
      3. Summary
    4. 11. Network Information Service (NIS)
      1. Overview
      2. The NIS Model
      3. Structuring NIS
        1. Naming NIS Domains
        2. NIS Server Allocation
      4. Configuring NIS
        1. Configuring the NIS Master Server
        2. Executing the ypinit Command
        3. Executing ypserv—The Master Server Process
          1. The ypserv.conf Configuration File
        4. Creating a Slave Server
        5. Setting Up an NIS Client Using ypbind
      5. Additional NIS Commands and Files
        1. The ypwhich Command
        2. The ypcat Command
        3. The ypmatch Command
        4. The yppoll Command
        5. The ypxfr Command
        6. The yppush Command
      6. Summary
    5. 12. Network File Service (NFS)
      1. Overview
      2. NFS Design and Architecture
        1. NFS Protocol
        2. Error Recovery
        3. Transport Independence
        4. NFS Client
          1. The Automounter and NFS Namespace
          2. Purpose of the Automounter
        5. NFS Server
      3. NFS and Linux
        1. Setting Up an NFS Server
          1. Preconditions
          2. The NFS Portmapper
          3. The /etc/exports File
          4. The mountd and nfsd Daemons
        2. Exporting Filesystems
      4. Using the NFS Client
        1. The mount Command
          1. Options for mount
      5. Optimizing NFS on Low-Bandwidth Connections
      6. Summary
    6. 13. Dial-Up Networking Services: SLIP and PPP
      1. Serial Line Internet Protocol (SLIP)
        1. SLIP Overview
        2. SLIP Preflight Checklist
          1. Verifying the Loopback Interface
          2. Verifying /etc/resolv.conf File
        3. Setting Up SLIP
          1. Using slattach
          2. Using ifconfig and route
        4. Using dip for SLIP Automation
          1. Sample dip Script
          2. Utilizing dip for Static IP Connectivity
          3. Utilizing dip for Dynamic IP Connectivity
        5. Running diplogin as a SLIP Server
          1. Define Account Entry in /etc/passwd
          2. Define Username Entry in /etc/diphosts
          3. Execute diplogin
      2. Point-to-Point Protocol (PPP)
        1. PPP Overview
        2. PPP Preflight Checklist
          1. Verify DNS Support
        3. Using PPP
          1. Using chat
        4. Using pppd
          1. Option Files for pppd
          2. Script Files for pppd Connections
          3. Testing the PPP Scripts
      3. Summary
    7. 14. UNIX-to-UNIX Copy Program
      1. UUCP Overview
      2. Basic UUCP Configuration
        1. Configuration: Taylor UUCP
          1. Check Initial Configuration
          2. Configuration File: config
          3. Configuration File: sys
          4. Configuration File: port
          5. Configuration File: call
          6. Configuration File: dial
          7. Configuration File: dialcodes
          8. Configuration File: password
          9. Verify the Configuration
        2. Configuration: HoneyDanBer (HDB) UUCP
          1. Configuration File: Systems
          2. Configuration File: Devices
          3. Configuration File: Dialers
          4. Configuration File: Permissions
      3. A UUCP Session
        1. Overview of the uucp Command
          1. UUCP Scripts
        2. Sample uucp Dialogs
        3. UUCP Status
      4. Summary
    8. 15. Samba: Merging Linux and Windows
      1. Overview
      2. Obtaining and Installing Samba
        1. Checking for the Existence of Samba
        2. Installing Samba
      3. Configuring Samba
        1. Configuring for the Samba Web Administration Tool (SWAT)
        2. The smb.conf Configuration File
          1. Variable Substitution
          2. Use of Name Mangling
        3. Using SWAT
      4. Executing Samba
        1. The smbd daemon
        2. The nmbd daemon
      5. Using smbclient
      6. Summary
    9. 16. Apache Web Server
      1. Apache Overview
      2. Choosing an Apache Package
      3. Obtaining and Installing Apache
        1. Beginning the Apache Installation
        2. Building Apache the Easy Way
        3. Building Apache the Manual Way
          1. Build Requirements
          2. Modifying the Configuration File
          3. Building Apache
      4. Apache Runtime Configuration
        1. Runtime Configuration Files
      5. Starting and Stopping the Server
        1. Invoking Apache
        2. Stopping and Restarting the Apache Server
      6. Apache Log Files
        1. Apache httpd.pid File
        2. Apache Error Log File
        3. Transfer Log
      7. Special-Purpose Environment Variables
      8. Apache's Handler Use
        1. AddHandler
        2. SetHandler
      9. Summary
    10. 17. Internet News Service
      1. Overview
      2. Basic Usenet Mechanics
        1. Using a Usenet Newsreader
        2. Using krn, the KDE Newsreader
        3. Using Netscape's Newsreader
      3. Common Usenet Terms
      4. NNTP Protocol
        1. NNTP Commands
        2. NNTP Server Responses
        3. Command and Response Details
          1. The ARTICLE Command
          2. The GROUP Command
          3. The HELP Command
          4. The IHAVE Command
          5. The LAST Command
          6. The LIST Command
          7. The NEWGROUPS Command
          8. The NEWNEWS Command
          9. The NEXT Command
          10. The POST Command
          11. The QUIT Command
          12. The SLAVE Command
      5. Configuring the NNTP Server
        1. Restricting NNTP Access
      6. Summary
    11. 18. Print Services
      1. Print Overview
      2. Printer Preliminaries
        1. Printer Type
        2. Printer Language
        3. Printer Interface
      3. Configuring Print Services
        1. Print Commands
          1. lpc
          2. lpd
          3. lpq
          4. lpr
          5. lprm
        2. The /etc/printcap File
        3. The PRINTER Environment Variable
        4. Printer Configuration Under SuSE
        5. Printer Configuration Under Red Hat
      4. Summary
  6. IV. System Administration
    1. 19. The Tools
      1. Overview
      2. Configuration, Maintenance, and Management Tools
        1. Red Hat Package Manager (RPM)
          1. Installing an RPM Package
          2. Querying with RPM
          3. Uninstalling an RPM Package
          4. Updating an RPM Package
          5. Verifying an RPM Package
          6. Graphical RPM: Gnome-RPM
        2. Using YaST Under SuSE (6.3)
        3. Running Linuxconf Under Red Hat 6.1
        4. Running Configuration Tools Under TurboLinux 4.0
      3. Productivity Tools
        1. Running StarOffice
      4. Summary
    2. 20. Booting and Shutdown
      1. Overview
      2. The init Process
      3. Using LILO, the Linux Loader
        1. Configuring LILO
      4. Using LOADLIN, another Linux Loader
        1. LOADLIN Requirements
        2. Easy LOADLIN Setup
        3. Booting Linux Using LOADLIN
      5. Emergency Boot Floppy Disks
      6. Summary
    3. 21. Security
      1. Overview
        1. Intruders
      2. Physical Security
        1. Natural Elements
        2. Physical Elements
          1. BIOS Locks
          2. Computer Locks
        3. System Backup
        4. Decreasing the Risk
      3. Threats to Security Caused by Social Engineering
      4. Authentication
        1. Passwords
          1. Shadow Passwords
        2. Accounts
          1. Command Accounts
          2. Dead Accounts
          3. Default Accounts
          4. Guest Accounts
          5. Password-Free Accounts
        3. Encryption
          1. Kerberos Authentication
          2. Pluggable Authentication Modules (PAM)
      5. File Security
      6. Network Access
        1. Network File System
        2. Network Information Service
        3. Firewalls
        4. Accounting Data
      7. Summary
    4. 22. Managing Accounts
      1. Overview
      2. Managing Users
        1. The /etc/passwd File
        2. Adding a User
          1. Using the adduser Command
          2. Using the useradd Command
        3. Manually Create a New User
        4. Removing a User
          1. Using the userdel Command
        5. Manually Removing a User
      3. Managing Groups
        1. Adding a Group
        2. Modify a Group
        3. Removing a Group
      4. Summary
    5. 23. Other Administrative Tasks
      1. Overview
      2. Root Account
      3. Rotating User Passwords
      4. System Backup and Restoration
        1. Backup Considerations
        2. Backup Tools
          1. Using KDE's KDat
          2. Using YaST Under SuSE
          3. Using the tar Utility
      5. Using cron and crontab Files
      6. System Monitoring
        1. Monitoring the Network
          1. Deception ToolKit (DTK)
          2. Klaxon
          3. Psionic HostSentry
          4. Psionic PortSentry
          5. TCP-WRAPPERS
        2. Monitoring the Filesystem
          1. AIDE
          2. Big Brother
          3. confcollect
          4. Gog&Magog
          5. Nannie
          6. PIKT
          7. Sentinel
          8. SuSEauditdisk
          9. Sxid
          10. Tripwire
          11. ViperDB
        3. Packet Sniffers
          1. tcpdump
          2. Ethereal
          3. Karpski
          4. sniffit
          5. Snort
          6. SPY
        4. Packet Sniffer Detection
          1. AntiSniff
      7. Summary
  7. V. Quick Reference
    1. 24. Utility Programs
      1. Overview
      2. Online Help
        1. The Man Pages
        2. Help Under the bash Shell
      3. Process Commands
        1. Process Status with the ps Command
        2. Using the top Command for Process Status
        3. Using at to Schedule a Process
        4. Process Termination with the kill Command
        5. Using su to Become Another User
      4. Summary
    2. 25. Regular Expressions
      1. Overview
      2. Pattern Matching
      3. Metacharacters
        1. The Dot (.)
        2. The Caret (^)
        3. The Dollar Sign ($)
        4. The Character Class ([…])
        5. The Negated Character Class ([^…])
        6. Repeat Zero or More Times (*)
        7. Repeat One or More Times (+)
        8. Optional (?)
        9. Alternatives (|)
      4. Escaping
      5. Whole Words
      6. Summary
  8. VI. Appendixes
    1. A. Other Sources of Information
      1. Books
        1. General UNIX Books
        2. UNIX Programming Books
      2. Magazines
      3. Usenet Newsgroups
        1. Miscellaneous Linux Newsgroups
        2. UNIX-Related Newsgroups
        3. The X Windows Newsgroups
        4. Networking Newsgroups
        5. Regional Newsgroups
        6. Newsgroup Archives
      4. Mailing Lists
      5. Linux Web Sites
        1. Applications
        2. Architectures
        3. Benchmarks
        4. Commercial Software
        5. Games
        6. Hardware Vendors
        7. HOW-TOs and Information
        8. Linux and Linux-Related Development Projects
        9. Linux Home Pages
        10. Linux Portals
        11. Projects
        12. Security
        13. User Groups
        14. X Windows System
      6. Linux FTP Sites
    2. B. Common Questions
      1. Overview
      2. So What Is Linux?
      3. What Distributions of Linux Are Available?
        1. armedLinux
        2. Caldera OpenLinux
        3. Corel LinuxOS
        4. Debian GNU/Linux
        5. DLX Linux
        6. DragonLinux
        7. easy Information Technology's (eIT) easyLinux
        8. hal91
        9. Linux by LibraNet
        10. Linux Mandrake
        11. LinuxPPC for the PowerPC
        12. LinuxPro by Workgroup Solutions Group (WGS)
        13. LinuxWare by TransAmeritech Systems
        14. LoopLinux (DOS Linux)
        15. MkLinux
        16. Red Hat Linux
        17. Slackware Linux
        18. Stampede GNU/Linux
        19. Storm Linux
        20. SuSE Linux
        21. TurboLinux
        22. Yggdrasil Plug and Play Linux
        23. WinLinux
      4. What Processors Does Linux Run On?
      5. What Are Some of the Requirements of Linux?
      6. Where Can I Get Linux?
      7. Where Can I Find Software for Linux?
      8. Can I Access Data on Drive Types Other Than Linux?
      9. Can I Run Software Written for Other Operating Systems?
      10. Where Can I Get Linux Information on the Internet?
        1. Web Sites
        2. Usenet Newsgroups
        3. FTP Sites
      11. Are Disk and File Utilities Available for Linux?
        1. File Defragmentation
        2. File Compression
        3. File Undelete
      12. What Do I Do If I Forgot the root Password?
      13. How Can I Share Linux/Windows Printers and Filesystems?
      14. How Can I Mount a Windows95 Filesystem?
      15. Do Viruses Exist on Linux?
      16. How Are Linux Passwords Encrypted?
      17. How Large Can a File Be Under Linux?
      18. Are There Comparisons of Linux to Other Operating Systems?
      19. What Is the Legal Status of Linux?
      20. Do I Need to Repartition to Use Linux?
      21. Can I Get Linux Preinstalled on a New Computer?