Op werkdagen voor 23:00 besteld, morgen in huis Gratis verzending vanaf €20

Ubuntu Linux Unleashed 2021 Edition

Specificaties
E-book, blz. | Engels
Pearson Education | e druk, 2021
ISBN13: 9780136685272
Rubricering
Juridisch :
Pearson Education e druk, 2021 9780136685272
Verwachte levertijd ongeveer 9 werkdagen

Samenvatting

Covers 20.04, 20.10, and 21.04
Ubuntu Linux Unleashed 2021 Edition is filled with unique and advanced information for everyone who wants to make the most of the Ubuntu Linux operating system. This new edition has been thoroughly updated by a long-time Ubuntu user and early community leader to reflect the exciting new Ubuntu 20.04 LTS release, with a forthcoming online update mid-2021, at the halfway mark before the next LTS release comes out.

Linux writer Matthew Helmke covers all you need to know about Ubuntu 20.04 LTS installation, configuration, productivity, command-line usage, development, systems administration, server operations, networking, virtualisation, cloud computing, DevOps, and moreincluding intermediate-to-advanced techniques you wont find in any other book.

Helmke presents up-to-the-minute introductions to Ubuntus key productivity and web development tools, programming languages, hardware support, and more. Youll find new or improved coverage of the Ubuntu desktop experience, common web servers and software stacks, an introduction to containers like Docker and Kubernetes, as well as a wealth of systems administration information that is stable and valuable over many years. Configure and use the Ubuntu desktop Get started with multimedia and productivity applications Manage Linux services, users, and software packages Administer and run Ubuntu from the command line Automate tasks and use shell scripting Provide secure remote access and configure a secure VPN Manage kernels and modules Administer file, print, email, proxy, LDAP, DNS, and HTTP servers (Apache, Nginx, or alternatives) Work with databases (SQL) and learn about NoSQL alternatives Get started with virtualization and cloud deployment, including information about containers Learn about options for managing large numbers of servers, including in the cloud Learn the basics about popular programming languages including Python, PHP, Perl, and gain an introduction to new alternatives such as Go and Rust

The full text downloaded to your computer

With eBooks you can: search for key concepts, words and phrases make highlights and notes as you study share your notes with friends

eBooks are downloaded to your computer and accessible either offline through the Bookshelf (available as a free download), available online and also via the iPad and Android apps.

Upon purchase, you will receive via email the code and instructions on how to access this product.

Time limit

The eBooks products do not have an expiry date. You will continue to access your digital ebook products whilst you have your Bookshelf installed.

Specificaties

ISBN13:9780136685272
Taal:Engels
Bindwijze:e-book

Inhoudsopgave

<div> Introduction&nbsp; &nbsp; &nbsp;xxxi </div> <div> <br> </div> <div> PART I: GETTING STARTED </div> <div> <br> </div> <div> Chapter 1&nbsp; Installing Ubuntu and Post-Installation Configuration&nbsp; &nbsp; &nbsp;1 </div> <div> <br> </div> <div> Before You Begin the Installation&nbsp; &nbsp; &nbsp;1 </div> <div> <br> </div> <div> &nbsp; &nbsp; Researching Your Hardware Specifications&nbsp; &nbsp; &nbsp;2 </div> <div> <br> </div> <div> &nbsp; &nbsp; Installation Options&nbsp; &nbsp; &nbsp;2 </div> <div> <br> </div> <div> &nbsp; &nbsp; 32-Bit Versus 64-Bit Ubuntu&nbsp; &nbsp; &nbsp;4 </div> <div> <br> </div> <div> &nbsp; &nbsp; Planning Partition Strategies&nbsp; &nbsp; &nbsp;5 </div> <div> <br> </div> <div> &nbsp; &nbsp; The Boot Loader&nbsp; &nbsp; &nbsp;5 </div> <div> <br> </div> <div> &nbsp; &nbsp; Installing from DVD or USB Drive&nbsp; &nbsp; &nbsp;6 </div> <div> <br> </div> <div> Step-by-Step Installation&nbsp; &nbsp; &nbsp;6 </div> <div> <br> </div> <div> &nbsp; &nbsp; Installing&nbsp; &nbsp; &nbsp;7 </div> <div> <br> </div> <div> &nbsp; &nbsp; First Update&nbsp; &nbsp; &nbsp;11 </div> <div> <br> </div> <div> Shutting Down&nbsp; &nbsp; &nbsp;11 </div> <div> <br> </div> <div> Finding Programs and Files&nbsp; &nbsp; &nbsp;12 </div> <div> <br> </div> <div> Software Updater&nbsp; &nbsp; &nbsp;12 </div> <div> <br> </div> <div> The sudo Command&nbsp; &nbsp; &nbsp;14 </div> <div> <br> </div> <div> Configuring Software Repositories&nbsp; &nbsp; &nbsp;15 </div> <div> <br> </div> <div> System Settings&nbsp; &nbsp; &nbsp;17 </div> <div> <br> </div> <div> &nbsp; &nbsp; Detecting and Configuring a Printer&nbsp; &nbsp; &nbsp;18 </div> <div> <br> </div> <div> &nbsp; &nbsp; Configuring Power Management in Ubuntu&nbsp; &nbsp; &nbsp;18 </div> <div> <br> </div> <div> &nbsp; &nbsp; Setting the Time and Date&nbsp; &nbsp; &nbsp;19 </div> <div> <br> </div> <div> Configuring Wireless Networks&nbsp; &nbsp; &nbsp;20 </div> <div> <br> </div> <div> Troubleshooting Post-Installation Configuration Problems&nbsp; &nbsp; &nbsp;21 </div> <div> <br> </div> <div> Chapter 2&nbsp; Background Information and Resources&nbsp; &nbsp; &nbsp;23 </div> <div> <br> </div> <div> What Is Linux?&nbsp; &nbsp; &nbsp;23 </div> <div> <br> </div> <div> Why Use Linux?&nbsp; &nbsp; &nbsp;25 </div> <div> <br> </div> <div> What Is Ubuntu?&nbsp; &nbsp; &nbsp;27 </div> <div> <br> </div> <div> Ubuntu for Business&nbsp; &nbsp; &nbsp;27 </div> <div> <br> </div> <div> Ubuntu in Your Home&nbsp; &nbsp; &nbsp;28 </div> <div> <br> </div> <div> Getting the Most from Linux and Ubuntu Documentation&nbsp; &nbsp; &nbsp;28 </div> <div> <br> </div> <div> &nbsp; &nbsp; Linux&nbsp; &nbsp; &nbsp;29 </div> <div> <br> </div> <div> &nbsp; &nbsp; Ubuntu&nbsp; &nbsp; &nbsp;30 </div> <div> <br> </div> <div> PART II: DESKTOP UBUNTU </div> <div> <br> </div> <div> Chapter 3&nbsp; Foundations of the Linux GUI&nbsp; &nbsp; &nbsp;31 </div> <div> <br> </div> <div> Foundations and the X Server&nbsp; &nbsp; &nbsp;31 </div> <div> <br> </div> <div> &nbsp; &nbsp; Basic X Concepts&nbsp; &nbsp; &nbsp;32 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using X&nbsp; &nbsp; &nbsp;33 </div> <div> <br> </div> <div> &nbsp; &nbsp; Elements of the xorg conf File&nbsp; &nbsp; &nbsp;34 </div> <div> <br> </div> <div> Starting X&nbsp; &nbsp; &nbsp;39 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using a Display Manager&nbsp; &nbsp; &nbsp;39 </div> <div> <br> </div> <div> &nbsp; &nbsp; Changing Window Managers&nbsp; &nbsp; &nbsp;39 </div> <div> <br> </div> <div> Chapter 4&nbsp; Ubuntu Desktop Options&nbsp; &nbsp; &nbsp;41 </div> <div> <br> </div> <div> Desktop Environment&nbsp; &nbsp; &nbsp;41 </div> <div> <br> </div> <div> Using GNOME: A Primer&nbsp; &nbsp; &nbsp;42 </div> <div> <br> </div> <div> KDE and Kubuntu&nbsp; &nbsp; &nbsp;45 </div> <div> <br> </div> <div> Xfce and Xubuntu&nbsp; &nbsp; &nbsp;46 </div> <div> <br> </div> <div> LXDE and Lubuntu&nbsp; &nbsp; &nbsp;47 </div> <div> <br> </div> <div> MATE and Ubuntu MATE&nbsp; &nbsp; &nbsp;48 </div> <div> <br> </div> <div> Ubuntu Budgie&nbsp; &nbsp; &nbsp;49 </div> <div> <br> </div> <div> Ubuntu Kylin&nbsp; &nbsp; &nbsp;50 </div> <div> <br> </div> <div> Chapter 5&nbsp; On the Internet&nbsp; &nbsp; &nbsp;51 </div> <div> <br> </div> <div> Getting Started with Firefox&nbsp; &nbsp; &nbsp;52 </div> <div> <br> </div> <div> Checking Out Google Chrome and Chromium&nbsp; &nbsp; &nbsp;53 </div> <div> <br> </div> <div> Chapter 6&nbsp; Productivity Applications&nbsp; &nbsp; &nbsp;55 </div> <div> <br> </div> <div> Introducing LibreOffice&nbsp; &nbsp; &nbsp;56 </div> <div> <br> </div> <div> Other Useful Productivity Software&nbsp; &nbsp; &nbsp;58 </div> <div> <br> </div> <div> &nbsp; &nbsp; Working with PDFs&nbsp; &nbsp; &nbsp;58 </div> <div> <br> </div> <div> &nbsp; &nbsp; Writing Scripts&nbsp; &nbsp; &nbsp;59 </div> <div> <br> </div> <div> &nbsp; &nbsp; Working with XML and DocBook&nbsp; &nbsp; &nbsp;59 </div> <div> <br> </div> <div> &nbsp; &nbsp; Working with LaTeX&nbsp; &nbsp; &nbsp;60 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating Mind Maps&nbsp; &nbsp; &nbsp;61 </div> <div> <br> </div> <div> Productivity Applications Written for Microsoft Windows&nbsp; &nbsp; &nbsp;61 </div> <div> <br> </div> <div> Chapter 7&nbsp; Multimedia Applications&nbsp; &nbsp; &nbsp;63 </div> <div> <br> </div> <div> Sound and Music&nbsp; &nbsp; &nbsp;63 </div> <div> <br> </div> <div> &nbsp; &nbsp; Sound Cards&nbsp; &nbsp; &nbsp;64 </div> <div> <br> </div> <div> &nbsp; &nbsp; Sound Formats&nbsp; &nbsp; &nbsp;65 </div> <div> <br> </div> <div> &nbsp; &nbsp; Listening to Music&nbsp; &nbsp; &nbsp;65 </div> <div> <br> </div> <div> Graphics Manipulation&nbsp; &nbsp; &nbsp;66 </div> <div> <br> </div> <div> &nbsp; &nbsp; The GNU Image Manipulation Program&nbsp; &nbsp; &nbsp;66 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Scanners in Ubuntu&nbsp; &nbsp; &nbsp;67 </div> <div> <br> </div> <div> &nbsp; &nbsp; Working with Graphics Formats&nbsp; &nbsp; &nbsp;67 </div> <div> <br> </div> <div> &nbsp; &nbsp; Capturing Screen Images&nbsp; &nbsp; &nbsp;69 </div> <div> <br> </div> <div> &nbsp; &nbsp; Other Graphics Manipulation Options&nbsp; &nbsp; &nbsp;70 </div> <div> <br> </div> <div> Using Digital Cameras with Ubuntu&nbsp; &nbsp; &nbsp;70 </div> <div> <br> </div> <div> &nbsp; &nbsp; Handheld Digital Cameras&nbsp; &nbsp; &nbsp;70 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Shotwell Photo Manager&nbsp; &nbsp; &nbsp;71 </div> <div> <br> </div> <div> Burning CDs and DVDs in Ubuntu&nbsp; &nbsp; &nbsp;71 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating CDs and DVDs with Brasero&nbsp; &nbsp; &nbsp;71 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating CDs from the Command Line&nbsp; &nbsp; &nbsp;72 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating DVDs from the Command Line&nbsp; &nbsp; &nbsp;73 </div> <div> <br> </div> <div> Viewing Video&nbsp; &nbsp; &nbsp;75 </div> <div> <br> </div> <div> &nbsp; &nbsp; Video Formats&nbsp; &nbsp; &nbsp;75 </div> <div> <br> </div> <div> &nbsp; &nbsp; Viewing Video in Linux&nbsp; &nbsp; &nbsp;76 </div> <div> <br> </div> <div> Recording and Editing Audio&nbsp; &nbsp; &nbsp;76 </div> <div> <br> </div> <div> Editing Video&nbsp; &nbsp; &nbsp;77 </div> <div> <br> </div> <div> Chapter 8&nbsp; Games&nbsp; &nbsp; &nbsp;79 </div> <div> <br> </div> <div> Ubuntu Gaming&nbsp; &nbsp; &nbsp;79 </div> <div> <br> </div> <div> Installing Proprietary Video Drivers&nbsp; &nbsp; &nbsp;80 </div> <div> <br> </div> <div> Online Game Sources&nbsp; &nbsp; &nbsp;81 </div> <div> <br> </div> <div> &nbsp; &nbsp; Steam&nbsp; &nbsp; &nbsp;81 </div> <div> <br> </div> <div> &nbsp; &nbsp; GOG com&nbsp; &nbsp; &nbsp;82 </div> <div> <br> </div> <div> &nbsp; &nbsp; Humble&nbsp; &nbsp; &nbsp;82 </div> <div> <br> </div> <div> &nbsp; &nbsp; itch io&nbsp; &nbsp; &nbsp;82 </div> <div> <br> </div> <div> &nbsp; &nbsp; LGDB&nbsp; &nbsp; &nbsp;82 </div> <div> <br> </div> <div> &nbsp; &nbsp; Game Jolt&nbsp; &nbsp; &nbsp;82 </div> <div> <br> </div> <div> Installing Games from the Ubuntu Repositories&nbsp; &nbsp; &nbsp;82 </div> <div> <br> </div> <div> &nbsp; &nbsp; Warsow&nbsp; &nbsp; &nbsp;82 </div> <div> <br> </div> <div> &nbsp; &nbsp; Scorched 3D&nbsp; &nbsp; &nbsp;83 </div> <div> <br> </div> <div> &nbsp; &nbsp; Frozen Bubble&nbsp; &nbsp; &nbsp;84 </div> <div> <br> </div> <div> &nbsp; &nbsp; SuperTux&nbsp; &nbsp; &nbsp;84 </div> <div> <br> </div> <div> &nbsp; &nbsp; Battle for Wesnoth&nbsp; &nbsp; &nbsp;85 </div> <div> <br> </div> <div> &nbsp; &nbsp; Frets on Fire&nbsp; &nbsp; &nbsp;85 </div> <div> <br> </div> <div> &nbsp; &nbsp; FlightGear&nbsp; &nbsp; &nbsp;87 </div> <div> <br> </div> <div> &nbsp; &nbsp; Speed Dreams&nbsp; &nbsp; &nbsp;87 </div> <div> <br> </div> <div> &nbsp; &nbsp; Games for Kids&nbsp; &nbsp; &nbsp;88 </div> <div> <br> </div> <div> &nbsp; &nbsp; Commercial Games&nbsp; &nbsp; &nbsp;88 </div> <div> <br> </div> <div> Playing Windows Games&nbsp; &nbsp; &nbsp;88 </div> <div> <br> </div> <div> PART III: SYSTEM ADMINISTRATION </div> <div> <br> </div> <div> Chapter 9&nbsp; Managing Software&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;91 </div> <div> <br> </div> <div> Ubuntu Software&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;91 </div> <div> <br> </div> <div> Using Synaptic for Software Management&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;92 </div> <div> <br> </div> <div> Staying Up to Date&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;94 </div> <div> <br> </div> <div> Working on the Command Line&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;95 </div> <div> <br> </div> <div> &nbsp; &nbsp; Day-to-Day APT Usage&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;95 </div> <div> <br> </div> <div> &nbsp; &nbsp; Finding Software&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;98 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using apt-get Instead of apt&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;99 </div> <div> <br> </div> <div> Compiling Software from Source&nbsp; &nbsp; &nbsp;100 </div> <div> <br> </div> <div> &nbsp; &nbsp; Compiling from a Tarball&nbsp; &nbsp; &nbsp;100 </div> <div> <br> </div> <div> &nbsp; &nbsp; Compiling from Source from the Ubuntu Repositories&nbsp; &nbsp; &nbsp;101 </div> <div> <br> </div> <div> Configuration Management&nbsp; &nbsp; &nbsp;102 </div> <div> <br> </div> <div> &nbsp; &nbsp; dotdee&nbsp; &nbsp; &nbsp;102 </div> <div> <br> </div> <div> &nbsp; &nbsp; Ubuntu Core&nbsp; &nbsp; &nbsp;103 </div> <div> <br> </div> <div> Using the Snappy Package Manager&nbsp; &nbsp; &nbsp;103 </div> <div> <br> </div> <div> Chapter 10&nbsp; Command-Line Beginner's Class&nbsp; &nbsp; &nbsp;105 </div> <div> <br> </div> <div> What Is the Command Line?&nbsp; &nbsp; &nbsp;106 </div> <div> <br> </div> <div> Accessing the Command Line&nbsp; &nbsp; &nbsp;107 </div> <div> <br> </div> <div> &nbsp; &nbsp; Text-Based Console Login&nbsp; &nbsp; &nbsp;107 </div> <div> <br> </div> <div> &nbsp; &nbsp; Logging Out&nbsp; &nbsp; &nbsp;108 </div> <div> <br> </div> <div> &nbsp; &nbsp; Logging In and Out from a Remote Computer&nbsp; &nbsp; &nbsp;108 </div> <div> <br> </div> <div> User Accounts&nbsp; &nbsp; &nbsp;109 </div> <div> <br> </div> <div> Reading Documentation&nbsp; &nbsp; &nbsp;111 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Man Pages&nbsp; &nbsp; &nbsp;111 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using apropros&nbsp; &nbsp; &nbsp;112 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using whereis&nbsp; &nbsp; &nbsp;112 </div> <div> <br> </div> <div> Understanding the Linux File System Hierarchy&nbsp; &nbsp; &nbsp;112 </div> <div> <br> </div> <div> &nbsp; &nbsp; Essential Commands in /bin and /sbin&nbsp; &nbsp; &nbsp;114 </div> <div> <br> </div> <div> &nbsp; &nbsp; Configuration Files in /etc&nbsp; &nbsp; &nbsp;114 </div> <div> <br> </div> <div> &nbsp; &nbsp; User Directories: /home&nbsp; &nbsp; &nbsp;115 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using the Contents of the /proc Directory to Interact with or Obtain Information from the Kernel&nbsp; &nbsp; &nbsp;115 </div> <div> <br> </div> <div> &nbsp; &nbsp; Working with Shared Data in the /usr Directory&nbsp; &nbsp; &nbsp;117 </div> <div> <br> </div> <div> &nbsp; &nbsp; Temporary File Storage in the /tmp Directory&nbsp; &nbsp; &nbsp;117 </div> <div> <br> </div> <div> &nbsp; &nbsp; Accessing Variable Data Files in the /var Directory&nbsp; &nbsp; &nbsp;117 </div> <div> <br> </div> <div> Navigating the Linux File System&nbsp; &nbsp; &nbsp;117 </div> <div> <br> </div> <div> &nbsp; &nbsp; Listing the Contents of a Directory with ls&nbsp; &nbsp; &nbsp;118 </div> <div> <br> </div> <div> &nbsp; &nbsp; Changing Directories with cd&nbsp; &nbsp; &nbsp;120 </div> <div> <br> </div> <div> &nbsp; &nbsp; Finding Your Current Directory with pwd&nbsp; &nbsp; &nbsp;120 </div> <div> <br> </div> <div> Working with Permissions&nbsp; &nbsp; &nbsp;120 </div> <div> <br> </div> <div> &nbsp; &nbsp; Assigning Permissions&nbsp; &nbsp; &nbsp;121 </div> <div> <br> </div> <div> &nbsp; &nbsp; Directory Permissions&nbsp; &nbsp; &nbsp;122 </div> <div> <br> </div> <div> &nbsp; &nbsp; Altering File Permissions with chmod&nbsp; &nbsp; &nbsp;123 </div> <div> <br> </div> <div> &nbsp; &nbsp; File Permissions with umask&nbsp; &nbsp; &nbsp;124 </div> <div> <br> </div> <div> &nbsp; &nbsp; File Permissions with chgrp&nbsp; &nbsp; &nbsp;125 </div> <div> <br> </div> <div> &nbsp; &nbsp; Changing File Permissions with chown&nbsp; &nbsp; &nbsp;125 </div> <div> <br> </div> <div> &nbsp; &nbsp; Understanding Set User ID, Set Group ID, and Sticky Bit Permissions&nbsp; &nbsp; &nbsp;125 </div> <div> <br> </div> <div> &nbsp; &nbsp; Setting Permissions with Access Control Lists&nbsp; &nbsp; &nbsp;127 </div> <div> <br> </div> <div> Working with Files&nbsp; &nbsp; &nbsp;128 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating a File with touch&nbsp; &nbsp; &nbsp;128 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating a Directory with mkdir&nbsp; &nbsp; &nbsp;129 </div> <div> <br> </div> <div> &nbsp; &nbsp; Deleting a Directory with rmdir&nbsp; &nbsp; &nbsp;129 </div> <div> <br> </div> <div> &nbsp; &nbsp; Deleting a File or Directory with rm&nbsp; &nbsp; &nbsp;130 </div> <div> <br> </div> <div> &nbsp; &nbsp; Moving or Renaming a File with mv&nbsp; &nbsp; &nbsp;131 </div> <div> <br> </div> <div> &nbsp; &nbsp; Copying a File with cp&nbsp; &nbsp; &nbsp;131 </div> <div> <br> </div> <div> &nbsp; &nbsp; Displaying the Contents of a File with cat&nbsp; &nbsp; &nbsp;132 </div> <div> <br> </div> <div> &nbsp; &nbsp; Displaying the Contents of a File with less&nbsp; &nbsp; &nbsp;132 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Wildcards and Regular Expressions&nbsp; &nbsp; &nbsp;133 </div> <div> <br> </div> <div> Working as Root&nbsp; &nbsp; &nbsp;133 </div> <div> <br> </div> <div> &nbsp; &nbsp; Understanding and Fixing sudo&nbsp; &nbsp; &nbsp;134 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating Users&nbsp; &nbsp; &nbsp;136 </div> <div> <br> </div> <div> &nbsp; &nbsp; Deleting Users&nbsp; &nbsp; &nbsp;137 </div> <div> <br> </div> <div> &nbsp; &nbsp; Shutting Down the System&nbsp; &nbsp; &nbsp;137 </div> <div> <br> </div> <div> &nbsp; &nbsp; Rebooting the System&nbsp; &nbsp; &nbsp;138 </div> <div> <br> </div> <div> Commonly Used Commands and Programs&nbsp; &nbsp; &nbsp;139 </div> <div> <br> </div> <div> Chapter 11&nbsp; Command-Line Master Class, Part 1&nbsp; &nbsp; &nbsp;141 </div> <div> <br> </div> <div> Why Use the Command Line?&nbsp; &nbsp; &nbsp;142 </div> <div> <br> </div> <div> Using Basic Commands&nbsp; &nbsp; &nbsp;143 </div> <div> <br> </div> <div> &nbsp; &nbsp; Printing the Contents of a File with cat&nbsp; &nbsp; &nbsp;144 </div> <div> <br> </div> <div> &nbsp; &nbsp; Changing Directories with cd&nbsp; &nbsp; &nbsp;145 </div> <div> <br> </div> <div> &nbsp; &nbsp; Changing File Access Permissions with chmod&nbsp; &nbsp; &nbsp;147 </div> <div> <br> </div> <div> &nbsp; &nbsp; Copying Files with cp&nbsp; &nbsp; &nbsp;147 </div> <div> <br> </div> <div> &nbsp; &nbsp; Printing Disk Usage with du&nbsp; &nbsp; &nbsp;148 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using echo&nbsp; &nbsp; &nbsp;148 </div> <div> <br> </div> <div> &nbsp; &nbsp; Finding Files by Searching with find&nbsp; &nbsp; &nbsp;149 </div> <div> <br> </div> <div> &nbsp; &nbsp; Searches for a String in Input with grep&nbsp; &nbsp; &nbsp;151 </div> <div> <br> </div> <div> &nbsp; &nbsp; Paging Through Output with less&nbsp; &nbsp; &nbsp;152 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating Links Between Files with ln&nbsp; &nbsp; &nbsp;154 </div> <div> <br> </div> <div> &nbsp; &nbsp; Finding Files from an Index with locate&nbsp; &nbsp; &nbsp;156 </div> <div> <br> </div> <div> &nbsp; &nbsp; Listing Files in the Current Directory with ls&nbsp; &nbsp; &nbsp;156 </div> <div> <br> </div> <div> &nbsp; &nbsp; Listing System Information with lsblk, lshw, lsmod, lspci, and neofetch&nbsp; &nbsp; &nbsp;158 </div> <div> <br> </div> <div> &nbsp; &nbsp; Reading Manual Pages with man&nbsp; &nbsp; &nbsp;159 </div> <div> <br> </div> <div> &nbsp; &nbsp; Making Directories with mkdir&nbsp; &nbsp; &nbsp;160 </div> <div> <br> </div> <div> &nbsp; &nbsp; Moving Files with mv&nbsp; &nbsp; &nbsp;161 </div> <div> <br> </div> <div> &nbsp; &nbsp; Renaming Files with rename&nbsp; &nbsp; &nbsp;161 </div> <div> <br> </div> <div> &nbsp; &nbsp; Deleting Files and Directories with rm&nbsp; &nbsp; &nbsp;161 </div> <div> <br> </div> <div> &nbsp; &nbsp; Sorting the Contents of a File with sort&nbsp; &nbsp; &nbsp;162 </div> <div> <br> </div> <div> &nbsp; &nbsp; Printing the Last Lines of a File with tail&nbsp; &nbsp; &nbsp;163 </div> <div> <br> </div> <div> &nbsp; &nbsp; Printing the Location of a Command with which&nbsp; &nbsp; &nbsp;164 </div> <div> <br> </div> <div> &nbsp; &nbsp; Downloading Files with wget&nbsp; &nbsp; &nbsp;164 </div> <div> <br> </div> <div> Chapter 12&nbsp; Command-Line Master Class, Part 2&nbsp; &nbsp; &nbsp;167 </div> <div> <br> </div> <div> Redirecting Output and Input&nbsp; &nbsp; &nbsp;167 </div> <div> <br> </div> <div> stdin, stdout, stderr, and Redirection&nbsp; &nbsp; &nbsp;169 </div> <div> <br> </div> <div> Comparing Files&nbsp; &nbsp; &nbsp;170 </div> <div> <br> </div> <div> &nbsp; &nbsp; Finding Differences in Files with diff&nbsp; &nbsp; &nbsp;170 </div> <div> <br> </div> <div> &nbsp; &nbsp; Finding Similarities in Files with comm&nbsp; &nbsp; &nbsp;170 </div> <div> <br> </div> <div> Limiting Resource Use and Job Control&nbsp; &nbsp; &nbsp;171 </div> <div> <br> </div> <div> &nbsp; &nbsp; Listing Processes with ps&nbsp; &nbsp; &nbsp;171 </div> <div> <br> </div> <div> &nbsp; &nbsp; Listing Jobs with jobs&nbsp; &nbsp; &nbsp;173 </div> <div> <br> </div> <div> &nbsp; &nbsp; Running One or More Tasks in the Background&nbsp; &nbsp; &nbsp;173 </div> <div> <br> </div> <div> &nbsp; &nbsp; Moving Jobs to the Background or Foreground with bg and fg&nbsp; &nbsp; &nbsp;174 </div> <div> <br> </div> <div> &nbsp; &nbsp; Printing Resource Usage with top&nbsp; &nbsp; &nbsp;175 </div> <div> <br> </div> <div> &nbsp; &nbsp; Setting Process Priority with nice&nbsp; &nbsp; &nbsp;177 </div> <div> <br> </div> <div> Combining Commands&nbsp; &nbsp; &nbsp;178 </div> <div> <br> </div> <div> &nbsp; &nbsp; Pipes&nbsp; &nbsp; &nbsp;178 </div> <div> <br> </div> <div> &nbsp; &nbsp; Combining Commands with Boolean Operators&nbsp; &nbsp; &nbsp;180 </div> <div> <br> </div> <div> &nbsp; &nbsp; Running Separate Commands in Sequence&nbsp; &nbsp; &nbsp;180 </div> <div> <br> </div> <div> &nbsp; &nbsp; Process Substitution&nbsp; &nbsp; &nbsp;181 </div> <div> <br> </div> <div> Executing Jobs in Parallel&nbsp; &nbsp; &nbsp;181 </div> <div> <br> </div> <div> Using Environment Variables&nbsp; &nbsp; &nbsp;182 </div> <div> <br> </div> <div> Using Common Text Editors&nbsp; &nbsp; &nbsp;185 </div> <div> <br> </div> <div> &nbsp; &nbsp; Working with nano&nbsp; &nbsp; &nbsp;186 </div> <div> <br> </div> <div> &nbsp; &nbsp; Working with vi&nbsp; &nbsp; &nbsp;187 </div> <div> <br> </div> <div> &nbsp; &nbsp; Working with emacs&nbsp; &nbsp; &nbsp;188 </div> <div> <br> </div> <div> &nbsp; &nbsp; Working with sed and awk&nbsp; &nbsp; &nbsp;189 </div> <div> <br> </div> <div> Working with Compressed Files&nbsp; &nbsp; &nbsp;191 </div> <div> <br> </div> <div> Using Multiple Terminals with byobu192 </div> <div> <br> </div> <div> Doing a Polite System Reset Using REISUB&nbsp; &nbsp; &nbsp;194 </div> <div> <br> </div> <div> Fixing an Ubuntu System That Will Not Boot&nbsp; &nbsp; &nbsp;195 </div> <div> <br> </div> <div> &nbsp; &nbsp; Checking BIOS&nbsp; &nbsp; &nbsp;195 </div> <div> <br> </div> <div> &nbsp; &nbsp; Checking GRUB&nbsp; &nbsp; &nbsp;195 </div> <div> <br> </div> <div> &nbsp; &nbsp; Reinstalling GRUB&nbsp; &nbsp; &nbsp;195 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Recovery Mode&nbsp; &nbsp; &nbsp;196 </div> <div> <br> </div> <div> &nbsp; &nbsp; Reinstalling Ubuntu&nbsp; &nbsp; &nbsp;196 </div> <div> <br> </div> <div> Tips and Tricks&nbsp; &nbsp; &nbsp;196 </div> <div> <br> </div> <div> &nbsp; &nbsp; Running the Previous Command&nbsp; &nbsp; &nbsp;196 </div> <div> <br> </div> <div> &nbsp; &nbsp; Running Any Previous Command&nbsp; &nbsp; &nbsp;197 </div> <div> <br> </div> <div> &nbsp; &nbsp; Running a Previous Command That Started with Specific Letters&nbsp; &nbsp; &nbsp;197 </div> <div> <br> </div> <div> &nbsp; &nbsp; Running the Same Thing You Just Ran with a Different First Word&nbsp; &nbsp; &nbsp;197 </div> <div> <br> </div> <div> &nbsp; &nbsp; Viewing Your History and More&nbsp; &nbsp; &nbsp;197 </div> <div> <br> </div> <div> &nbsp; &nbsp; Doing Two or More Things&nbsp; &nbsp; &nbsp;198 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Shortcuts&nbsp; &nbsp; &nbsp;198 </div> <div> <br> </div> <div> &nbsp; &nbsp; Confining a Script to a Directory&nbsp; &nbsp; &nbsp;198 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Coreutils&nbsp; &nbsp; &nbsp;199 </div> <div> <br> </div> <div> &nbsp; &nbsp; Reading the Contents of the Kernel Ring Buffer with dmesg&nbsp; &nbsp; &nbsp;200 </div> <div> <br> </div> <div> Chapter 13&nbsp; Managing Users&nbsp; &nbsp; &nbsp;201 </div> <div> <br> </div> <div> User Accounts&nbsp; &nbsp; &nbsp;201 </div> <div> <br> </div> <div> &nbsp; &nbsp; The Super User/Root User&nbsp; &nbsp; &nbsp;202 </div> <div> <br> </div> <div> &nbsp; &nbsp; User IDs and Group IDs&nbsp; &nbsp; &nbsp;204 </div> <div> <br> </div> <div> &nbsp; &nbsp; File Permissions&nbsp; &nbsp; &nbsp;204 </div> <div> <br> </div> <div> Managing Groups&nbsp; &nbsp; &nbsp;205 </div> <div> <br> </div> <div> &nbsp; &nbsp; Group Listing&nbsp; &nbsp; &nbsp;205 </div> <div> <br> </div> <div> &nbsp; &nbsp; Group Management Tools&nbsp; &nbsp; &nbsp;206 </div> <div> <br> </div> <div> Managing Users&nbsp; &nbsp; &nbsp;207 </div> <div> <br> </div> <div> &nbsp; &nbsp; User Management Tools&nbsp; &nbsp; &nbsp;208 </div> <div> <br> </div> <div> &nbsp; &nbsp; Adding New Users&nbsp; &nbsp; &nbsp;209 </div> <div> <br> </div> <div> &nbsp; &nbsp; Monitoring User Activity on the System&nbsp; &nbsp; &nbsp;211 </div> <div> <br> </div> <div> Managing Passwords&nbsp; &nbsp; &nbsp;212 </div> <div> <br> </div> <div> &nbsp; &nbsp; System Password Policy&nbsp; &nbsp; &nbsp;212 </div> <div> <br> </div> <div> &nbsp; &nbsp; The Password File&nbsp; &nbsp; &nbsp;212 </div> <div> <br> </div> <div> &nbsp; &nbsp; Shadow Passwords&nbsp; &nbsp; &nbsp;214 </div> <div> <br> </div> <div> &nbsp; &nbsp; Managing Password Security for Users&nbsp; &nbsp; &nbsp;216 </div> <div> <br> </div> <div> &nbsp; &nbsp; Changing Passwords in a Batch&nbsp; &nbsp; &nbsp;216 </div> <div> <br> </div> <div> Granting System Administrator Privileges to Regular Users&nbsp; &nbsp; &nbsp;217 </div> <div> <br> </div> <div> &nbsp; &nbsp; Temporarily Changing User Identity with the su Command&nbsp; &nbsp; &nbsp;217 </div> <div> <br> </div> <div> &nbsp; &nbsp; Granting Root Privileges on Occasion: The sudo Command&nbsp; &nbsp; &nbsp;219 </div> <div> <br> </div> <div> Disk Quotas&nbsp; &nbsp; &nbsp;222 </div> <div> <br> </div> <div> &nbsp; &nbsp; Implementing Quotas&nbsp; &nbsp; &nbsp;222 </div> <div> <br> </div> <div> &nbsp; &nbsp; Manually Configuring Quotas&nbsp; &nbsp; &nbsp;223 </div> <div> <br> </div> <div> Related Ubuntu Commands&nbsp; &nbsp; &nbsp;223 </div> <div> <br> </div> <div> Chapter 14&nbsp; Automating Tasks and Shell Scripting&nbsp; &nbsp; &nbsp;225 </div> <div> <br> </div> <div> What Is a Shell?&nbsp; &nbsp; &nbsp;225 </div> <div> <br> </div> <div> Scheduling Tasks&nbsp; &nbsp; &nbsp;226 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using at and batch to Schedule Tasks for Later&nbsp; &nbsp; &nbsp;227 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using cron to Run Jobs Repeatedly&nbsp; &nbsp; &nbsp;229 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using rtcwake to Wake Your Computer from Sleep Automatically&nbsp; &nbsp; &nbsp;231 </div> <div> <br> </div> <div> Basic Shell Control&nbsp; &nbsp; &nbsp;233 </div> <div> <br> </div> <div> &nbsp; &nbsp; The Shell Command Line&nbsp; &nbsp; &nbsp;233 </div> <div> <br> </div> <div> &nbsp; &nbsp; Shell Pattern-Matching Support&nbsp; &nbsp; &nbsp;235 </div> <div> <br> </div> <div> &nbsp; &nbsp; Redirecting Input and Output&nbsp; &nbsp; &nbsp;236 </div> <div> <br> </div> <div> &nbsp; &nbsp; Piping Data&nbsp; &nbsp; &nbsp;237 </div> <div> <br> </div> <div> &nbsp; &nbsp; Background Processing&nbsp; &nbsp; &nbsp;237 </div> <div> <br> </div> <div> Writing and Executing a Shell Script&nbsp; &nbsp; &nbsp;237 </div> <div> <br> </div> <div> &nbsp; &nbsp; Running the New Shell Program&nbsp; &nbsp; &nbsp;239 </div> <div> <br> </div> <div> &nbsp; &nbsp; Storing Shell Scripts for System-wide Access&nbsp; &nbsp; &nbsp;240 </div> <div> <br> </div> <div> &nbsp; &nbsp; Interpreting Shell Scripts Through Specific Shells&nbsp; &nbsp; &nbsp;240 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Variables in Shell Scripts&nbsp; &nbsp; &nbsp;242 </div> <div> <br> </div> <div> &nbsp; &nbsp; Assigning a Value to a Variable&nbsp; &nbsp; &nbsp;242 </div> <div> <br> </div> <div> &nbsp; &nbsp; Accessing Variable Values&nbsp; &nbsp; &nbsp;243 </div> <div> <br> </div> <div> &nbsp; &nbsp; Positional Parameters&nbsp; &nbsp; &nbsp;243 </div> <div> <br> </div> <div> &nbsp; &nbsp; A Simple Example of a Positional Parameter&nbsp; &nbsp; &nbsp;243 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Positional Parameters to Access and Retrieve Variables from the Command Line&nbsp; &nbsp; &nbsp;244 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using a Simple Script to Automate Tasks&nbsp; &nbsp; &nbsp;244 </div> <div> <br> </div> <div> &nbsp; &nbsp; Built-in Variables&nbsp; &nbsp; &nbsp;246 </div> <div> <br> </div> <div> &nbsp; &nbsp; Special Characters&nbsp; &nbsp; &nbsp;247 </div> <div> <br> </div> <div> &nbsp; &nbsp; Comparison of Expressions in pdksh and bash&nbsp; &nbsp; &nbsp;250 </div> <div> <br> </div> <div> &nbsp; &nbsp; Comparing Expressions with tcsh&nbsp; &nbsp; &nbsp;255 </div> <div> <br> </div> <div> &nbsp; &nbsp; The for Statement&nbsp; &nbsp; &nbsp;259 </div> <div> <br> </div> <div> &nbsp; &nbsp; The while Statement&nbsp; &nbsp; &nbsp;261 </div> <div> <br> </div> <div> &nbsp; &nbsp; The until Statement&nbsp; &nbsp; &nbsp;263 </div> <div> <br> </div> <div> &nbsp; &nbsp; The repeat Statement (tcsh)&nbsp; &nbsp; &nbsp;263 </div> <div> <br> </div> <div> &nbsp; &nbsp; The select Statement (pdksh)&nbsp; &nbsp; &nbsp;264 </div> <div> <br> </div> <div> &nbsp; &nbsp; The shift Statement&nbsp; &nbsp; &nbsp;264 </div> <div> <br> </div> <div> &nbsp; &nbsp; The if Statement&nbsp; &nbsp; &nbsp;265 </div> <div> <br> </div> <div> &nbsp; &nbsp; The expr Statement&nbsp; &nbsp; &nbsp;266 </div> <div> <br> </div> <div> &nbsp; &nbsp; The case Statement&nbsp; &nbsp; &nbsp;267 </div> <div> <br> </div> <div> &nbsp; &nbsp; The break and exit Statements&nbsp; &nbsp; &nbsp;269 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Functions in Shell Scripts&nbsp; &nbsp; &nbsp;269 </div> <div> <br> </div> <div> Chapter 15&nbsp; The Boot Process&nbsp; &nbsp; &nbsp;271 </div> <div> <br> </div> <div> Running Services at Boot&nbsp; &nbsp; &nbsp;271 </div> <div> <br> </div> <div> Beginning the Boot Loading Process&nbsp; &nbsp; &nbsp;272 </div> <div> <br> </div> <div> Loading the Linux Kernel&nbsp; &nbsp; &nbsp;274 </div> <div> <br> </div> <div> Starting and Stopping Services with systemd&nbsp; &nbsp; &nbsp;275 </div> <div> <br> </div> <div> &nbsp; &nbsp; Controlling Services at Boot with Administrative Tools&nbsp; &nbsp; &nbsp;278 </div> <div> <br> </div> <div> &nbsp; &nbsp; Troubleshooting Runlevel Problems&nbsp; &nbsp; &nbsp;278 </div> <div> <br> </div> <div> Boot-Repair&nbsp; &nbsp; &nbsp;278 </div> <div> <br> </div> <div> Chapter 16&nbsp; System-Monitoring Tools&nbsp; &nbsp; &nbsp;281 </div> <div> <br> </div> <div> Console-Based Monitoring&nbsp; &nbsp; &nbsp;281 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using the kill Command to Control Processes&nbsp; &nbsp; &nbsp;283 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Priority Scheduling and Control&nbsp; &nbsp; &nbsp;285 </div> <div> <br> </div> <div> &nbsp; &nbsp; Displaying Free and Used Memory with free&nbsp; &nbsp; &nbsp;286 </div> <div> <br> </div> <div> &nbsp; &nbsp; Disk Space&nbsp; &nbsp; &nbsp;286 </div> <div> <br> </div> <div> &nbsp; &nbsp; Disk Quotas&nbsp; &nbsp; &nbsp;287 </div> <div> <br> </div> <div> &nbsp; &nbsp; Checking Log Files&nbsp; &nbsp; &nbsp;287 </div> <div> <br> </div> <div> &nbsp; &nbsp; Rotating Log Files&nbsp; &nbsp; &nbsp;289 </div> <div> <br> </div> <div> Graphical Process- and System-Management Tools&nbsp; &nbsp; &nbsp;292 </div> <div> <br> </div> <div> &nbsp; &nbsp; System Monitor&nbsp; &nbsp; &nbsp;292 </div> <div> <br> </div> <div> &nbsp; &nbsp; Conky&nbsp; &nbsp; &nbsp;292 </div> <div> <br> </div> <div> &nbsp; &nbsp; Other Graphical Process- and System-Monitoring Tools&nbsp; &nbsp; &nbsp;297 </div> <div> <br> </div> <div> KDE Process- and System-Monitoring Tools&nbsp; &nbsp; &nbsp;298 </div> <div> <br> </div> <div> Enterprise Server Monitoring&nbsp; &nbsp; &nbsp;298 </div> <div> <br> </div> <div> Chapter 17&nbsp; Backing Up&nbsp; &nbsp; &nbsp;301 </div> <div> <br> </div> <div> Choosing a Backup Strategy&nbsp; &nbsp; &nbsp;301 </div> <div> <br> </div> <div> &nbsp; &nbsp; Why Data Loss Occurs&nbsp; &nbsp; &nbsp;302 </div> <div> <br> </div> <div> &nbsp; &nbsp; Assessing Your Backup Needs and Resources&nbsp; &nbsp; &nbsp;303 </div> <div> <br> </div> <div> &nbsp; &nbsp; Evaluating Backup Strategies&nbsp; &nbsp; &nbsp;304 </div> <div> <br> </div> <div> &nbsp; &nbsp; Making the Choice&nbsp; &nbsp; &nbsp;308 </div> <div> <br> </div> <div> Choosing Backup Hardware and Media&nbsp; &nbsp; &nbsp;308 </div> <div> <br> </div> <div> &nbsp; &nbsp; External Hard Drive&nbsp; &nbsp; &nbsp;308 </div> <div> <br> </div> <div> &nbsp; &nbsp; Network Storage&nbsp; &nbsp; &nbsp;308 </div> <div> <br> </div> <div> &nbsp; &nbsp; Tape Drive Backups&nbsp; &nbsp; &nbsp;309 </div> <div> <br> </div> <div> &nbsp; &nbsp; Cloud Storage&nbsp; &nbsp; &nbsp;309 </div> <div> <br> </div> <div> Using Backup Software&nbsp; &nbsp; &nbsp;309 </div> <div> <br> </div> <div> &nbsp; &nbsp; tar: The Most Basic Backup Tool&nbsp; &nbsp; &nbsp;310 </div> <div> <br> </div> <div> &nbsp; &nbsp; The GNOME File Roller&nbsp; &nbsp; &nbsp;312 </div> <div> <br> </div> <div> &nbsp; &nbsp; The KDE ark Archiving Tool&nbsp; &nbsp; &nbsp;312 </div> <div> <br> </div> <div> &nbsp; &nbsp; Déjà Dup&nbsp; &nbsp; &nbsp;313 </div> <div> <br> </div> <div> &nbsp; &nbsp; Back In Time&nbsp; &nbsp; &nbsp;314 </div> <div> <br> </div> <div> &nbsp; &nbsp; Unison&nbsp; &nbsp; &nbsp;315 </div> <div> <br> </div> <div> &nbsp; &nbsp; Amanda&nbsp; &nbsp; &nbsp;315 </div> <div> <br> </div> <div> &nbsp; &nbsp; Alternative Backup Software&nbsp; &nbsp; &nbsp;316 </div> <div> <br> </div> <div> Copying Files&nbsp; &nbsp; &nbsp;316 </div> <div> <br> </div> <div> &nbsp; &nbsp; Copying Files Using tar&nbsp; &nbsp; &nbsp;317 </div> <div> <br> </div> <div> &nbsp; &nbsp; Compressing, Encrypting, and Sending tar Streams&nbsp; &nbsp; &nbsp;318 </div> <div> <br> </div> <div> &nbsp; &nbsp; Copying Files Using cp&nbsp; &nbsp; &nbsp;318 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using rsync&nbsp; &nbsp; &nbsp;319 </div> <div> <br> </div> <div> Version Control for Configuration Files&nbsp; &nbsp; &nbsp;320 </div> <div> <br> </div> <div> System Rescue&nbsp; &nbsp; &nbsp;323 </div> <div> <br> </div> <div> &nbsp; &nbsp; The Ubuntu Rescue Disc&nbsp; &nbsp; &nbsp;323 </div> <div> <br> </div> <div> &nbsp; &nbsp; Restoring the GRUB2 Boot Loader&nbsp; &nbsp; &nbsp;323 </div> <div> <br> </div> <div> &nbsp; &nbsp; Saving Files from a Nonbooting Hard Drive&nbsp; &nbsp; &nbsp;324 </div> <div> <br> </div> <div> Chapter 18&nbsp; Networking&nbsp; &nbsp; &nbsp;325 </div> <div> <br> </div> <div> Laying the Foundation: The localhost Interface&nbsp; &nbsp; &nbsp;326 </div> <div> <br> </div> <div> &nbsp; &nbsp; Checking for the Availability of the Loopback Interface&nbsp; &nbsp; &nbsp;326 </div> <div> <br> </div> <div> &nbsp; &nbsp; Configuring the Loopback Interface Manually&nbsp; &nbsp; &nbsp;327 </div> <div> <br> </div> <div> Checking Connections with ping, traceroute, and mtr&nbsp; &nbsp; &nbsp;328 </div> <div> <br> </div> <div> Networking with TCP/IP&nbsp; &nbsp; &nbsp;330 </div> <div> <br> </div> <div> &nbsp; &nbsp; TCP/IP Addressing&nbsp; &nbsp; &nbsp;331 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using IP Masquerading in Ubuntu&nbsp; &nbsp; &nbsp;332 </div> <div> <br> </div> <div> &nbsp; &nbsp; Ports&nbsp; &nbsp; &nbsp;333 </div> <div> <br> </div> <div> IPv6 Basics&nbsp; &nbsp; &nbsp;334 </div> <div> <br> </div> <div> Network Organization&nbsp; &nbsp; &nbsp;337 </div> <div> <br> </div> <div> &nbsp; &nbsp; Subnetting&nbsp; &nbsp; &nbsp;337 </div> <div> <br> </div> <div> &nbsp; &nbsp; Subnet Masks&nbsp; &nbsp; &nbsp;337 </div> <div> <br> </div> <div> &nbsp; &nbsp; Broadcast, Unicast, and Multicast Addressing&nbsp; &nbsp; &nbsp;338 </div> <div> <br> </div> <div> Hardware Devices for Networking&nbsp; &nbsp; &nbsp;338 </div> <div> <br> </div> <div> &nbsp; &nbsp; Network Interface Cards&nbsp; &nbsp; &nbsp;338 </div> <div> <br> </div> <div> &nbsp; &nbsp; Network Cable&nbsp; &nbsp; &nbsp;340 </div> <div> <br> </div> <div> &nbsp; &nbsp; Hubs and Switches&nbsp; &nbsp; &nbsp;342 </div> <div> <br> </div> <div> &nbsp; &nbsp; Routers and Bridges&nbsp; &nbsp; &nbsp;343 </div> <div> <br> </div> <div> &nbsp; &nbsp; Initializing New Network Hardware&nbsp; &nbsp; &nbsp;343 </div> <div> <br> </div> <div> Using Network Configuration Tools&nbsp; &nbsp; &nbsp;345 </div> <div> <br> </div> <div> &nbsp; &nbsp; Command-Line Network Interface Configuration&nbsp; &nbsp; &nbsp;346 </div> <div> <br> </div> <div> &nbsp; &nbsp; Network Configuration Files&nbsp; &nbsp; &nbsp;350 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Graphical Configuration Tools&nbsp; &nbsp; &nbsp;355 </div> <div> <br> </div> <div> Dynamic Host Configuration Protocol&nbsp; &nbsp; &nbsp;355 </div> <div> <br> </div> <div> &nbsp; &nbsp; How DHCP Works&nbsp; &nbsp; &nbsp;356 </div> <div> <br> </div> <div> &nbsp; &nbsp; Activating DHCP at Installation and Boot Time&nbsp; &nbsp; &nbsp;357 </div> <div> <br> </div> <div> &nbsp; &nbsp; DHCP Software Installation and Configuration&nbsp; &nbsp; &nbsp;358 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using DHCP to Configure Network Hosts&nbsp; &nbsp; &nbsp;359 </div> <div> <br> </div> <div> &nbsp; &nbsp; Other Uses for DHCP&nbsp; &nbsp; &nbsp;361 </div> <div> <br> </div> <div> Wireless Networking&nbsp; &nbsp; &nbsp;361 </div> <div> <br> </div> <div> &nbsp; &nbsp; Support for Wireless Networking in Ubuntu&nbsp; &nbsp; &nbsp;361 </div> <div> <br> </div> <div> &nbsp; &nbsp; Choosing from Among Available Wireless Protocols&nbsp; &nbsp; &nbsp;363 </div> <div> <br> </div> <div> Beyond the Network and onto the Internet&nbsp; &nbsp; &nbsp;363 </div> <div> <br> </div> <div> Common Configuration Information&nbsp; &nbsp; &nbsp;364 </div> <div> <br> </div> <div> &nbsp; &nbsp; Configuring Digital Subscriber Line Access&nbsp; &nbsp; &nbsp;365 </div> <div> <br> </div> <div> &nbsp; &nbsp; Understanding PPP over Ethernet&nbsp; &nbsp; &nbsp;366 </div> <div> <br> </div> <div> &nbsp; &nbsp; Configuring a PPPoE Connection Manually&nbsp; &nbsp; &nbsp;366 </div> <div> <br> </div> <div> &nbsp; &nbsp; Configuring Dial-up Internet Access&nbsp; &nbsp; &nbsp;367 </div> <div> <br> </div> <div> &nbsp; &nbsp; Troubleshooting Connection Problems&nbsp; &nbsp; &nbsp;368 </div> <div> <br> </div> <div> Chapter 19&nbsp; Remote Access with SSH and VNC&nbsp; &nbsp; &nbsp;371 </div> <div> <br> </div> <div> Setting Up an SSH Server&nbsp; &nbsp; &nbsp;371 </div> <div> <br> </div> <div> SSH Tools&nbsp; &nbsp; &nbsp;372 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using scp to Copy Individual Files Between Machines&nbsp; &nbsp; &nbsp;372 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using sftp to Copy Many Files Between Machines&nbsp; &nbsp; &nbsp;373 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using ssh-keygen to Enable Key-Based Logins&nbsp; &nbsp; &nbsp;373 </div> <div> <br> </div> <div> Virtual Network Computing&nbsp; &nbsp; &nbsp;375 </div> <div> <br> </div> <div> Guacamole&nbsp; &nbsp; &nbsp;377 </div> <div> <br> </div> <div> Chapter 20&nbsp; Securing Your Machines&nbsp; &nbsp; &nbsp;379 </div> <div> <br> </div> <div> Understanding Computer Attacks&nbsp; &nbsp; &nbsp;379 </div> <div> <br> </div> <div> Assessing Your Vulnerability&nbsp; &nbsp; &nbsp;381 </div> <div> <br> </div> <div> Protecting Your Machine&nbsp; &nbsp; &nbsp;382 </div> <div> <br> </div> <div> &nbsp; &nbsp; Securing a Wireless Network&nbsp; &nbsp; &nbsp;382 </div> <div> <br> </div> <div> &nbsp; &nbsp; Passwords and Physical Security&nbsp; &nbsp; &nbsp;383 </div> <div> <br> </div> <div> &nbsp; &nbsp; Configuring and Using Tripwire&nbsp; &nbsp; &nbsp;384 </div> <div> <br> </div> <div> &nbsp; &nbsp; Securing Devices&nbsp; &nbsp; &nbsp;385 </div> <div> <br> </div> <div> Viruses&nbsp; &nbsp; &nbsp;385 </div> <div> <br> </div> <div> Configuring Your Firewall&nbsp; &nbsp; &nbsp;386 </div> <div> <br> </div> <div> AppArmor&nbsp; &nbsp; &nbsp;388 </div> <div> <br> </div> <div> Forming a Disaster Recovery Plan&nbsp; &nbsp; &nbsp;390 </div> <div> <br> </div> <div> Chapter 21&nbsp; Performance Tuning&nbsp; &nbsp; &nbsp;393 </div> <div> <br> </div> <div> Storage Disk&nbsp; &nbsp; &nbsp;394 </div> <div> <br> </div> <div> &nbsp; &nbsp; Linux File Systems&nbsp; &nbsp; &nbsp;394 </div> <div> <br> </div> <div> &nbsp; &nbsp; The hdparm Command&nbsp; &nbsp; &nbsp;395 </div> <div> <br> </div> <div> &nbsp; &nbsp; File System Tuning&nbsp; &nbsp; &nbsp;396 </div> <div> <br> </div> <div> &nbsp; &nbsp; The tune2fs Command&nbsp; &nbsp; &nbsp;396 </div> <div> <br> </div> <div> &nbsp; &nbsp; The e2fsck Command&nbsp; &nbsp; &nbsp;397 </div> <div> <br> </div> <div> &nbsp; &nbsp; The badblocks Command&nbsp; &nbsp; &nbsp;397 </div> <div> <br> </div> <div> &nbsp; &nbsp; Disabling File Access Time&nbsp; &nbsp; &nbsp;397 </div> <div> <br> </div> <div> Kernel&nbsp; &nbsp; &nbsp;398 </div> <div> <br> </div> <div> Tuned&nbsp; &nbsp; &nbsp;399 </div> <div> <br> </div> <div> Chapter 22&nbsp; Kernel and Module Management&nbsp; &nbsp; &nbsp;401 </div> <div> <br> </div> <div> The Linux Kernel&nbsp; &nbsp; &nbsp;402 </div> <div> <br> </div> <div> &nbsp; &nbsp; The Linux Source Tree&nbsp; &nbsp; &nbsp;403 </div> <div> <br> </div> <div> &nbsp; &nbsp; Types of Kernels&nbsp; &nbsp; &nbsp;405 </div> <div> <br> </div> <div> Managing Modules&nbsp; &nbsp; &nbsp;406 </div> <div> <br> </div> <div> When to Recompile&nbsp; &nbsp; &nbsp;408 </div> <div> <br> </div> <div> Kernel Versions&nbsp; &nbsp; &nbsp;409 </div> <div> <br> </div> <div> Obtaining the Kernel Sources&nbsp; &nbsp; &nbsp;409 </div> <div> <br> </div> <div> Patching the Kernel&nbsp; &nbsp; &nbsp;410 </div> <div> <br> </div> <div> Compiling the Kernel&nbsp; &nbsp; &nbsp;412 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using xconfig to Configure the Kernel&nbsp; &nbsp; &nbsp;414 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating an Initial RAM Disk Image&nbsp; &nbsp; &nbsp;418 </div> <div> <br> </div> <div> When Something Goes Wrong&nbsp; &nbsp; &nbsp;418 </div> <div> <br> </div> <div> &nbsp; &nbsp; Errors During Compile&nbsp; &nbsp; &nbsp;418 </div> <div> <br> </div> <div> &nbsp; &nbsp; Runtime Errors, Boot Loader Problems, and Kernel Oops&nbsp; &nbsp; &nbsp;419 </div> <div> <br> </div> <div> PART IV: UBUNTU AS A SERVER </div> <div> <br> </div> <div> Chapter 23&nbsp; Sharing Files and Printers&nbsp; &nbsp; &nbsp;421 </div> <div> <br> </div> <div> Using Network File System&nbsp; &nbsp; &nbsp;422 </div> <div> <br> </div> <div> &nbsp; &nbsp; Installing and Starting or Stopping NFS&nbsp; &nbsp; &nbsp;422 </div> <div> <br> </div> <div> &nbsp; &nbsp; NFS Server Configuration&nbsp; &nbsp; &nbsp;422 </div> <div> <br> </div> <div> &nbsp; &nbsp; NFS Client Configuration&nbsp; &nbsp; &nbsp;423 </div> <div> <br> </div> <div> Putting Samba to Work&nbsp; &nbsp; &nbsp;424 </div> <div> <br> </div> <div> &nbsp; &nbsp; Manually Configuring Samba with /etc/samba/smb conf&nbsp; &nbsp; &nbsp;426 </div> <div> <br> </div> <div> &nbsp; &nbsp; Testing Samba with the testparm Command&nbsp; &nbsp; &nbsp;429 </div> <div> <br> </div> <div> &nbsp; &nbsp; Starting, Stopping, and Restarting the smbd Daemon&nbsp; &nbsp; &nbsp;429 </div> <div> <br> </div> <div> &nbsp; &nbsp; Mounting Samba Shares&nbsp; &nbsp; &nbsp;430 </div> <div> <br> </div> <div> Network and Remote Printing with Ubuntu&nbsp; &nbsp; &nbsp;431 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating Network Printers&nbsp; &nbsp; &nbsp;431 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using the CUPS GUI&nbsp; &nbsp; &nbsp;433 </div> <div> <br> </div> <div> &nbsp; &nbsp; Avoiding Printer Support Problems&nbsp; &nbsp; &nbsp;434 </div> <div> <br> </div> <div> Chapter 24&nbsp; Common Web Server Stacks&nbsp; &nbsp; &nbsp;437 </div> <div> <br> </div> <div> LAMP&nbsp; &nbsp; &nbsp;437 </div> <div> <br> </div> <div> LEMP&nbsp; &nbsp; &nbsp;439 </div> <div> <br> </div> <div> MEAN&nbsp; &nbsp; &nbsp;440 </div> <div> <br> </div> <div> Chapter 25&nbsp; Apache Web Server Management&nbsp; &nbsp; &nbsp;443 </div> <div> <br> </div> <div> About the Apache Web Server&nbsp; &nbsp; &nbsp;443 </div> <div> <br> </div> <div> Installing the Apache Server&nbsp; &nbsp; &nbsp;444 </div> <div> <br> </div> <div> &nbsp; &nbsp; Starting and Stopping Apache&nbsp; &nbsp; &nbsp;444 </div> <div> <br> </div> <div> Runtime Server Configuration Settings&nbsp; &nbsp; &nbsp;446 </div> <div> <br> </div> <div> &nbsp; &nbsp; Runtime Configuration Directives&nbsp; &nbsp; &nbsp;446 </div> <div> <br> </div> <div> &nbsp; &nbsp; Editing apache2 conf&nbsp; &nbsp; &nbsp;447 </div> <div> <br> </div> <div> &nbsp; &nbsp; Apache Multiprocessing Modules&nbsp; &nbsp; &nbsp;449 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using htaccess Configuration Files&nbsp; &nbsp; &nbsp;450 </div> <div> <br> </div> <div> File System Authentication and Access Control&nbsp; &nbsp; &nbsp;452 </div> <div> <br> </div> <div> &nbsp; &nbsp; Restricting Access with Require&nbsp; &nbsp; &nbsp;452 </div> <div> <br> </div> <div> &nbsp; &nbsp; Authentication&nbsp; &nbsp; &nbsp;453 </div> <div> <br> </div> <div> &nbsp; &nbsp; Final Words on Access Control&nbsp; &nbsp; &nbsp;455 </div> <div> <br> </div> <div> Apache Modules&nbsp; &nbsp; &nbsp;455 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_access&nbsp; &nbsp; &nbsp;456 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_alias&nbsp; &nbsp; &nbsp;456 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_asis&nbsp; &nbsp; &nbsp;456 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_auth&nbsp; &nbsp; &nbsp;457 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_auth_anon&nbsp; &nbsp; &nbsp;457 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_auth_dbm&nbsp; &nbsp; &nbsp;457 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_auth_digest&nbsp; &nbsp; &nbsp;457 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_autoindex4&nbsp; &nbsp; &nbsp;58 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_cgi&nbsp; &nbsp; &nbsp;458 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_dir and mod_env&nbsp; &nbsp; &nbsp;458 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_expires&nbsp; &nbsp; &nbsp;458 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_headers&nbsp; &nbsp; &nbsp;458 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_include&nbsp; &nbsp; &nbsp;459 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_info and mod_log_config&nbsp; &nbsp; &nbsp;459 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_mime and mod_mime_magic&nbsp; &nbsp; &nbsp;459 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_negotiation&nbsp; &nbsp; &nbsp;459 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_rewrite&nbsp; &nbsp; &nbsp;459 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_setenvif&nbsp; &nbsp; &nbsp;460 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_speling&nbsp; &nbsp; &nbsp;460 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_status&nbsp; &nbsp; &nbsp;460 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_ssl&nbsp; &nbsp; &nbsp;460 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_unique_id&nbsp; &nbsp; &nbsp;460 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_userdir&nbsp; &nbsp; &nbsp;460 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_usertrack&nbsp; &nbsp; &nbsp;460 </div> <div> <br> </div> <div> &nbsp; &nbsp; mod_vhost_alias&nbsp; &nbsp; &nbsp;460 </div> <div> <br> </div> <div> Virtual Hosting&nbsp; &nbsp; &nbsp;461 </div> <div> <br> </div> <div> &nbsp; &nbsp; Address-Based Virtual Hosts&nbsp; &nbsp; &nbsp;461 </div> <div> <br> </div> <div> &nbsp; &nbsp; Name-Based Virtual Hosts&nbsp; &nbsp; &nbsp;461 </div> <div> <br> </div> <div> Logging&nbsp; &nbsp; &nbsp;463 </div> <div> <br> </div> <div> HTTPS&nbsp; &nbsp; &nbsp;464 </div> <div> <br> </div> <div> Chapter 26&nbsp; Nginx Web Server Management&nbsp; &nbsp; &nbsp;467 </div> <div> <br> </div> <div> About the Nginx Web Server&nbsp; &nbsp; &nbsp;467 </div> <div> <br> </div> <div> Installing the Nginx Server&nbsp; &nbsp; &nbsp;469 </div> <div> <br> </div> <div> &nbsp; &nbsp; Installing from the Ubuntu Repositories&nbsp; &nbsp; &nbsp;469 </div> <div> <br> </div> <div> &nbsp; &nbsp; Building the Source Yourself&nbsp; &nbsp; &nbsp;469 </div> <div> <br> </div> <div> Configuring the Nginx Server&nbsp; &nbsp; &nbsp;470 </div> <div> <br> </div> <div> Virtual Hosting&nbsp; &nbsp; &nbsp;473 </div> <div> <br> </div> <div> Setting Up PHP&nbsp; &nbsp; &nbsp;474 </div> <div> <br> </div> <div> Adding and Configuring Modules&nbsp; &nbsp; &nbsp;475 </div> <div> <br> </div> <div> HTTPS&nbsp; &nbsp; &nbsp;476 </div> <div> <br> </div> <div> Chapter 27&nbsp; Other HTTP Servers&nbsp; &nbsp; &nbsp;479 </div> <div> <br> </div> <div> Lighttpd&nbsp; &nbsp; &nbsp;479 </div> <div> <br> </div> <div> Yaws&nbsp; &nbsp; &nbsp;480 </div> <div> <br> </div> <div> Cherokee&nbsp; &nbsp; &nbsp;480 </div> <div> <br> </div> <div> Jetty&nbsp; &nbsp; &nbsp;481 </div> <div> <br> </div> <div> thttpd&nbsp; &nbsp; &nbsp;481 </div> <div> <br> </div> <div> Apache Tomcat&nbsp; &nbsp; &nbsp;482 </div> <div> <br> </div> <div> WildFly&nbsp; &nbsp; &nbsp;482 </div> <div> <br> </div> <div> Caddy&nbsp; &nbsp; &nbsp;482 </div> <div> <br> </div> <div> Chapter 28&nbsp; Administering Relational Database Services&nbsp; &nbsp; &nbsp;483 </div> <div> <br> </div> <div> A Brief Review of Database Basics&nbsp; &nbsp; &nbsp;484 </div> <div> <br> </div> <div> &nbsp; &nbsp; How Relational Databases Work&nbsp; &nbsp; &nbsp;486 </div> <div> <br> </div> <div> &nbsp; &nbsp; Understanding SQL Basics&nbsp; &nbsp; &nbsp;487 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating Tables&nbsp; &nbsp; &nbsp;488 </div> <div> <br> </div> <div> &nbsp; &nbsp; Inserting Data into Tables&nbsp; &nbsp; &nbsp;489 </div> <div> <br> </div> <div> &nbsp; &nbsp; Retrieving Data from a Database&nbsp; &nbsp; &nbsp;490 </div> <div> <br> </div> <div> Choosing a Database: MySQL Versus PostgreSQL&nbsp; &nbsp; &nbsp;492 </div> <div> <br> </div> <div> &nbsp; &nbsp; Speed&nbsp; &nbsp; &nbsp;492 </div> <div> <br> </div> <div> &nbsp; &nbsp; Data Locking&nbsp; &nbsp; &nbsp;492 </div> <div> <br> </div> <div> &nbsp; &nbsp; ACID Compliance in Transaction Processing to Protect Data Integrity&nbsp; &nbsp; &nbsp;493 </div> <div> <br> </div> <div> &nbsp; &nbsp; SQL Subqueries&nbsp; &nbsp; &nbsp;494 </div> <div> <br> </div> <div> &nbsp; &nbsp; Procedural Languages and Triggers&nbsp; &nbsp; &nbsp;494 </div> <div> <br> </div> <div> Configuring MySQL&nbsp; &nbsp; &nbsp;494 </div> <div> <br> </div> <div> &nbsp; &nbsp; Setting a Password for the MySQL Root User&nbsp; &nbsp; &nbsp;495 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating a Database in MySQL&nbsp; &nbsp; &nbsp;496 </div> <div> <br> </div> <div> Configuring PostgreSQL&nbsp; &nbsp; &nbsp;498 </div> <div> <br> </div> <div> &nbsp; &nbsp; Initializing the Data Directory in PostgreSQL&nbsp; &nbsp; &nbsp;498 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating a Database in PostgreSQL&nbsp; &nbsp; &nbsp;499 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating Database Users in PostgreSQL&nbsp; &nbsp; &nbsp;499 </div> <div> <br> </div> <div> &nbsp; &nbsp; Deleting Database Users in PostgreSQL&nbsp; &nbsp; &nbsp;500 </div> <div> <br> </div> <div> &nbsp; &nbsp; Granting and Revoking Privileges in PostgreSQL&nbsp; &nbsp; &nbsp;500 </div> <div> <br> </div> <div> Database Clients&nbsp; &nbsp; &nbsp;501 </div> <div> <br> </div> <div> &nbsp; &nbsp; SSH Access to a Database&nbsp; &nbsp; &nbsp;501 </div> <div> <br> </div> <div> &nbsp; &nbsp; Local GUI Client Access to a Database&nbsp; &nbsp; &nbsp;503 </div> <div> <br> </div> <div> &nbsp; &nbsp; Web Access to a Database&nbsp; &nbsp; &nbsp;503 </div> <div> <br> </div> <div> &nbsp; &nbsp; The MySQL Command-Line Client&nbsp; &nbsp; &nbsp;504 </div> <div> <br> </div> <div> &nbsp; &nbsp; The PostgreSQL Command-Line Client&nbsp; &nbsp; &nbsp;505 </div> <div> <br> </div> <div> &nbsp; &nbsp; Graphical Clients&nbsp; &nbsp; &nbsp;506 </div> <div> <br> </div> <div> Chapter 29&nbsp; NoSQL Databases&nbsp; &nbsp; &nbsp;509 </div> <div> <br> </div> <div> Key/Value Stores&nbsp; &nbsp; &nbsp;512 </div> <div> <br> </div> <div> &nbsp; &nbsp; Berkeley DB&nbsp; &nbsp; &nbsp;512 </div> <div> <br> </div> <div> &nbsp; &nbsp; Cassandra&nbsp; &nbsp; &nbsp;513 </div> <div> <br> </div> <div> &nbsp; &nbsp; etcd&nbsp; &nbsp; &nbsp;513 </div> <div> <br> </div> <div> &nbsp; &nbsp; Memcached and MemcacheDB&nbsp; &nbsp; &nbsp;513 </div> <div> <br> </div> <div> &nbsp; &nbsp; Redis&nbsp; &nbsp; &nbsp;514 </div> <div> <br> </div> <div> &nbsp; &nbsp; Riak&nbsp; &nbsp; &nbsp;514 </div> <div> <br> </div> <div> &nbsp; &nbsp; Scylla&nbsp; &nbsp; &nbsp;514 </div> <div> <br> </div> <div> Document Stores&nbsp; &nbsp; &nbsp;514 </div> <div> <br> </div> <div> &nbsp; &nbsp; CouchDB&nbsp; &nbsp; &nbsp;515 </div> <div> <br> </div> <div> &nbsp; &nbsp; MongoDB&nbsp; &nbsp; &nbsp;516 </div> <div> <br> </div> <div> &nbsp; &nbsp; BaseX&nbsp; &nbsp; &nbsp;517 </div> <div> <br> </div> <div> Wide Column Stores&nbsp; &nbsp; &nbsp;517 </div> <div> <br> </div> <div> &nbsp; &nbsp; BigTable&nbsp; &nbsp; &nbsp;517 </div> <div> <br> </div> <div> &nbsp; &nbsp; HBase&nbsp; &nbsp; &nbsp;518 </div> <div> <br> </div> <div> Graph Stores&nbsp; &nbsp; &nbsp;518 </div> <div> <br> </div> <div> &nbsp; &nbsp; Neo4j&nbsp; &nbsp; &nbsp;518 </div> <div> <br> </div> <div> &nbsp; &nbsp; OrientDB&nbsp; &nbsp; &nbsp;519 </div> <div> <br> </div> <div> &nbsp; &nbsp; HyperGraphDB&nbsp; &nbsp; &nbsp;519 </div> <div> <br> </div> <div> &nbsp; &nbsp; FlockDB&nbsp; &nbsp; &nbsp;519 </div> <div> <br> </div> <div> Chapter 30&nbsp; Virtualization on Ubuntu&nbsp; &nbsp; &nbsp;521 </div> <div> <br> </div> <div> KVM&nbsp; &nbsp; &nbsp;523 </div> <div> <br> </div> <div> VirtualBox&nbsp; &nbsp; &nbsp;527 </div> <div> <br> </div> <div> VMware&nbsp; &nbsp; &nbsp;528 </div> <div> <br> </div> <div> Xen&nbsp; &nbsp; &nbsp;528 </div> <div> <br> </div> <div> Chapter 31&nbsp; Containers and Ubuntu&nbsp; &nbsp; &nbsp;531 </div> <div> <br> </div> <div> LXC and LXD&nbsp; &nbsp; &nbsp;532 </div> <div> <br> </div> <div> Docker&nbsp; &nbsp; &nbsp;533 </div> <div> <br> </div> <div> Kubernetes&nbsp; &nbsp; &nbsp;534 </div> <div> <br> </div> <div> Chapter 32&nbsp; Ubuntu and Cloud Computing&nbsp; &nbsp; &nbsp;535 </div> <div> <br> </div> <div> Why a Cloud?&nbsp; &nbsp; &nbsp;536 </div> <div> <br> </div> <div> &nbsp; &nbsp; Software as a Service (SaaS)&nbsp; &nbsp; &nbsp;537 </div> <div> <br> </div> <div> &nbsp; &nbsp; Platform as a Service (PaaS)&nbsp; &nbsp; &nbsp;537 </div> <div> <br> </div> <div> &nbsp; &nbsp; Infrastructure as a Service (IaaS)&nbsp; &nbsp; &nbsp;537 </div> <div> <br> </div> <div> &nbsp; &nbsp; Metal as a Service (MaaS)&nbsp; &nbsp; &nbsp;537 </div> <div> <br> </div> <div> &nbsp; &nbsp; Things to Consider Before You Make Any Decisions&nbsp; &nbsp; &nbsp;538 </div> <div> <br> </div> <div> Ubuntu on the Public Cloud&nbsp; &nbsp; &nbsp;538 </div> <div> <br> </div> <div> &nbsp; &nbsp; OpenStack&nbsp; &nbsp; &nbsp;538 </div> <div> <br> </div> <div> &nbsp; &nbsp; Amazon Web Services&nbsp; &nbsp; &nbsp;539 </div> <div> <br> </div> <div> &nbsp; &nbsp; Google Cloud&nbsp; &nbsp; &nbsp;539 </div> <div> <br> </div> <div> &nbsp; &nbsp; Microsoft Azure&nbsp; &nbsp; &nbsp;539 </div> <div> <br> </div> <div> &nbsp; &nbsp; Hybrid Clouds&nbsp; &nbsp; &nbsp;539 </div> <div> <br> </div> <div> Canonical-Specific Cloud Offerings&nbsp; &nbsp; &nbsp;540 </div> <div> <br> </div> <div> &nbsp; &nbsp; Juju&nbsp; &nbsp; &nbsp;540 </div> <div> <br> </div> <div> &nbsp; &nbsp; Mojo: Continuous Delivery for Juju&nbsp; &nbsp; &nbsp;541 </div> <div> <br> </div> <div> &nbsp; &nbsp; Landscape&nbsp; &nbsp; &nbsp;541 </div> <div> <br> </div> <div> Chapter 33&nbsp; Managing Sets of Servers&nbsp; &nbsp; &nbsp;543 </div> <div> <br> </div> <div> Puppet&nbsp; &nbsp; &nbsp;543 </div> <div> <br> </div> <div> Chef&nbsp; &nbsp; &nbsp;544 </div> <div> <br> </div> <div> Ansible&nbsp; &nbsp; &nbsp;544 </div> <div> <br> </div> <div> SaltStack&nbsp; &nbsp; &nbsp;544 </div> <div> <br> </div> <div> CFEngine&nbsp; &nbsp; &nbsp;545 </div> <div> <br> </div> <div> Juju&nbsp; &nbsp; &nbsp;545 </div> <div> <br> </div> <div> Landscape&nbsp; &nbsp; &nbsp;545 </div> <div> <br> </div> <div> Chapter 34&nbsp; Handling Email&nbsp; &nbsp; &nbsp;547 </div> <div> <br> </div> <div> How Email Is Sent and Received&nbsp; &nbsp; &nbsp;547 </div> <div> <br> </div> <div> &nbsp; &nbsp; The Mail Transport Agent&nbsp; &nbsp; &nbsp;548 </div> <div> <br> </div> <div> &nbsp; &nbsp; Choosing an MTA&nbsp; &nbsp; &nbsp;550 </div> <div> <br> </div> <div> &nbsp; &nbsp; The Mail Delivery Agent&nbsp; &nbsp; &nbsp;550 </div> <div> <br> </div> <div> &nbsp; &nbsp; The Mail User Agent&nbsp; &nbsp; &nbsp;551 </div> <div> <br> </div> <div> Basic Postfix Configuration and Operation&nbsp; &nbsp; &nbsp;552 </div> <div> <br> </div> <div> &nbsp; &nbsp; Configuring Masquerading&nbsp; &nbsp; &nbsp;554 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using Smart Hosts&nbsp; &nbsp; &nbsp;554 </div> <div> <br> </div> <div> &nbsp; &nbsp; Setting Message Delivery Intervals&nbsp; &nbsp; &nbsp;555 </div> <div> <br> </div> <div> &nbsp; &nbsp; Mail Relaying&nbsp; &nbsp; &nbsp;555 </div> <div> <br> </div> <div> &nbsp; &nbsp; Forwarding Email with Aliases&nbsp; &nbsp; &nbsp;556 </div> <div> <br> </div> <div> Using Fetchmail to Retrieve Mail&nbsp; &nbsp; &nbsp;557 </div> <div> <br> </div> <div> &nbsp; &nbsp; Installing Fetchmail&nbsp; &nbsp; &nbsp;557 </div> <div> <br> </div> <div> &nbsp; &nbsp; Configuring Fetchmail&nbsp; &nbsp; &nbsp;557 </div> <div> <br> </div> <div> Choosing a Mail Delivery Agent&nbsp; &nbsp; &nbsp;560 </div> <div> <br> </div> <div> &nbsp; &nbsp; Procmail&nbsp; &nbsp; &nbsp;561 </div> <div> <br> </div> <div> &nbsp; &nbsp; Spamassassin&nbsp; &nbsp; &nbsp;561 </div> <div> <br> </div> <div> &nbsp; &nbsp; Squirrelmail&nbsp; &nbsp; &nbsp;561 </div> <div> <br> </div> <div> &nbsp; &nbsp; Virus Scanners&nbsp; &nbsp; &nbsp;562 </div> <div> <br> </div> <div> &nbsp; &nbsp; Autoresponders&nbsp; &nbsp; &nbsp;562 </div> <div> <br> </div> <div> Chapter 35&nbsp; Proxying, Reverse Proxying, and Virtual Private Networks (VPNs)&nbsp; &nbsp; &nbsp;563 </div> <div> <br> </div> <div> What Is a Proxy Server?&nbsp; &nbsp; &nbsp;563 </div> <div> <br> </div> <div> Installing Squid&nbsp; &nbsp; &nbsp;564 </div> <div> <br> </div> <div> Configuring Clients&nbsp; &nbsp; &nbsp;564 </div> <div> <br> </div> <div> Access Control Lists&nbsp; &nbsp; &nbsp;565 </div> <div> <br> </div> <div> Specifying Client IP Addresses&nbsp; &nbsp; &nbsp;569 </div> <div> <br> </div> <div> Sample Configurations&nbsp; &nbsp; &nbsp;570 </div> <div> <br> </div> <div> Virtual Private Networks (VPNs)&nbsp; &nbsp; &nbsp;572 </div> <div> <br> </div> <div> &nbsp; &nbsp; Setting Up a VPN Client&nbsp; &nbsp; &nbsp;573 </div> <div> <br> </div> <div> &nbsp; &nbsp; Setting Up a VPN Server&nbsp; &nbsp; &nbsp;575 </div> <div> <br> </div> <div> Chapter 36&nbsp; Lightweight Directory Access Protocol (LDAP)&nbsp; &nbsp; &nbsp;579 </div> <div> <br> </div> <div> Configuring the Server&nbsp; &nbsp; &nbsp;580 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating Your Schema&nbsp; &nbsp; &nbsp;580 </div> <div> <br> </div> <div> &nbsp; &nbsp; Populating Your Directory&nbsp; &nbsp; &nbsp;582 </div> <div> <br> </div> <div> Configuring Clients&nbsp; &nbsp; &nbsp;584 </div> <div> <br> </div> <div> LDAP Administration&nbsp; &nbsp; &nbsp;584 </div> <div> <br> </div> <div> Chapter 37&nbsp; Name Serving with the Domain Name System (DNS)&nbsp; &nbsp; &nbsp;587 </div> <div> <br> </div> <div> Understanding Domain Names&nbsp; &nbsp; &nbsp;588 </div> <div> <br> </div> <div> &nbsp; &nbsp; DNS Servers&nbsp; &nbsp; &nbsp;589 </div> <div> <br> </div> <div> &nbsp; &nbsp; DNS Records&nbsp; &nbsp; &nbsp;590 </div> <div> <br> </div> <div> Setting Up a DNS Server with BIND&nbsp; &nbsp; &nbsp;593 </div> <div> <br> </div> <div> PART V: PROGRAMMING LINUX </div> <div> <br> </div> <div> Chapter 38&nbsp; Using Programming Tools&nbsp; &nbsp; &nbsp;597 </div> <div> <br> </div> <div> Programming in C with Linux&nbsp; &nbsp; &nbsp;598 </div> <div> <br> </div> <div> Using the C Programming Project Management Tools Provided with Ubuntu&nbsp; &nbsp; &nbsp;599 </div> <div> <br> </div> <div> &nbsp; &nbsp; Building Programs with make&nbsp; &nbsp; &nbsp;599 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using the autoconf Utility to Configure Code&nbsp; &nbsp; &nbsp;601 </div> <div> <br> </div> <div> &nbsp; &nbsp; Debugging Tools&nbsp; &nbsp; &nbsp;602 </div> <div> <br> </div> <div> Using the GNU C Compiler&nbsp; &nbsp; &nbsp;603 </div> <div> <br> </div> <div> Programming in Java with Linux&nbsp; &nbsp; &nbsp;604 </div> <div> <br> </div> <div> Graphical Development Tools&nbsp; &nbsp; &nbsp;605 </div> <div> <br> </div> <div> &nbsp; &nbsp; IDEs and SDKs&nbsp; &nbsp; &nbsp;605 </div> <div> <br> </div> <div> &nbsp; &nbsp; Using the KDevelop Client&nbsp; &nbsp; &nbsp;606 </div> <div> <br> </div> <div> &nbsp; &nbsp; The Glade Client for Developing in GNOME&nbsp; &nbsp; &nbsp;607 </div> <div> <br> </div> <div> Beginning Mobile Development for Android&nbsp; &nbsp; &nbsp;607 </div> <div> <br> </div> <div> &nbsp; &nbsp; Hardware&nbsp; &nbsp; &nbsp;608 </div> <div> <br> </div> <div> &nbsp; &nbsp; Linux Kernel&nbsp; &nbsp; &nbsp;608 </div> <div> <br> </div> <div> &nbsp; &nbsp; Libraries&nbsp; &nbsp; &nbsp;608 </div> <div> <br> </div> <div> &nbsp; &nbsp; Android Runtime&nbsp; &nbsp; &nbsp;608 </div> <div> <br> </div> <div> &nbsp; &nbsp; Application Framework&nbsp; &nbsp; &nbsp;608 </div> <div> <br> </div> <div> &nbsp; &nbsp; Applications&nbsp; &nbsp; &nbsp;609 </div> <div> <br> </div> <div> &nbsp; &nbsp; Installing Android Studio&nbsp; &nbsp; &nbsp;609 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating Your First Android Application&nbsp; &nbsp; &nbsp;609 </div> <div> <br> </div> <div> Version Control Systems&nbsp; &nbsp; &nbsp;609 </div> <div> <br> </div> <div> &nbsp; &nbsp; Managing Software Projects with Git&nbsp; &nbsp; &nbsp;610 </div> <div> <br> </div> <div> &nbsp; &nbsp; Managing Software Projects with Bazaar&nbsp; &nbsp; &nbsp;611 </div> <div> <br> </div> <div> &nbsp; &nbsp; Managing Software Projects with Subversion&nbsp; &nbsp; &nbsp;612 </div> <div> <br> </div> <div> Continuous Integration and Continuous Delivery and DevOps Tools&nbsp; &nbsp; &nbsp;613 </div> <div> <br> </div> <div> &nbsp; &nbsp; CI/CD Tools&nbsp; &nbsp; &nbsp;614 </div> <div> <br> </div> <div> &nbsp; &nbsp; Chaos Engineering&nbsp; &nbsp; &nbsp;614 </div> <div> <br> </div> <div> Canonical-created Tools&nbsp; &nbsp; &nbsp;614 </div> <div> <br> </div> <div> &nbsp; &nbsp; Launchpad&nbsp; &nbsp; &nbsp;614 </div> <div> <br> </div> <div> &nbsp; &nbsp; Ubuntu Make&nbsp; &nbsp; &nbsp;615 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating Snap Packages&nbsp; &nbsp; &nbsp;615 </div> <div> <br> </div> <div> &nbsp; &nbsp; Bikeshed and Other Tools&nbsp; &nbsp; &nbsp;616 </div> <div> <br> </div> <div> Chapter 39&nbsp; Using Popular Programming Languages&nbsp; &nbsp; &nbsp;621 </div> <div> <br> </div> <div> Ada&nbsp; &nbsp; &nbsp;622 </div> <div> <br> </div> <div> Clojure&nbsp; &nbsp; &nbsp;622 </div> <div> <br> </div> <div> COBOL&nbsp; &nbsp; &nbsp;623 </div> <div> <br> </div> <div> D&nbsp; &nbsp; &nbsp;624 </div> <div> <br> </div> <div> Dart&nbsp; &nbsp; &nbsp;624 </div> <div> <br> </div> <div> Elixir&nbsp; &nbsp; &nbsp;625 </div> <div> <br> </div> <div> Elm&nbsp; &nbsp; &nbsp;625 </div> <div> <br> </div> <div> Erlang&nbsp; &nbsp; &nbsp;625 </div> <div> <br> </div> <div> Forth&nbsp; &nbsp; &nbsp;626 </div> <div> <br> </div> <div> Fortran&nbsp; &nbsp; &nbsp;626 </div> <div> <br> </div> <div> Go&nbsp; &nbsp; &nbsp;626 </div> <div> <br> </div> <div> Groovy&nbsp; &nbsp; &nbsp;627 </div> <div> <br> </div> <div> Haskell&nbsp; &nbsp; &nbsp;627 </div> <div> <br> </div> <div> Java&nbsp; &nbsp; &nbsp;627 </div> <div> <br> </div> <div> JavaScript&nbsp; &nbsp; &nbsp;628 </div> <div> <br> </div> <div> Kotlin&nbsp; &nbsp; &nbsp;628 </div> <div> <br> </div> <div> Lisp&nbsp; &nbsp; &nbsp;629 </div> <div> <br> </div> <div> Lua&nbsp; &nbsp; &nbsp;629 </div> <div> <br> </div> <div> Mono&nbsp; &nbsp; &nbsp;629 </div> <div> <br> </div> <div> OCaml&nbsp; &nbsp; &nbsp;630 </div> <div> <br> </div> <div> Perl&nbsp; &nbsp; &nbsp;630 </div> <div> <br> </div> <div> PHP&nbsp; &nbsp; &nbsp;631 </div> <div> <br> </div> <div> Python&nbsp; &nbsp; &nbsp;631 </div> <div> <br> </div> <div> Raku&nbsp; &nbsp; &nbsp;631 </div> <div> <br> </div> <div> Ruby&nbsp; &nbsp; &nbsp;631 </div> <div> <br> </div> <div> Rust&nbsp; &nbsp; &nbsp;632 </div> <div> <br> </div> <div> Scala&nbsp; &nbsp; &nbsp;632 </div> <div> <br> </div> <div> Scratch&nbsp; &nbsp; &nbsp;632 </div> <div> <br> </div> <div> Vala&nbsp; &nbsp; &nbsp;633 </div> <div> <br> </div> <div> Chapter 40&nbsp; Helping with Ubuntu Development&nbsp; &nbsp; &nbsp;635 </div> <div> <br> </div> <div> Introduction to Ubuntu Development&nbsp; &nbsp; &nbsp;636 </div> <div> <br> </div> <div> Setting Up Your Development System&nbsp; &nbsp; &nbsp;637 </div> <div> <br> </div> <div> &nbsp; &nbsp; Install Basic Packages and Configure&nbsp; &nbsp; &nbsp;637 </div> <div> <br> </div> <div> &nbsp; &nbsp; Creating a Launchpad Account&nbsp; &nbsp; &nbsp;638 </div> <div> <br> </div> <div> &nbsp; &nbsp; Setting Up Your Environment to Work with Launchpad&nbsp; &nbsp; &nbsp;638 </div> <div> <br> </div> <div> Fixing Bugs and Packaging&nbsp; &nbsp; &nbsp;640 </div> <div> <br> </div> <div> Chapter 41&nbsp; Helping with Ubuntu Testing and QA&nbsp; &nbsp; &nbsp;645 </div> <div> <br> </div> <div> Community Teams&nbsp; &nbsp; &nbsp;645 </div> <div> <br> </

Net verschenen

Rubrieken

Populaire producten

    Personen

      Trefwoorden

        Ubuntu Linux Unleashed 2021 Edition