Running Linux, 5th Edition By Matthias Kalle Dalheimer, Matt Welsh Publisher: O'Reilly Pub Date: December 2005 ISBN: 0-596-00760-4 Pages: 972 Table of Contents | Index You may be contemplating your first Linux installation Or you may have been using Linux for years and need to know more about adding a network printer or setting up an FTP server Running Linux, now in its fifth edition, is the book you'll want on hand in either case Widely recognized in the Linux community as the ultimate getting-started and problem-solving book, it answers the questions and tackles the configuration issues that frequently plague users, but are seldom addressed in other books This fifth edition of Running Linux is greatly expanded, reflecting the maturity of the operating system and the teeming wealth of software available for it Hot consumer topics such as audio and video playback applications, groupware functionality, and spam filtering are covered, along with the basics in configuration and management that always have made the book popular Running Linux covers basic communications such as mail, web surfing, and instant messaging, but also delves into the subtleties of network configuration including dial-up, ADSL, and cable modems in case you need to set up your network manually The book can make you proficient on office suites and personal productivity applications and also tells you what programming tools are available if you're interested in contributing to these applications Other new topics in the fifth edition include encrypted email and filesystems, advanced shell techniques, and remote login applications Classic discussions on booting, package management, kernel recompilation, and X configuration have also been updated The authors of Running Linux have anticipated problem areas, selected stable and popular solutions, and provided clear instructions to ensure that you'll have a satisfying experience using Linux The discussion is direct and complete enough to guide novice users, while still providing the additional information experienced users will need to progress in their mastery of Linux Whether you're using Linux on a home workstation or maintaining a network server, Running Linux will provide expert advice just when you need it Running Linux, 5th Edition By Matthias Kalle Dalheimer, Matt Welsh Publisher: O'Reilly Pub Date: December 2005 ISBN: 0-596-00760-4 Pages: 972 Table of Contents | Index Copyright Preface Organization of This Book Conventions Used in This Book Using Code Examples How to Contact Us Safari® Enabled Acknowledgments Part I: Enjoying and Being Productive on Linux Chapter 1 Introduction to Linux Section 1.1 About This Book Section 1.2 Who's Using Linux? Section 1.3 System Features Section 1.4 About Linux's Copyright Section 1.5 Open Source and the Philosophy of Linux Section 1.6 Sources of Linux Information Section 1.7 Getting Help Chapter 2 Preinstallation and Installation Section 2.1 Distributions of Linux Section 2.2 Preparing to Install Linux Section 2.3 Post-Installation Procedures Section 2.4 Running into Trouble Chapter 3 Desktop Environments Section 3.1 Why Use a Graphical Desktop? Section 3.2 The K Desktop Environment Section 3.3 KDE Applications Section 3.4 The GNOME Desktop Environment Section 3.5 GNOME Applications Chapter 4 Basic Unix Commands and Concepts Section 4.1 Logging In Section 4.2 Setting a Password Section 4.3 Virtual Consoles Section 4.4 Popular Commands Section 4.5 Shells Section 4.6 Useful Keys and How to Get Them to Work Section 4.7 Typing Shortcuts Section 4.8 Filename Expansion Section 4.9 Saving Your Output Section 4.10 What Is a Command? Section 4.11 Putting a Command in the Background Section 4.12 Remote Logins and Command Execution Section 4.13 Manual Pages Section 4.14 Startup Files Section 4.15 Important Directories Section 4.16 Basic Text Editing Section 4.17 Advanced Shells and Shell Scripting Chapter 5 Web Browsers and Instant Messaging Section 5.1 The World Wide Web Section 5.2 Instant Messaging Chapter 6 Electronic Mail Clients Section 6.1 Using KMail Section 6.2 Using Mozilla Mail & News Section 6.3 Getting the Mail to Your Computer with fetchmail Section 6.4 OpenPGP Encryption with GnuPG Chapter 7 Games Section 7.1 Gaming Section 7.2 Quake III Section 7.3 Return to Castle Wolfenstein Section 7.4 Unreal Tournament 2004 Section 7.5 Emulators Section 7.6 Frozen Bubble Section 7.7 Tux Racer Chapter 8 Office Suites and Personal Productivity Section 8.1 Using OpenOffice Section 8.2 KOffice Section 8.3 Other Word Processors Section 8.4 Synching PDAs Section 8.5 Groupware Section 8.6 Managing Your Finances Chapter 9 Multimedia Section 9.1 Multimedia Concepts Section 9.2 Kernel and Driver Issues Section 9.3 Embedded and Other Multimedia Devices Section 9.4 Desktop Environments Section 9.5 Windows Compatibility Section 9.6 Multimedia Applications Section 9.7 Multimedia Toolkits and Development Environments Section 9.8 Solutions to Common Problems Section 9.9 References Part II: System Administration Chapter 10 System Administration Basics Section 10.1 Maintaining the System Section 10.2 Managing Filesystems Section 10.3 Managing Swap Space Section 10.4 The /proc Filesystem Section 10.5 Device Files Section 10.6 Scheduling Recurring Jobs Using cron Section 10.7 Executing Jobs Once Section 10.8 Managing System Logs Section 10.9 Processes Section 10.10 Programs That Serve You Chapter 11 Managing Users, Groups, and Permissions Section 11.1 Managing User Accounts Section 11.2 File Ownership and Permissions Section 11.3 Changing the Owner, Group, and Permissions Chapter 12 Installing, Updating, and Compiling Programs Section 12.1 Upgrading Software Section 12.2 General Upgrade Procedure Section 12.3 Automated and Bulk Upgrades Section 12.4 Upgrading Software Not Provided in Packages Section 12.5 Archive and Compression Utilities Chapter 13 Networking Section 13.1 Networking with TCP/IP Section 13.2 Dial-Up PPP Section 13.3 PPP over ISDN Section 13.4 ADSL Section 13.5 Cable Modems Section 13.6 Network Diagnostics Tools Chapter 14 Printing Section 14.1 Printing Section 14.2 Managing Print Services Chapter 15 File Sharing Section 15.1 Sharing Files with Windows Systems (Samba) Section 15.2 NFS Configuration and NIS Chapter 16 The X Window System Section 16.1 A History of X Section 16.2 X Concepts Section 16.3 Hardware Requirements Section 16.4 Installing X.org Section 16.5 Configuring X.org Section 16.6 Running X Section 16.7 Running into Trouble Section 16.8 X and 3D Chapter 17 System Start and Shutdown Section 17.1 Booting the System Section 17.2 System Startup and Initialization Section 17.3 Single-User Mode Section 17.4 Shutting Down the System Section 17.5 A Graphical Runlevel Editor: KSysV Chapter 18 Configuring and Building the Kernel Section 18.1 Building a New Kernel Section 18.2 Loadable Device Drivers Section 18.3 Loading Modules Automatically Chapter 19 Text Editing Section 19.1 Editing Files Using vi Section 19.2 The (X)Emacs Editor Chapter 20 Text Processing Section 20.1 TeX and LaTeX Section 20.2 XML and DocBook Section 20.3 groff Section 20.4 Texinfo Part III: Programming Chapter 21 Programming Tools Section 21.1 Programming with gcc Section 21.2 Makefiles Section 21.3 Debugging with gdb Section 21.4 Useful Utilities for C Programmers Section 21.5 Using Perl Section 21.6 Java Section 21.7 Python Section 21.8 Other Languages Section 21.9 Introduction to OpenGL Programming Section 21.10 Integrated Development Environments Chapter 22 Running a Web Server Section 22.1 Configuring Your Own Web Server Chapter 23 Transporting and Handling Email Messages Section 23.1 The Postfix MTA Section 23.2 Procmail Section 23.3 Filtering Spam Chapter 24 Running an FTP Server Section 24.1 Introduction Section 24.2 Compiling and Installing Section 24.3 Running ProFTPD Section 24.4 Configuration Part IV: Network Services Chapter 25 Running Web Applications with MySQL and PHP Section 25.1 MySQL Section 25.2 PHP Section 25.3 The LAMP Server in Action Chapter 26 Running a Secure System Section 26.1 A Perspective on System Security Section 26.2 Initial Steps in Setting Up a Secure System Section 26.3 TCP Wrapper Configuration Section 26.4 Firewalls: Filtering IP Packets Section 26.5 SELinux Chapter 27 Backup and Recovery Section 27.1 Making Backups Section 27.2 What to Do in an Emergency Chapter 28 Heterogeneous Networking and Running Windows Programs Section 28.1 Sharing Partitions Section 28.2 Emulation and Virtual Operating Systems Section 28.3 Remote Desktop Access to Windows Programs Section 28.4 FreeNX: Linux as a Remote Desktop Server Appendix A Sources of Linux Information Section A.1 Linux Documentation Project Section A.2 FTP Sites Section A.3 World Wide Web Sites About the Authors Colophon Index Running Linux, Fifth Edition by Matthias Kalle Dalheimer and Matt Welsh Copyright © 2006, 2002, 1999, 1996, 1995 O'Reilly Media, Inc All rights reserved Printed in the United States of America Published by O'Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472 O'Reilly books may be purchased for educational, business, or sales promotional use Online editions are also available for most titles (safari.oreilly.com) For more information, contact our corporate/institutional sales department: (800) 998-9938 or corporate@oreilly.com Editor: Andy Oram Production Editor: Adam Witwer Production Services: Argosy Publishing Cover Designer: Edie Freedman Interior Designer: David Futato Printing History: May 1995: First Edition August 1996: Second Edition August 1999: Third Edition December 2002: Fourth Edition December 2005: Fifth Edition Nutshell Handbook, the Nutshell Handbook logo, and the O'Reilly logo are registered trademarks of O'Reilly Media, Inc The Linux series designations, Running Linux, images of the American West, and related trade dress are trademarks of O'Reilly Media, Inc Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks Where those designations appear in this book, and O'Reilly Media, Inc was aware of a trademark claim, the designations have been printed in caps or initial caps While every precaution has been taken in the preparation of this book, the publisher and authors assume no responsibility for errors or omissions, or for damages resulting from the use of the information contained herein ISBN: 0-596-00760-4 [M] User Datagram Protocol (UDP) user groups user interfaces desktop environments X Window System UserDir directive usernames users dummy and cron home directories, backups logged in, logs multiple RDP Samba, adding /usr directory /usr/bin/mailq command /usr/bin/newaliases command /usr/lib directory, backups and /usr/sbin/sendmail command /usr/src directory, source distributions /usr/src/linux directory kernel sources and backups utilities 2nd archiving and compressing files Autoconf tool Automake cron job control output scheduling recurring jobs tmp directory debuggers dig du enscript file translation gcc C++ debugging libraries optimizing source files imake tool interfaces, building KGhostview makefiles performance printer configuration tool profiling programming SpamAssassin strace tool tar user accounts, creating Windows/MS-DOS compatibility World Wide Web access utmp file Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] [Z] Valgrind package validating keys Samba values, ownertrust /var/log/lastlog file /var/log/utmp file /var/log/wtmp file var/spool/cron/crontabs directory variables instances storage addresses VBA (Visual Basic) vector graphics (Karbon14) Venema, Wietse verifying digital signatures printers compatibility connections 2nd versions control (OOoWriter) Linux, researching modules and building kernel numbers, kernels VFAT filesystems/partitions, mounting vFolders, creating vga= (boot time option) vi editor clones extending overview starting ViaVoice (IBM) video 2nd cards drivers editing PVR viewing core files files toolbars (OOoWriter) views, Page Break View (OOoCalc) virtual consoles 2nd setterm utility virtual hosts (ProFTPD) virtual machines and Windows compatibility virtual memory, support for Virtual Network Connection (VNC) 2nd virtual networks virtual operating systems viruses Visual Basic (VBA) VMware Workstation VNC (Virtual Network Connection) 2nd VoIP (Voice over IP) Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] [Z] w3m browser watch command (gdb) watchpoints 2nd wavetable synthesis web browsers Firefox Mozilla Mozilla Mail & News Netscape Navigator support of w3m Web Of Trust web servers Apache configuring web sites AbiWord application directories downloading Linux Evolution GNOME 2nd kernel version history Linux Documentation Project Linux resources PAM information standards USB devices Windows emulation software web-based configuration, enabling WebCast what command whatis database whitespace width, modifying columns Win4Lin winbindd daemon Window List (GNOME) window managers Windows applications multiple users remote access running compatibility document format support partitions utilities for desktop device driver support emulation software file sharing 2nd 3rd 4th interfaces multimedia compatibility partitions (shares) mounting printing sharing protocols remote access Terminal Services troubleshooting Windows 95, style for KDE windows colors freezing (OOoCalc) GnuCash accounts Kontact management minicli splitting (OOoCalc) Style Settings (OOoWriter) terminal (KDE) web history Windows 2003 servers, configuring Windows Internet Naming System (WINS) Wine applying configuring installing running troubleshooting Windows compatibility Winmodem modem WINS (Windows Internet Naming System) Word Completion feature (OOoWriter), turning off word count feature (OOoWriter) Word files formatting opening saving word processors 2nd OOoWriter configuring customizing overview of workgroups worksheets (OOoCalc) workspaces KDE OOoImpress switcher (GNOME) World Wide Web access configuring server wrappers (TCP) write permission writing manual pages (groff) wtmp file WYSIWYG word processors Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] [Z] X Toolkit Intrinsics (Xt) X Window System 3D applications compatibility with KDE clock Emacs and 2nd hardware LaTeX documents, previewing make xconfig program makefiles overview of 2nd processes servers troubleshooting X.org configuring installing running X-CD-Roast X.org 2nd configuring installing OpenGL, configuring running X11R6 XEmacs 2nd viewing files Xine (media player application) xinetd daemon TCP wrappers xinit program xinitrc file Xmame XML (Extensible Markup Language), text processing Xmms (media player application) xmodmap command XMPP (Extensible Messaging and Presence Protocol) xorg.conf file XP (extreme programming) Xt (X Toolkit Intrinsics) xvidtune program XView interface Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] [Z] Yahoo! Messenger yanking text YaST Online Update yast2 program Index [SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] [Z] Z shell 2nd zcat command Zimmermann, Phil ... David Futato Printing History: May 1995: First Edition August 1996: Second Edition August 1999: Third Edition December 2002: Fourth Edition December 2005: Fifth Edition Nutshell Handbook, the Nutshell Handbook logo, and the...Whether you're using Linux on a home workstation or maintaining a network server, Running Linux will provide expert advice just when you need it Running Linux, 5th Edition By Matthias Kalle Dalheimer, Matt Welsh... Chapter 8: Office Suites and Personal Productivity Chapter 9: Multimedia Chapter 1 Introduction to Linux Welcome to Running Linux, Version 5! When we wrote the first edition of this book, Linux had barely arrived on the scene Our task seemed simple: help readers learn the basics of a new