Table of contents : Cover......Page 1 Table of Contents......Page 6 Introduction......Page 30 Part I: Installation and Configuration......Page 38 Before You Begin the Installation......Page 40 Step-by-Step Installation......Page 42 Reference......Page 53 2 Post-Installation Configuration......Page 54 Troubleshooting Post-Installation Configuration Problems......Page 55 The sudo command......Page 56 First Update......Page 57 Configuring Software Repositories......Page 59 Installing Graphics Drivers......Page 62 Changing Ubuntu’s Look and Feel......Page 63 Preferred Behaviors......Page 66 Input Devices......Page 68 Detecting and Configuring a Modem......Page 71 Configuring Power Management in Ubuntu......Page 72 Setting the Date and Time......Page 73 Configuring and Using CD, DVD, and CD-RW Drives......Page 75 Configuring Wireless Networks......Page 77 Reference......Page 78 3 Working with Gnome......Page 80 The Gnome Desktop Environment......Page 81 Eye Candy for the Masses......Page 83 Basic X Concepts......Page 84 Using X......Page 85 Starting X......Page 93 KDE—The Other Environment......Page 106 Reference......Page 107 What Is the Command Line?......Page 108 Logging In to and Working with Linux......Page 119 Using the Text Editors......Page 124 Working with Permissions......Page 128 Working as Root......Page 133 Reading Documentation......Page 137 Reference......Page 139 Part II: Desktop Ubuntu......Page 140 5 On the Internet......Page 142 Getting Started with Firefox......Page 143 Choosing an Email Client......Page 144 RSS Readers......Page 149 Instant Messaging with Pidgin......Page 152 Internet Relay Chat......Page 153 Usenet Network Newsgroups......Page 156 The Pan News Client Newsreader......Page 157 Videoconferencing with Ekiga......Page 159 Reference......Page 161 6 Productivity Applications......Page 162 Introducing OpenOffice.org......Page 163 Office Suites for Ubuntu......Page 173 Productivity Applications Written for Microsoft Windows......Page 179 Reference......Page 181 Sound and Music......Page 182 Graphics Manipulation......Page 192 Using Digital Cameras with Ubuntu......Page 197 Burning CDs and DVDs in Ubuntu......Page 199 Viewing Video......Page 207 Reference......Page 211 Overview of Ubuntu Printing......Page 214 Configuring and Managing Print Services......Page 216 Creating and Configuring Local Printers......Page 218 Reference......Page 224 Linux Gaming......Page 226 Installing Games in Ubuntu......Page 228 Playing Windows Games with Cedega......Page 233 Reference......Page 234 Part III: System Administration......Page 236 User Accounts......Page 238 Managing Groups......Page 242 Managing Users......Page 245 Managing Passwords......Page 249 Granting System Administrator Privileges to Regular Users......Page 253 Disk Quotas......Page 258 Reference......Page 261 11 Automating Tasks......Page 262 Beginning the Boot Loading Process......Page 263 Starting and Stopping Services Manually......Page 270 Scheduling Tasks......Page 271 Basic Shell Control......Page 277 Writing and Executing a Shell Script......Page 282 Reference......Page 316 Console-Based Monitoring......Page 318 Graphical Process and System Management Tools......Page 325 KDE Process- and System-Monitoring Tools......Page 327 Reference......Page 328 Choosing a Backup Strategy......Page 330 Choosing Backup Hardware and Media......Page 336 Using Backup Software......Page 339 Copying Files......Page 345 System Rescue......Page 348 Reference......Page 351 14 Networking......Page 354 Laying the Foundation: The localhost Interface......Page 355 Networking with TCP/IP......Page 357 Network Organization......Page 362 Hardware Devices for Networking......Page 364 Using Network Configuration Tools......Page 371 Dynamic Host Configuration Protocol......Page 380 Wireless Networking......Page 386 Common Configuration Information......Page 389 Configuring Digital Subscriber Line Access......Page 391 Configuring Dial-Up Internet Access......Page 395 Troubleshooting Connection Problems......Page 397 Reference......Page 398 Setting Up a Telnet Server......Page 400 Setting Up an SSH Server......Page 401 The SSH Tools......Page 402 Remote X......Page 406 Reference......Page 407 Part IV: Ubuntu as a Server......Page 408 16 File and Print......Page 410 Using the Network File System......Page 411 Putting Samba to Work......Page 414 Creating Network Printers......Page 426 Using the Common UNIX Printing System GUI......Page 428 Avoiding Printer Support Problems......Page 432 Reference......Page 434 About the Apache Web Server......Page 436 Installing the Apache Server......Page 438 Starting and Stopping Apache......Page 442 Runtime Server Configuration Settings......Page 445 File System Authentication and Access Control......Page 451 Apache Modules......Page 455 Virtual Hosting......Page 461 Logging......Page 463 Other Web Servers for Use with Ubuntu......Page 464 Reference......Page 466 Choosing an FTP Server......Page 468 Installing FTP Software......Page 470 The FTP User......Page 471 inetd Configuration for wu-ftpd......Page 473 Configuring the Very Secure FTP Server......Page 474 Using Commands in the ftpaccess File to Configure wu-ftpd......Page 477 Configuring FTP Server File-Conversion Actions......Page 489 Using the ftphosts File to Allow or Deny FTP Server Connection......Page 492 Using Commands for Server Administration......Page 493 Reference......Page 499 How Email Is Sent and Received......Page 500 Basic Postfix Configuration and Operation......Page 505 Using Fetchmail to Retrieve Mail......Page 508 Choosing a Mail Delivery Agent......Page 512 Alternatives to Microsoft Exchange Server......Page 514 Reference......Page 517 What Is a Proxy Server?......Page 518 Configuring Clients......Page 519 Access Control Lists......Page 520 Specifying Client IP Addresses......Page 524 Example Configurations......Page 525 Reference......Page 527 21 Administering Database Services......Page 528 A Brief Review of Database Basics......Page 529 Choosing a Database: MySQL Versus PostgreSQL......Page 536 Configuring MySQL......Page 539 Configuring PostgreSQL......Page 542 Database Clients......Page 547 Reference......Page 553 22 LDAP......Page 554 Configuring the Server......Page 555 Configuring Clients......Page 559 Administration......Page 561 Reference......Page 562 Part V: Programming Linux......Page 564 Using Perl with Linux......Page 566 Perl Variables and Data Structures......Page 569 Operators......Page 571 Conditional Statements: if/else and unless......Page 574 Looping......Page 576 Regular Expressions......Page 578 Access to the Shell......Page 579 Modules and CPAN......Page 580 Code Examples......Page 581 Reference......Page 586 Python on Linux......Page 590 The Basics of Python......Page 592 Functions......Page 601 Object Orientation......Page 602 Reference......Page 606 25 Writing PHP Scripts......Page 608 Introduction to PHP......Page 609 Basic Functions......Page 625 Handling HTML Forms......Page 636 Databases......Page 637 Reference......Page 639 Programming in C with Linux......Page 642 Using the C Programming Project Management Tools Provided with Ubuntu......Page 643 Using the GNU C Compiler......Page 648 Graphical Development Tools......Page 649 Reference......Page 652 Why Use Mono?......Page 654 Mono on the Command Line......Page 655 Building on Mono’s Libraries......Page 660 Reference......Page 665 Part VI: Ubuntu Housekeeping......Page 666 Understanding Computer Attacks......Page 668 Assessing Your Vulnerability......Page 670 Protecting Your Machine......Page 671 Viruses......Page 674 Configuring Your Firewall......Page 675 Forming a Disaster Recovery Plan......Page 677 Reference......Page 678 Hard Disk......Page 680 Kernel......Page 684 Apache......Page 685 MySQL......Page 687 Reference......Page 691 30 Command Line Masterclass......Page 692 Why Use the Shell?......Page 693 Basic Commands......Page 694 Combining Commands......Page 713 Multiple Terminals......Page 715 Reference......Page 716 Using Add/Remove Applications for Software Management......Page 718 Using Synaptic for Software Management......Page 720 Staying Up-to-Date......Page 722 Working on the Command Line......Page 723 Compiling Software from Source......Page 727 Reference......Page 728 32 Kernel and Module Management......Page 730 The Linux Kernel......Page 731 Managing Modules......Page 735 Kernel Versions......Page 737 Obtaining the Kernel Sources......Page 738 Patching the Kernel......Page 739 Compiling the Kernel......Page 741 When Something Goes Wrong......Page 750 Reference......Page 752 Part VII: Appendixes......Page 754 What Is Linux?......Page 756 Why Use Linux?......Page 758 What Is Ubuntu?......Page 759 Ubuntu for Business......Page 760 Ubuntu in Your Home......Page 761 Getting the Most from Ubuntu and Linux Documentation......Page 762 Reference......Page 764 B: Installation Resources......Page 766 Planning Your Ubuntu Deployment......Page 767 Hardware Requirements......Page 772 Preparing for the Install Process......Page 779 Partitioning Before and During Installation......Page 783 Reference......Page 786 C: Ubuntu and Linux Internet Resources......Page 788 Websites and Search Engines......Page 789 Usenet Newsgroups......Page 794 Internet Relay Chat......Page 796 Index......Page 798 A......Page 799 B......Page 803 C......Page 805 D......Page 812 E......Page 815 F......Page 817 G......Page 819 H......Page 821 I......Page 822 K......Page 824 L......Page 825 M......Page 827 N......Page 831 O......Page 833 P......Page 834 R......Page 840 S......Page 842 T......Page 848 U......Page 851 V......Page 852 W......Page 853 X-Y-Z......Page 855