You are previewing Open SUSE® 11.0 and SUSE® Linux® Enterprise Server Bible.
O'Reilly logo
Open SUSE® 11.0 and SUSE® Linux® Enterprise Server Bible

Book Description

* Presenting updated coverage of openSUSE 11.0 and SUSE Linux Enterprise Server 11.0, this reference is written by Novell insiders and boasts the most up-to-date information available

* Topics covered include the openSUSE project, command line programs and implementing online services, virtualization, kernel updates, Enterprise Architecture, and more

* Reviews Linux fundamentals such as methodologies, partitions, and file system, and features a new section devoted entirely to end-user needs

* The DVD includes the openSUSE 11.0

Table of Contents

  1. Copyright
  2. About the Authors
  3. Credits
  4. Foreword
  5. Preface
    1. How This Book Is Structured
    2. Conventions Used in This Book
    3. DVD, Web Site, and Source Code
  6. Introduction
    1. Linux History
    2. SUSE History
    3. The SUSE Family of Products
      1. openSUSE
      2. Enterprise
        1. SUSE Linux Enterprise Server
        2. SUSE Linux Enterprise Desktop
        3. Novell Open Enterprise Server
      3. Standards Compliance
        1. LSB
        2. EAL Security Certifications
        3. Carrier Grade Linux
      4. Licenses, Maintenance, and Support
        1. Maintenance
        2. Support
        3. YaST
  7. I. SUSE Linux Basics
    1. 1. Installing SUSE
      1. 1.1. Selecting Your Installation Method
      2. 1.2. Starting Your Installation
        1. 1.2.1. Selecting Boot Options
        2. 1.2.2. Configuring Language Settings
      3. 1.3. Installation Mode
      4. 1.4. Customizing the Installation
        1. 1.4.1. Selecting Your Desktop Environment
        2. 1.4.2. Partitioning Your Disks
        3. 1.4.3. Resizing Existing Operating System Partitions
        4. 1.4.4. Primary and Extended Partitions
        5. 1.4.5. Defining Filesystems
          1. 1.4.5.1. Swap Partitions
          2. 1.4.5.2. The Root Partition
          3. 1.4.5.3. Data Partitions
        6. 1.4.6. Creating a User
        7. 1.4.7. Installation Settings
        8. 1.4.8. Customizing Your Installation
        9. 1.4.9. Selecting Software for Installation
        10. 1.4.10. Selecting a Boot Loader
        11. 1.4.11. Changing the Default Runlevel
      5. 1.5. Running the Installation
        1. 1.5.1. Configuring Your Network Access
          1. 1.5.1.1. Configuring the Default Gateway
        2. 1.5.2. Testing Your Connection and Online Updates
        3. 1.5.3. Configuring Your Modem
        4. 1.5.4. ISDN and ADSL Connections
        5. 1.5.5. Cable Modem Connections
        6. 1.5.6. Wireless Networking
        7. 1.5.7. User Management
        8. 1.5.8. SuSEconfig
        9. 1.5.9. Reviewing the Release Notes
        10. 1.5.10. Configuring Your Hardware
          1. 1.5.10.1. Configuring the Graphics
          2. 1.5.10.2. Configuring Your Sound Card
      6. 1.6. Completing Installation
    2. 2. Linux Fundamentals
      1. 2.1. Command Line 101: The Shell
        1. 2.1.1. Commonly Used Shell Features
        2. 2.1.2. Advanced Shell Features
          1. 2.1.2.1. Environment Variables
          2. 2.1.2.2. Wildcards and Pattern Matching
          3. 2.1.2.3. Connecting Commands and Redirecting Input and Output
      2. 2.2. Getting Help for Linux Commands
      3. 2.3. Working with Files and Directories
        1. 2.3.1. Listing Files
        2. 2.3.2. Copying Files
        3. 2.3.3. Moving and Renaming Files
        4. 2.3.4. Deleting Files and Directories
        5. 2.3.5. Changing Directories
        6. 2.3.6. Making Directories
        7. 2.3.7. Removing Directories
        8. 2.3.8. Making Links to Files or Directories
        9. 2.3.9. Concatenating Files
        10. 2.3.10. Viewing Files with more and less
        11. 2.3.11. Viewing the Start or End of Files
        12. 2.3.12. Searching Files with grep
        13. 2.3.13. Finding Files with find and locate
        14. 2.3.14. Editing Text with vi and emacs
      4. 2.4. Common Administrative Tasks
        1. 2.4.1. Basic User and Group Concepts
        2. 2.4.2. Creating Users and Groups
        3. 2.4.3. Working with File Ownership and Permissions
          1. 2.4.3.1. Numerical Permissions
          2. 2.4.3.2. Changing Ownership and Permissions
          3. 2.4.3.3. Using umask
        4. 2.4.4. Configuring User Preferences
        5. 2.4.5. Mounting and Unmounting Filesystems
      5. 2.5. Working with Software Packages
        1. 2.5.1. Checking What's Installed
        2. 2.5.2. Examining RPM Packages
        3. 2.5.3. Extracting Files from Packages
        4. 2.5.4. Working with Source RPMs
      6. 2.6. Compiling Source Packages
      7. 2.7. Connecting over the Network
      8. 2.8. Backing Up, Restoring, and Archiving Files
        1. 2.8.1. Creating and Reading Simple Archives
        2. 2.8.2. Creating an ISO Image to Burn to CD
    3. 3. Partitions, Filesystems, and Files
      1. 3.1. Partitions
        1. 3.1.1. Types of Partitions
        2. 3.1.2. Creating Partitions
        3. 3.1.3. Updating a Disk's Partition Table
        4. 3.1.4. Changing Partition Types
        5. 3.1.5. Logical Volume Management
      2. 3.2. Filesystems
        1. 3.2.1. EXT2
        2. 3.2.2. EXT3
        3. 3.2.3. ReiserFS
        4. 3.2.4. JFS
        5. 3.2.5. XFS
        6. 3.2.6. VFAT/NTFS
      3. 3.3. Creating Filesystems
        1. 3.3.1. Creating an EXT2 Filesystem
        2. 3.3.2. Creating an EXT3 Filesystem
        3. 3.3.3. Upgrading an EXT2 Filesystem to an EXT3 Filesystem
        4. 3.3.4. Creating a ReiserFS Filesystem
      4. 3.4. Filesystem Comparisons
      5. 3.5. Mounting Filesystems
        1. 3.5.1. Mount Options
          1. 3.5.1.1. Common EXT2 and EXT3 Mount Options
          2. 3.5.1.2. EXT3-Specific Mount Options
          3. 3.5.1.3. ReiserFS Mount Options
          4. 3.5.1.4. General Mount Options
          5. 3.5.1.5. Mounting a CD or DVD
        2. 3.5.2. Mounting Filesystems Automatically
      6. 3.6. Unmounting Filesystems
  8. II. The SUSE System
    1. 4. Booting the System
      1. 4.1. Booting Concepts
        1. 4.1.1. Runlevels
        2. 4.1.2. Switching Runlevels Manually
        3. 4.1.3. Using chkconfig to Control Runlevels
        4. 4.1.4. Customizing Runlevels for Different Types of Systems
      2. 4.2. Boot Managers
        1. 4.2.1. LILO
        2. 4.2.2. GRUB
        3. 4.2.3. Getting Out of Trouble with GRUB
      3. 4.3. Dual Booting
        1. 4.3.1. Installing Windows and Linux on a New System
        2. 4.3.2. Installing Linux on an Existing Windows System
        3. 4.3.3. Manually Partitioning an Existing Windows System
        4. 4.3.4. Sharing Data on Windows and Linux Partitions
          1. 4.3.4.1. Accessing Windows Partitions from Linux
          2. 4.3.4.2. Accessing Linux Partitions from Windows
      4. 4.4. Troubleshooting Booting
        1. 4.4.1. Fixing Boot Problems Using Runlevels
        2. 4.4.2. The SUSE Rescue System
    2. 5. Documentation
      1. 5.1. Finding Help on Your SUSE System
        1. 5.1.1. The SUSE Manuals
        2. 5.1.2. Man Pages
          1. 5.1.2.1. Working with man Page Sections
          2. 5.1.2.2. Working with Man Pages Graphically
        3. 5.1.3. Info Pages
        4. 5.1.4. The KDE Help Center
        5. 5.1.5. /usr/share/doc/packages/
        6. 5.1.6. Other Documentation Packages
      2. 5.2. Linux Documentation Project Resources
        1. 5.2.1. FAQs
        2. 5.2.2. HOWTOs
        3. 5.2.3. Linux Documentation Project Guides
        4. 5.2.4. The SUSE Books Package
      3. 5.3. Finding Help Online
        1. 5.3.1. The openSUSE Web Site
        2. 5.3.2. The Novell Customer Center
        3. 5.3.3. openSUSE Public Mailing Lists
        4. 5.3.4. The Unofficial SUSE FAQ
        5. 5.3.5. Other Unofficial SUSE Help Sites
        6. 5.3.6. Other SUSE Documents
        7. 5.3.7. Topic-Specific Sites
          1. 5.3.7.1. Scanners
          2. 5.3.7.2. Printing
          3. 5.3.7.3. Winmodems
          4. 5.3.7.4. Wireless Support
          5. 5.3.7.5. Graphics
          6. 5.3.7.6. Major Software Projects
        8. 5.3.8. Finding Software
        9. 5.3.9. IBM
        10. 5.3.10. Other Distributions
        11. 5.3.11. News Sites
        12. 5.3.12. IRC
        13. 5.3.13. Local User Groups
      4. 5.4. Finding Further Information
    3. 6. Understanding Your Linux Network
      1. 6.1. Internet 101
      2. 6.2. TCP/IP
        1. 6.2.1. The ISO OSI Model
        2. 6.2.2. The DoD Model
        3. 6.2.3. IP Addresses
          1. 6.2.3.1. Special IP Addresses
          2. 6.2.3.2. Non-Routable IP Addresses
          3. 6.2.3.3. Subnetting
      3. 6.3. Routing
    4. 7. Logging
      1. 7.1. The Files in /var/log
      2. 7.2. Logging with syslog
      3. 7.3. Logging with syslog-ng
        1. 7.3.1. The Log Source
        2. 7.3.2. The Filter
        3. 7.3.3. The Log Destination
        4. 7.3.4. The Log Definition — Tying It All Together
      4. 7.4. Managing Your Logs with logrotate
      5. 7.5. Analyzing Your Logs with logcheck
      6. 7.6. Using Webalizer
      7. 7.7. Reading Log Files
    5. 8. The X Window System
      1. 8.1. X Window System Concepts
        1. 8.1.1. Window Managers
        2. 8.1.2. KDE and GNOME
      2. 8.2. Configuring X
        1. 8.2.1. Getting Hardware Information
        2. 8.2.2. Using sax2
        3. 8.2.3. Framebuffer Graphics
        4. 8.2.4. Accessing Framebuffer Graphics After Installation
        5. 8.2.5. If X Still Doesn't Start
        6. 8.2.6. Switching Resolutions
        7. 8.2.7. Switching to a Text Console
        8. 8.2.8. Copy and Paste in X
        9. 8.2.9. User Preferences in X
        10. 8.2.10. Using X Remotely
          1. 8.2.10.1. Displaying an Application Remotely
          2. 8.2.10.2. Using the DISPLAY Environment Variable
          3. 8.2.10.3. The Display Manager
          4. 8.2.10.4. Remote Graphical Login
          5. 8.2.10.5. Remote Graphical Connection from Windows
            1. 8.2.10.5.1. Desktop Sharing
            2. 8.2.10.5.2. Cygwin/X
        11. 8.2.11. Diskless X Terminals
      3. 8.3. KDE
        1. 8.3.1. Konqueror
          1. 8.3.1.1. Power Browsing with Split Windows
          2. 8.3.1.2. Web Shortcuts
          3. 8.3.1.3. Browser Identification
          4. 8.3.1.4. Konqueror as a File Manager
        2. 8.3.2. The KDE Control Center
          1. 8.3.2.1. Appearance and Themes
          2. 8.3.2.2. File Associations
          3. 8.3.2.3. Login Manager
          4. 8.3.2.4. YaST Modules
          5. 8.3.2.5. Multiple Desktops
        3. 8.3.3. KDE Applications
      4. 8.4. GNOME
        1. 8.4.1. Nautilus
        2. 8.4.2. Firefox
        3. 8.4.3. Evolution
        4. 8.4.4. Gnucash
        5. 8.4.5. AbiWord
        6. 8.4.6. Gnumeric
      5. 8.5. Other Window Managers
        1. 8.5.1. FVWM2
        2. 8.5.2. Blackbox
        3. 8.5.3. IceWM
        4. 8.5.4. XFCE
        5. 8.5.5. Window Maker
      6. 8.6. Xgl and Compiz
        1. 8.6.1. Setting Up Desktop Effects
    6. 9. Configuring the System with YaST
      1. 9.1. YaST Modules
      2. 9.2. Configuring Installation Sources
      3. 9.3. Setting Up Proxy Settings
      4. 9.4. Using NTP Time Services
      5. 9.5. Printer Configuration
      6. 9.6. Setting Up a Scanner
      7. 9.7. Boot Loader Configuration
      8. 9.8. Setting Up SCPM
      9. 9.9. Runlevel Editor
      10. 9.10. Users and Groups
        1. 9.10.1. Adding or Editing Users
        2. 9.10.2. Adding or Editing Groups
      11. 9.11. Installing Additional Software with YaST
      12. 9.12. YOU — The YaST Online Update
        1. 9.12.1. YOU on SUSE Professional and on SLES
        2. 9.12.2. opensuse-updater
        3. 9.12.3. The YaST Online Update Module
        4. 9.12.4. YOU Dangers
      13. 9.13. The YaST Installation Server Module
        1. 9.13.1. Setting Up an Installation Server
        2. 9.13.2. Installing from the Installation Server
      14. 9.14. Autoinstallation — AutoYaST
        1. 9.14.1. Principles
        2. 9.14.2. Mode of Operation
        3. 9.14.3. The YaST Autoinstallation Module
        4. 9.14.4. Using Pre-Install, chroot, and Post-Install Scripts
        5. 9.14.5. Further Information
  9. III. Using the Command Line in SUSE Linux
    1. 10. Text Manipulation
      1. 10.1. Reading Lines from Files
        1. 10.1.1. cat
          1. 10.1.1.1. Numbering Lines in a File
          2. 10.1.1.2. Replacing Blank Lines and Tabs
          3. 10.1.1.3. Making Sense of Binary Files
        2. 10.1.2. tac
        3. 10.1.3. zcat
        4. 10.1.4. head
        5. 10.1.5. tail
        6. 10.1.6. expand
        7. 10.1.7. nl
        8. 10.1.8. uniq
        9. 10.1.9. sort
      2. 10.2. Extracting Lines from Files
        1. 10.2.1. grep
          1. 10.2.1.1. grep Options
          2. 10.2.1.2. Extended Regular Expressions and grep
        2. 10.2.2. zgrep
        3. 10.2.3. grepmail
        4. 10.2.4. sgrep
        5. 10.2.5. split
        6. 10.2.6. csplit
      3. 10.3. Working with Fields from Text Files
        1. 10.3.1. cut
        2. 10.3.2. paste
        3. 10.3.3. join
        4. 10.3.4. awk
        5. 10.3.5. wc
      4. 10.4. Replacing Text
        1. 10.4.1. sed
        2. 10.4.2. tr
        3. 10.4.3. dos2unix and unix2dos
      5. 10.5. Formatting Text Files for Viewing and Printing
        1. 10.5.1. pr
        2. 10.5.2. fold
        3. 10.5.3. fmt
        4. 10.5.4. groff-Tascii
        5. 10.5.5. a2ps
        6. 10.5.6. enscript
      6. 10.6. Comparing Files
        1. 10.6.1. cmp
        2. 10.6.2. diff and patch
      7. 10.7. Getting Text Out of Other File Formats
        1. 10.7.1. antiword
        2. 10.7.2. ps2ascii
        3. 10.7.3. pdftotext
        4. 10.7.4. ps2pdf
        5. 10.7.5. dvi2tty
        6. 10.7.6. detex
        7. 10.7.7. acroread and xpdf
        8. 10.7.8. html2text
        9. 10.7.9. strings
    2. 11. Text Editors
      1. 11.1. The Politics
      2. 11.2. vi/vim
        1. 11.2.1. Using Command Mode
        2. 11.2.2. Moving Around the Text
          1. 11.2.2.1. Moving to the Start and End of a File
          2. 11.2.2.2. Moving Around a Line of Text
        3. 11.2.3. Deleting Text
          1. 11.2.3.1. Deleting More Than One Character at a Time
          2. 11.2.3.2. Undoing and Redoing
          3. 11.2.3.3. Removing Multiple Times
        4. 11.2.4. Copying and Pasting
        5. 11.2.5. Inserting and Saving Files
        6. 11.2.6. Searching and Replacing
        7. 11.2.7. Using the vim Initialization File
        8. 11.2.8. Exiting vim
      3. 11.3. emacs
        1. 11.3.1. What to Install
        2. 11.3.2. Starting emacs
        3. 11.3.3. Controlling emacs
          1. 11.3.3.1. Moving Around
          2. 11.3.3.2. Undo
          3. 11.3.3.3. Replacing Text
          4. 11.3.3.4. Searching
          5. 11.3.3.5. Making Corrections
        4. 11.3.4. Using Word Completion
        5. 11.3.5. Using Command Completion and History
        6. 11.3.6. emacs Modes
        7. 11.3.7. Using the Calendar
        8. 11.3.8. Customizing emacs
          1. 11.3.8.1. Changing Key Bindings
          2. 11.3.8.2. Setting Variables
          3. 11.3.8.3. Specifying Modes and File Associations
          4. 11.3.8.4. Defining Your Own Functions
        9. 11.3.9. More Information
    3. 12. Working with Packages
      1. 12.1. Binary RPMs
        1. 12.1.1. Installing an RPM
        2. 12.1.2. Querying RPM Packages
          1. 12.1.2.1. Listing Files in an RPM
          2. 12.1.2.2. Finding What RPM Package Owns a File
          3. 12.1.2.3. Listing the RPM Packages Installed on a System
        3. 12.1.3. Removing Installed Packages
        4. 12.1.4. Verifying an RPM
      2. 12.2. Creating an RPM
        1. 12.2.1. Distribution RPMS
        2. 12.2.2. Source Code
        3. 12.2.3. The RPM Environment
        4. 12.2.4. The Spec File
          1. 12.2.4.1. The RPM Header
          2. 12.2.4.2. The RPM %prep Section
          3. 12.2.4.3. The %build Macro
          4. 12.2.4.4. The %clean Macro
          5. 12.2.4.5. The %files Macro
        5. 12.2.5. Compiling an RPM from the Spec File
        6. 12.2.6. Checking the Finished RPM
      3. 12.3. Installation Sources
        1. 12.3.1. YaST's Installation Sources Module
        2. 12.3.2. 1-Click Installation
      4. 12.4. Command-Line Installation Tools
        1. 12.4.1.
          1. 12.4.1.1. rug Options
          2. 12.4.1.2. zypper Options
    4. 13. Working with Files
      1. 13.1. Listing, Copying, and Moving Files
        1. 13.1.1. The Command-Line Tools
          1. 13.1.1.1. Using ls
          2. 13.1.1.2. Using mv
          3. 13.1.1.3. Using rm
        2. 13.1.2. File Managers
          1. 13.1.2.1. Konqueror as a File Manager
          2. 13.1.2.2. Nautilus as a File Manager
          3. 13.1.2.3. mc as a File Manager
          4. 13.1.2.4. Disk Space Usage
      2. 13.2. Finding Files
        1. 13.2.1. Using find
        2. 13.2.2. Using locate
        3. 13.2.3. Using Konqueror to Find Files
        4. 13.2.4. Finding Files in GNOME
        5. 13.2.5. Finding Files in mc
        6. 13.2.6. Finding Files by Content: Beagle
      3. 13.3. Looking at Files and File Types
        1. 13.3.1. The file Command
        2. 13.3.2. strings, ghex, khexedit, and antiword
        3. 13.3.3. Viewing and Opening Different File Types and Formats
          1. 13.3.3.1. PostScript
          2. 13.3.3.2. PDF
          3. 13.3.3.3. DVI
          4. 13.3.3.4. TeX and LaTeX Files
          5. 13.3.3.5. HTML
          6. 13.3.3.6. Graphics Formats
          7. 13.3.3.7. Sound and Multimedia Formats
          8. 13.3.3.8. CSV Files
          9. 13.3.3.9. XML Files
          10. 13.3.3.10. Office Formats
            1. 13.3.3.10.1. Working with Excel Files
            2. 13.3.3.10.2. Working with Access Files
            3. 13.3.3.10.3. The OpenOffice.org File Formats
      4. 13.4. Compressing Files
      5. 13.5. Working with Archives
        1. 13.5.1. Working with tar Archives
          1. 13.5.1.1. Using gzip Compression with tar
          2. 13.5.1.2. Using bzip2 Compression with tar
          3. 13.5.1.3. Unpacking tar Archives
          4. 13.5.1.4. Working with a Source Code tar Archive
          5. 13.5.1.5. Copying a Directory Tree with tar
        2. 13.5.2. Working with cpio Archives
        3. 13.5.3. Working with zip Archives
        4. 13.5.4. Unpacking RPM Packages
        5. 13.5.5. Using pax
        6. 13.5.6. Using ark
      6. 13.6. Files Attributes and ACLs
        1. 13.6.1. File Attributes
        2. 13.6.2. File ACLs
    5. 14. Working with the System
      1. 14.1. System Rescue and Repair
        1. 14.1.1. Booting from the Hard Disk with Special Boot Parameters
        2. 14.1.2. Booting into the Rescue System
        3. 14.1.3. Booting into YaST System Repair Mode
          1. 14.1.3.1. The Customized Repair Screen
          2. 14.1.3.2. The Expert Tools Screen
      2. 14.2. Working with Partitions
        1. 14.2.1. Partitioning Examples
          1. 14.2.1.1. fdisk
          2. 14.2.1.2. Using YaST
          3. 14.2.1.3. Using parted
          4. 14.2.1.4. Commercial Partitioning Utilities
          5. 14.2.1.5. The openSUSE Live CDs
          6. 14.2.1.6. Using Third-Party Linux Live CDs or DVDs
        2. 14.2.2. Making a Filesystem
      3. 14.3. Working with DVDs, CDs, and Floppies
        1. 14.3.1. Creating and Using Images of Existing Disks
        2. 14.3.2. Creating and Using New Disk Images
        3. 14.3.3. Creating ISO CD and DVD Images
        4. 14.3.4. Burning CDs from the Command Line
        5. 14.3.5. Burning CDs and DVDs Using k3b
      4. 14.4. Automating Tasks
        1. 14.4.1. Shell Aliases
        2. 14.4.2. Writing Shell Scripts
          1. 14.4.2.1. Shell Variables
          2. 14.4.2.2. File Tests
          3. 14.4.2.3. Cases
          4. 14.4.2.4. Mailing from a Script
          5. 14.4.2.5. The Limits of Shell Scripting
          6. 14.4.2.6. Shell Script Resources
        3. 14.4.3. Scripting Languages
          1. 14.4.3.1. Squid Log Reader Scripting Example
            1. 14.4.3.1.1. Python Version
            2. 14.4.3.1.2. Perl Version
          2. 14.4.3.2. Comments and Resources
            1. 14.4.3.2.1. Python Resources
            2. 14.4.3.2.2. Perl Resources
    6. 15. Linux Networking
      1. 15.1. Configuring an IP Network
        1. 15.1.1. ifconfig
          1. 15.1.1.1. Configuring an Interface with ifconfig
          2. 15.1.1.2. Virtual Interfaces
        2. 15.1.2. Setting Up Your Routes
          1. 15.1.2.1. Other Routes
          2. 15.1.2.2. routed
        3. 15.1.3. Using iproute2
          1. 15.1.3.1. Configuring Your Network Card
          2. 15.1.3.2. Configuring Your Network Address
          3. 15.1.3.3. Configuring Your Routing
      2. 15.2. The Wonderful World of ARP
      3. 15.3. Taking Part in an IPX Network
      4. 15.4. Network Tools
        1. 15.4.1. Using Telnet
          1. 15.4.1.1. Using Telnet for Virtual Terminal Services
          2. 15.4.1.2. Using Telnet for Testing
        2. 15.4.2. Using SSH
          1. 15.4.2.1. Using SSH for Virtual Terminal Services
          2. 15.4.2.2. Public and Private Keys
          3. 15.4.2.3. Using Secure Copy
        3. 15.4.3. rsync
        4. 15.4.4. wget
        5. 15.4.5. Tracing Packets on the Network
      5. 15.5. Network Troubleshooting
        1. 15.5.1. ping
        2. 15.5.2. traceroute
      6. 15.6. Wireless Networking
        1. 15.6.1. ndiswrapper
        2. 15.6.2. Configuring Your Wireless Network
          1. 15.6.2.1. User-Controlled Network Access Using NetworkManager
      7. 15.7. Bluetooth
  10. IV. Implementing Network Services in SUSE Linux
    1. 16. Setting Up a Web Site with the Apache Web Server
      1. 16.1. Configuring Apache
        1. 16.1.1. Apache Packages in SUSE
        2. 16.1.2. Starting Apache for the First Time
        3. 16.1.3. The Apache Configuration Files
        4. 16.1.4. Global Directives
        5. 16.1.5. Main Server
        6. 16.1.6. Virtual Hosts
      2. 16.2. Security
        1. 16.2.1. Setting Up User Access
        2. 16.2.2. Setting Up Group Access
      3. 16.3. The Common Gateway Interface
      4. 16.4. Creating Dynamic Content with PHP
      5. 16.5. Configuration Using YaST
    2. 17. Mail Servers — Postfix, Sendmail, Qpopper, and Cyrus
      1. 17.1. How Mail Is Sent and Received
        1. 17.1.1. Testing an MTA from the Command Line
      2. 17.2. Postfix
        1. 17.2.1. Postfix Configuration
          1. 17.2.1.1. Configuration Parameters
            1. 17.2.1.1.1. queue_directory
            2. 17.2.1.1.2. command_directory
            3. 17.2.1.1.3. daemon_directory
            4. 17.2.1.1.4. mail_owner
            5. 17.2.1.1.5. unknown_local_recipient_reject_code
            6. 17.2.1.1.6. debug_peer_level
            7. 17.2.1.1.7. debugger_command
            8. 17.2.1.1.8. sendmail_path
            9. 17.2.1.1.9. newaliases_path
            10. 17.2.1.1.10. mailq_path
            11. 17.2.1.1.11. setgid_group
            12. 17.2.1.1.12. manpage_directory
            13. 17.2.1.1.13. sample_directory
            14. 17.2.1.1.14. readme_directory
            15. 17.2.1.1.15. mail_spool_directory
            16. 17.2.1.1.16. canonical_maps
            17. 17.2.1.1.17. virtual_maps
            18. 17.2.1.1.18. relocated_maps
            19. 17.2.1.1.19. transport_maps
            20. 17.2.1.1.20. sender_canonical_maps
            21. 17.2.1.1.21. masquerade_exceptions
            22. 17.2.1.1.22. masquerade_classes
            23. 17.2.1.1.23. myhostname
            24. 17.2.1.1.24. program_directory
            25. 17.2.1.1.25. inet_interfaces
            26. 17.2.1.1.26. masquerade_domains
            27. 17.2.1.1.27. mydestination
            28. 17.2.1.1.28. defer_transports
            29. 17.2.1.1.29. disable_dns_lookups
            30. 17.2.1.1.30. relayhost
            31. 17.2.1.1.31. content_filter
            32. 17.2.1.1.32. mailbox_command
            33. 17.2.1.1.33. mailbox_transport
            34. 17.2.1.1.34. smtpd_sender_restrictions
            35. 17.2.1.1.35. smtpd_client_restrictions
            36. 17.2.1.1.36. smtpd_helo_required
            37. 17.2.1.1.37. smtpd_helo_restrictions
            38. 17.2.1.1.38. strict_rfc821_envelopes
            39. 17.2.1.1.39. smtpd_recipient_restrictions
            40. 17.2.1.1.40. smtp_sasl_auth_enable
            41. 17.2.1.1.41. smtpd_use_tls
            42. 17.2.1.1.42. smtp_use_tls
            43. 17.2.1.1.43. alias_maps
            44. 17.2.1.1.44. mailbox_size_limit
            45. 17.2.1.1.45. message_size_limit
        2. 17.2.2. Postfix Terminology and Use
          1. 17.2.2.1. Configuring and Securing Your Relay Policy
          2. 17.2.2.2. Creating Virtual Domains
          3. 17.2.2.3. Presentation to the Outside World
          4. 17.2.2.4. Configuring an Always-On Server
          5. 17.2.2.5. Dial-Up Server Configuration
        3. 17.2.3. Stopping Spam
      3. 17.3. sendmail
        1. 17.3.1. Installing sendmail
        2. 17.3.2. Configuring sendmail
        3. 17.3.3. Starting sendmail
        4. 17.3.4. Getting More Information About sendmail
      4. 17.4. Qpopper
      5. 17.5. Fetchmail
      6. 17.6. Cyrus IMAPD
        1. 17.6.1. Configuring the Cyrus User
        2. 17.6.2. Adding Users to Cyrus
        3. 17.6.3. Creating a Shared Mailbox
        4. 17.6.4. Integrating Cyrus and Postfix
        5. 17.6.5. Setting an Alias for Root's Mail in Cyrus
      7. 17.7. Choosing a Mail Client
        1. 17.7.1. The Command-Line Clients
          1. 17.7.1.1. mail
          2. 17.7.1.2. mutt
        2. 17.7.2. The Graphical Mail Clients
          1. 17.7.2.1. kmail
          2. 17.7.2.2. Evolution
          3. 17.7.2.3. Thunderbird
      8. 17.8. Mail Systems on Linux
    3. 18. Setting Up Windows Interoperability with Samba
      1. 18.1. The Samba Packages
      2. 18.2. Setting Up and Using a Samba Client
        1. 18.2.1. Using a Windows Printer from Linux
      3. 18.3. Setting Up a Samba Server Using YaST
      4. 18.4. Creating and Managing the Samba Password File
      5. 18.5. Working with the Winbind Daemon
      6. 18.6. The Samba Configuration File
      7. 18.7. Using SWAT
    4. 19. Setting Up Printing with CUPS
      1. 19.1. Setting Up a Locally Connected Printer
        1. 19.1.1. Printers Not Listed by YaST
        2. 19.1.2. Unsupported Printers
        3. 19.1.3. Printing from Applications
        4. 19.1.4. Printing from the Command Line
        5. 19.1.5. Canceling a Print Job from the Command Line
          1. 19.1.5.1. lpq
          2. 19.1.5.2. The Commands cancel and lprm
        6. 19.1.6. Setting Up a Simple Print Server on the Local Network
          1. 19.1.6.1. Starting and Stopping the CUPS Server
          2. 19.1.6.2. Checking That the Remote CUPS Server Is Available
        7. 19.1.7. Setting Up a Windows Client to Print to the CUPS Server
        8. 19.1.8. Printing from Linux to Other Types of Remote Printers
          1. 19.1.8.1. Printing to an SMB Network Server
          2. 19.1.8.2. Printing Directly to a Network Printer
        9. 19.1.9. Using the CUPS Web Interface
          1. 19.1.9.1. Working with Classes in CUPS
          2. 19.1.9.2. Allowing Remote Access to the CUPS Web Interface
        10. 19.1.10. The CUPS Command-Line Tools and Configuration Files
          1. 19.1.10.1. lpinfo
          2. 19.1.10.2. lpadmin
          3. 19.1.10.3. lpoptions
          4. 19.1.10.4. lpstat
          5. 19.1.10.5. The CUPS Configuration Files
        11. 19.1.11. The CUPS Logs
          1. 19.1.11.1. access_log
          2. 19.1.11.2. page_log
          3. 19.1.11.3. error_log
        12. 19.1.12. Other Tools
          1. 19.1.12.1. kprinter
          2. 19.1.12.2. xpp
          3. 19.1.12.3. gtklp
      2. 19.2. Documentation
        1. 19.2.1. CUPS Online Documentation
        2. 19.2.2. The CUPS Book
        3. 19.2.3. SUSE Printing Documentation
        4. 19.2.4. IPP Documentation
    5. 20. Configuring and Using DHCP Services
      1. 20.1. DHCP: Mode of Operation
      2. 20.2. DHCP Packages on SUSE
      3. 20.3. Setting Up a DHCP Server Using YaST
        1. 20.3.1. Using the YaST DHCP Server Wizard
        2. 20.3.2. Reconfiguring an Existing DHCP Server in YaST
      4. 20.4. Manually Configuring a DHCP Server
        1. 20.4.1. IP Address Ranges
        2. 20.4.2. Assigning a Default Gateway
        3. 20.4.3. Configuring Name Services
        4. 20.4.4. Configuring Fixed Addresses
        5. 20.4.5. Other Options
        6. 20.4.6. Defining Host Groups
        7. 20.4.7. Specifying Leases
        8. 20.4.8. Other DHCP Options
      5. 20.5. Starting and Stopping DHCP Clients
      6. 20.6. Troubleshooting DHCP Clients and Servers
        1. 20.6.1. Troubleshooting DHCP Clients
        2. 20.6.2. Troubleshooting DHCP Servers
    6. 21. Configuring a DNS Server
      1. 21.1. Some DNS Theory
        1. 21.1.1. Top-Level Domains
        2. 21.1.2. How Does a DNS Search Work?
        3. 21.1.3. Caching
      2. 21.2. Configuring BIND for Caching and Forwarding
        1. 21.2.1. Using dig
        2. 21.2.2. Using host
      3. 21.3. Examining Record Types
      4. 21.4. Working with Zones
        1. 21.4.1. The Start of Authority
          1. 21.4.1.1. The SOA Server
          2. 21.4.1.2. The Hostmaster
          3. 21.4.1.3. The SOA Record
            1. 21.4.1.3.1. The Serial Number
            2. 21.4.1.3.2. The Refresh Rate
            3. 21.4.1.3.3. The Retry Rate
            4. 21.4.1.3.4. The Expiry Time
            5. 21.4.1.3.5. The Time to Live
        2. 21.4.2. The NS Entry
        3. 21.4.3. The Mail Exchanger
        4. 21.4.4. The Address Record
        5. 21.4.5. The CNAME Record
        6. 21.4.6. Adding the Zone to named.conf
      5. 21.5. The Reverse Zone
      6. 21.6. Configuring a DNS Server with YaST
    7. 22. Working with NFS
      1. 22.1. Mounting NFS Filesystems
        1. 22.1.1. Mounting NFS Filesystems at Boot Time
        2. 22.1.2. Using mount Options
        3. 22.1.3. rcnfs start and rcnfs stop
        4. 22.1.4. YaST's NFS Client Module
      2. 22.2. The NFS Server
        1. 22.2.1. The exports File
          1. 22.2.1.1. Setting Root, User, and Group Client Privileges
          2. 22.2.1.2. Creating the exports File with YaST
        2. 22.2.2. The exportfs Command
        3. 22.2.3. The showmount Command
        4. 22.2.4. Problems with Mounting NFS Shares
        5. 22.2.5. NFS Security Considerations
    8. 23. Running an FTP Server on SUSE
      1. 23.1. vsftpd as an Anonymous FTP Server
      2. 23.2. Setting Up User FTP with vsftpd
      3. 23.3. Allowing Uploads
      4. 23.4. Using pure-ftpd
      5. 23.5. Further Information
    9. 24. Implementing Firewalls in SUSE Linux
      1. 24.1. Why Use a Firewall?
      2. 24.2. Configuring a Firewall with iptables
        1. 24.2.1. Implementing an iptables Firewall
          1. 24.2.1.1. iptables Targets
          2. 24.2.1.2. Stateful Firewall
        2. 24.2.2. Setting Your First Rules
        3. 24.2.3. Adding a Rule
        4. 24.2.4. The Order of Rules
      3. 24.3. Network Address Translation
        1. 24.3.1. Source NAT
        2. 24.3.2. Allowing the Packets to be Forwarded
        3. 24.3.3. Destination NAT
      4. 24.4. Redirecting Traffic
      5. 24.5. Allowing ICMP Traffic
      6. 24.6. Allowing Loopback
      7. 24.7. Stopping "Too Frequent" Connections
      8. 24.8. Logging Dropped Packets
      9. 24.9. Using SuSEfirewall2
    10. 25. Network Information and Directory Services
      1. 25.1. Using NIS for Authentication
        1. 25.1.1. Setting Up a NIS Server Using YaST
        2. 25.1.2. Setting Up a NIS Server Manually
        3. 25.1.3. Configuring Clients for NIS
          1. 25.1.3.1. Configuring a NIS Client Using YaST
          2. 25.1.3.2. Configuring a NIS Client Manually
      2. 25.2. Working with LDAP in SUSE
      3. 25.3. What Is LDAP?
        1. 25.3.1. LDAP Objects
        2. 25.3.2. The Hierarchy
      4. 25.4. Implementing the LDAP Server
        1. 25.4.1. Configuring the Administrator
        2. 25.4.2. Testing the LDAP Server
        3. 25.4.3. Adding Information
          1. 25.4.3.1. LDIF
          2. 25.4.3.2. Dissecting an Object
          3. 25.4.3.3. Inserting the LDIF File
        4. 25.4.4. Adding User Data to the LDAP Server
      5. 25.5. Pluggable Authentication Modules
      6. 25.6. Integrating LDAP into Linux
      7. 25.7. Setting the ACL on the LDAP Server
      8. 25.8. How Can LDAP Help You?
    11. 26. Setting Up a Web Proxy with Squid
      1. 26.1. Getting Started with Squid on SUSE
      2. 26.2. User Authentication
      3. 26.3. Restricting Access by Hardware Address
      4. 26.4. The Squid Log
      5. 26.5. Using Squid as a Transparent Proxy
      6. 26.6. Using Cache Manager
      7. 26.7. Using squidGuard
  11. V. SUSE Linux in the Enterprise
    1. 27. Enterprise Architecture
      1. 27.1. A Typical Organization
        1. 27.1.1. Where Can Linux Be Used?
          1. 27.1.1.1. The Datacenter
          2. 27.1.1.2. Infrastructure
          3. 27.1.1.3. Embedded Systems
        2. 27.1.2. I Know Where, but How?
        3. 27.1.3. Fulfilling Your Staff Requirements
      2. 27.2. Linux Enterprise Hardware: The Big Players
        1. 27.2.1. IBM
          1. 27.2.1.1. The zSeries
          2. 27.2.1.2. The pSeries
        2. 27.2.2. Hewlett-Packard
        3. 27.2.3. 64-bit Platforms
        4. 27.2.4. Blade Technology
        5. 27.2.5. Hardware and Software Certification and Support
      3. 27.3. Putting It All Together
        1. 27.3.1. Where Do I Put the Services?
          1. 27.3.1.1. The Firewall
          2. 27.3.1.2. User Accounts
          3. 27.3.1.3. File and Print Services
          4. 27.3.1.4. The Web Proxy
        2. 27.3.2. Storage Area Networks
          1. 27.3.2.1. Network Attached Storage
          2. 27.3.2.2. iSCSI
          3. 27.3.2.3. Accessing a SAN in Linux
          4. 27.3.2.4. The LUN
          5. 27.3.2.5. Shared Storage
          6. 27.3.2.6. Using the Qlogic Driver
        3. 27.3.3. Virtualize Everything!
        4. 27.3.4. Disaster Recovery
          1. 27.3.4.1. Setting Up a DRBD Pair
            1. 27.3.4.1.1. DRBD Protocols
            2. 27.3.4.1.2. Defining Your Hosts
          2. 27.3.4.2. Using DRBD
        5. 27.3.5. High Availability and Failover
    2. 28. Emulation and Virtualization
      1. 28.1. Emulation Versus Virtualization
      2. 28.2. DOS Emulation Using dosemu and dosbox
        1. 28.2.1. dosemu
        2. 28.2.2. dosbox
      3. 28.3. Running Microsoft Windows Applications with Wine
      4. 28.4. The bochs PC Emulator
      5. 28.5. Virtual Machines Using QEMU
        1. 28.5.1. Installing and Running QEMU
          1. 28.5.1.1. Using the Network in QEMU
          2. 28.5.1.2. QEMU Summary
      6. 28.6. VMware Virtual Machines
        1. 28.6.1. VMware Server
          1. 28.6.1.1. VMware Server Installation
          2. 28.6.1.2. Starting VMware
          3. 28.6.1.3. VMware Server Compared with QEMU
          4. 28.6.1.4. VMware Enterprise Products
      7. 28.7. VirtualBox
      8. 28.8. The Xen Hypervisor
        1. 28.8.1. Hardware-Assisted Virtualization
        2. 28.8.2. Configuration Files and Command-Line Tools
          1. 28.8.2.1. Migration
          2. 28.8.2.2. More Information
      9. 28.9. Other Emulators
    3. 29. The Kernel
      1. 29.1. Why You Probably Don't Need This Chapter
      2. 29.2. Why You Might Need This Chapter
      3. 29.3. SUSE Kernels and Vanilla Kernels
        1. 29.3.1. Kernel Version Numbers
        2. 29.3.2. The Binary Kernel Packages
        3. 29.3.3. What Kernel Am I Running?
      4. 29.4. Upgrading a Kernel Package
      5. 29.5. Kernel Configuration
      6. 29.6. Building the Kernel
      7. 29.7. Kernel Module Packages and Third-Party Software
        1. 29.7.1. Tainting the Kernel
        2. 29.7.2. Loading Kernel Modules
      8. 29.8. Kernel Parameters at Boot Time
      9. 29.9. The Initial Ramdisk
    4. 30. Business Desktop Linux: SLED
      1. 30.1. The Technical Background
      2. 30.2. The Stubborn Applications
      3. 30.3. Other Commercial Desktop Distributions
      4. 30.4. Other Approaches
      5. 30.5. SLD, NLD, and SLED
      6. 30.6. The Future of SLED and the Linux Desktop
      7. 30.7. For More Information
  12. A. What's on the DVD
    1. A.1. System Requirements
    2. A.2. What's on the DVD
    3. A.3. Troubleshooting
      1. A.3.1. Customer Care