Ubuntu: Unleashed 2017 Edition
Total Page:16
File Type:pdf, Size:1020Kb
Matthew Helmke with Andrew Hudson and Paul Hudson Ubuntu UNLEASHED 2017 Edition 800 East 96th Street, Indianapolis, Indiana 46240 USA Ubuntu Unleashed 2017 Edition Editor-in-Chief Copyright © 2017 by Pearson Education, Inc. Mark Taub All rights reserved. Printed in the United States of America. This publication is protected Acquisitions Editor by copyright, and permission must be obtained from the publisher prior to any prohib- Debra Williams ited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise. For information Cauley regarding permissions, request forms and the appropriate contacts within the Pearson Managing Editor Education Global Rights & Permissions Department, please visit www.pearsoned.com/ permissions/. Sandra Schroeder Many of the designations used by manufacturers and sellers to distinguish their Project Editor products are claimed as trademarks. Where those designations appear in this book, and Lori Lyons the publisher was aware of a trademark claim, the designations have been printed with initial capital letters or in all capitals. Production Manager The author and publisher have taken care in the preparation of this book, but make Dhayanidhi no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for incidental or consequential damages in Proofreader connection with or arising out of the use of the information or programs contained Sasirekha herein. Technical Editor For information about buying this title in bulk quantities, or for special sales opportunities (which may include electronic versions; custom cover designs; and content José Antonio Rey particular to your business, training goals, marketing focus, or branding interests), Editorial Assistant please contact our corporate sales department at [email protected] or (800) 382-3419. Kim Boedigheimer For government sales inquiries, please contact [email protected]. Media Producer For questions about sales outside the U.S., please contact [email protected]. Dan Scherf Visit us on the Web: informit.com/aw Cover Designer ISBN-13: 978-0-13-451118-4 Chuti Prasertsith ISBN-10: 0-13-451118-2 Compositor Library of Congress Cataloging-in-Publication Data: 2016951091 codeMantra Printed in the United States of America Text printed in the United States on recycled paper at RR Donnelley, Crawfordsville, Indiana. First Printing October 2016 Contents at a Glance Introduction ..................................................................................xxxiii Part I Getting Started 1 Installing Ubuntu and Post-Installation Configuration ............................ 1 2 Background Information and Resources ............................................... 29 Part II Desktop Ubuntu 3 Working with Unity ........................................................................... 43 4 On the Internet ................................................................................. 63 5 Productivity Applications ................................................................... 75 6 Multimedia Applications .................................................................... 85 7 Other Ubuntu Interfaces ....................................................................111 8 Games .............................................................................................121 Part III System Administration 9 Managing Software ...........................................................................133 10 Command-Line Beginner’s Class ........................................................149 11 Command-Line Master Class Part 1 ....................................................185 12 Command-Line Master Class Part 2 ....................................................209 13 Managing Users ................................................................................241 14 Automating Tasks and Shell Scripting .................................................265 15 The Boot Process ...............................................................................311 16 System-Monitoring Tools ...................................................................323 17 Backing Up ......................................................................................341 18 Networking ......................................................................................369 19 Remote Access with SSH, Telnet, and VNC ..........................................415 20 Securing Your Machines ....................................................................425 21 Performance Tuning ..........................................................................441 22 Kernel and Module Management .......................................................453 Part IV Ubuntu as a Server 23 Sharing Files and Printers ..................................................................473 24 Apache Web Server Management........................................................489 25 Nginx Web Server Management .........................................................515 iv Ubuntu Unleashed 2017 Edition 26 Other HTTP Servers ...........................................................................527 27 Remote File Serving with FTP .............................................................531 28 Handling Email ................................................................................541 29 Proxying, Reverse Proxying, and Virtual Private Networks (VPN) ...........561 30 Administering Relational Database Services .........................................577 31 NoSQL Databases ..............................................................................603 32 Lightweight Directory Access Protocol (LDAP) .....................................615 33 Linux Terminal Server Project (LTSP) ..................................................623 34 Virtualization on Ubuntu ..................................................................631 35 Ubuntu in the Cloud ........................................................................641 36 Managing Sets of Servers ...................................................................655 37 Name Serving with the Domain Name System (DNS) ...........................659 Part V Programming Linux 38 Using Programming Tools for Ubuntu ................................................669 39 Opportunistic Development ..............................................................681 40 Helping with Ubuntu Development ...................................................693 41 Helping with Ubuntu Testing and QA .................................................703 42 Using Popular Programming Languages ..............................................709 43 Beginning Mobile Development for Android .......................................723 44 Developing for Ubuntu Mobile/Touch ................................................729 Index ...............................................................................................733 NOTE Chapters 45–47 can be accessed online at informit.com/title/9780134268118. Part VI Bonus Chapters 45 Using Perl .................................................................................... Web:1 46 Using Python ............................................................................. Web:23 47 Using PHP .................................................................................. Web:43 Table of Contents Introduction xxxiii Licensing ...................................................................................... xxxiv Who This Book Is For ...................................................................... xxxv Those Wanting to Become Intermediate or Advanced Users ........ xxxv Sysadmins, Programmers, and DevOps .................................... xxxvi What This Book Contains .............................................................. xxxvii Conventions Used in This Book .................................................... xxxviii Part I Getting Started 1 Installing Ubuntu and Post-Installation Configuration 1 Before You Begin the Installation .......................................................... 1 Researching Your Hardware Specifications ...................................... 2 Installation Options ..................................................................... 2 32-Bit vs 64-Bit Ubuntu ................................................................ 4 Planning Partition Strategies ......................................................... 5 The Boot Loader .......................................................................... 5 Installing from DVD or USB Drive ................................................. 6 Step-by-Step Installation ....................................................................... 6 Installing .................................................................................... 7 First Update .............................................................................. 13 Shutting Down .................................................................................. 13 Finding Programs and Files ................................................................. 14 Software Updater ............................................................................... 15 The sudo Command ........................................................................... 18 Configuring Software Repositories ....................................................... 19 System Settings .................................................................................