Description

Book Synopsis

Matthew Helmke has used Ubuntu since 2005. He has written about Linux for several magazines and websites, is a lead author of The Official Ubuntu Book, and has coauthored both A Practical Guide to Linux: Commands, Editors, and Shell Programming and The VMware Cookbook. In his day job, Matthew works for Gremlin (https://www.gremlin.com/) making the Internet more reliable. Matthew first used UNIX in 1987, while studying Lisp on a Vax at the university. He has run a business using only free and open source software, has consulted, and teaches as an adjunct professor for the University of Arizona. You can find out more about Matthew at https://www.linkedin.com/in/matthewhelmke/ or drop him a line with errata or suggestions at matthew@matthewhelmke.com.



Table of Contents

Introduction xxxi

PART I: GETTING STARTED Chapter 1 Installing Ubuntu and Post-Installation Configuration 1

Before You Begin the Installation 1

Researching Your Hardware Specifications 2

Installation Options 2

32-Bit Versus 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 11

Shutting Down 11

Finding Programs and Files 12

Software Updater 12

The sudo Command 14

Configuring Software Repositories 15

System Settings 17

Detecting and Configuring a Printer 18

Configuring Power Management in Ubuntu 18

Setting the Time and Date 19

Configuring Wireless Networks 20

Troubleshooting Post-Installation Configuration Problems 21

Chapter 2 Background Information and Resources 23

What Is Linux? 23

Why Use Linux? 25

What Is Ubuntu? 27

Ubuntu for Business 27

Ubuntu in Your Home 28

Getting the Most from Linux and Ubuntu Documentation 28

Linux 29

Ubuntu 30

PART II: DESKTOP UBUNTU Chapter 3 Foundations of the Linux GUI 31

Foundations and the X Server 31

Basic X Concepts 32

Using X 33

Elements of the xorg conf File 34

Starting X 39

Using a Display Manager 39

Changing Window Managers 39

Chapter 4 Ubuntu Desktop Options 41

Desktop Environment 41

Using GNOME: A Primer 42

KDE and Kubuntu 45

Xfce and Xubuntu 46

LXDE and Lubuntu 47

MATE and Ubuntu MATE 48

Ubuntu Budgie 49

Ubuntu Kylin 50

Chapter 5 On the Internet 51

Getting Started with Firefox 52

Checking Out Google Chrome and Chromium 53

Chapter 6 Productivity Applications 55

Introducing LibreOffice 56

Other Useful Productivity Software 58

Working with PDFs 58

Writing Scripts 59

Working with XML and DocBook 59

Working with LaTeX 60

Creating Mind Maps 61

Productivity Applications Written for Microsoft Windows 61

Chapter 7 Multimedia Applications 63

Sound and Music 63

Sound Cards 64

Sound Formats 65

Listening to Music 65

Graphics Manipulation 66

The GNU Image Manipulation Program 66

Using Scanners in Ubuntu 67

Working with Graphics Formats 67

Capturing Screen Images 69

Other Graphics Manipulation Options 70

Using Digital Cameras with Ubuntu 70

Handheld Digital Cameras 70

Using Shotwell Photo Manager 71

Burning CDs and DVDs in Ubuntu 71

Creating CDs and DVDs with Brasero 71

Creating CDs from the Command Line 72

Creating DVDs from the Command Line 73

Viewing Video 75

Video Formats 75

Viewing Video in Linux 76

Recording and Editing Audio 76

Editing Video 77

Chapter 8 Games 79

Ubuntu Gaming 79

Installing Proprietary Video Drivers 80

Online Game Sources 81

Steam 81

GOG com 82

Humble 82

itch io 82

LGDB 82

Game Jolt 82

Installing Games from the Ubuntu Repositories 82

Warsow 82

Scorched 3D 83

Frozen Bubble 84

SuperTux 84

Battle for Wesnoth 85

Frets on Fire 85

FlightGear 87

Speed Dreams 87

Games for Kids 88

Commercial Games 88

Playing Windows Games 88

PART III: SYSTEM ADMINISTRATION Chapter 9 Managing Software 91

Ubuntu Software 91

Using Synaptic for Software Management 92

Staying Up to Date 94

Working on the Command Line 95

Day-to-Day APT Usage 95

Finding Software 98

Using apt-get Instead of apt 99

Compiling Software from Source 100

Compiling from a Tarball 100

Compiling from Source from the Ubuntu Repositories 101

Configuration Management 102

dotdee 102

Ubuntu Core 103

Using the Snappy Package Manager 103

Chapter 10 Command-Line Beginner's Class 105

What Is the Command Line? 106

Accessing the Command Line 107

Text-Based Console Login 107

Logging Out 108

Logging In and Out from a Remote Computer 108

User Accounts 109

Reading Documentation 111

Using Man Pages 111

Using apropros 112

Using whereis 112

Understanding the Linux File System Hierarchy 112

Essential Commands in /bin and /sbin 114

Configuration Files in /etc 114

User Directories: /home 115

Using the Contents of the /proc Directory to Interact with or Obtain Information from the Kernel 115

Working with Shared Data in the /usr Directory 117

Temporary File Storage in the /tmp Directory 117

Accessing Variable Data Files in the /var Directory 117

Navigating the Linux File System 117

Listing the Contents of a Directory with ls 118

Changing Directories with cd 120

Finding Your Current Directory with pwd 120

Working with Permissions 120

Assigning Permissions 121

Directory Permissions 122

Altering File Permissions with chmod 123

File Permissions with umask 124

File Permissions with chgrp 125

Changing File Permissions with chown 125

Understanding Set User ID, Set Group ID, and Sticky Bit Permissions 125

Setting Permissions with Access Control Lists 127

Working with Files 128

Creating a File with touch 128

Creating a Directory with mkdir 129

Deleting a Directory with rmdir 129

Deleting a File or Directory with rm 130

Moving or Renaming a File with mv 131

Copying a File with cp 131

Displaying the Contents of a File with cat 132

Displaying the Contents of a File with less 132

Using Wildcards and Regular Expressions 133

Working as Root 133

Understanding and Fixing sudo 134

Creating Users 136

Deleting Users 137

Shutting Down the System 137

Rebooting the System 138

Commonly Used Commands and Programs 139

Chapter 11 Command-Line Master Class, Part 1 141

Why Use the Command Line? 142

Using Basic Commands 143

Printing the Contents of a File with cat 144

Changing Directories with cd 145

Changing File Access Permissions with chmod 147

Copying Files with cp 147

Printing Disk Usage with du 148

Using echo 148

Finding Files by Searching with find 149

Searches for a String in Input with grep 151

Paging Through Output with less 152

Creating Links Between Files with ln 154

Finding Files from an Index with locate 156

Listing Files in the Current Directory with ls 156

Listing System Information with lsblk, lshw, lsmod, lspci, and neofetch 158

Reading Manual Pages with man 159

Making Directories with mkdir 160

Moving Files with mv 161

Renaming Files with rename 161

Deleting Files and Directories with rm 161

Sorting the Contents of a File with sort 162

Printing the Last Lines of a File with tail 163

Printing the Location of a Command with which 164

Downloading Files with wget 164

Chapter 12 Command-Line Master Class, Part 2 167

Redirecting Output and Input 167

stdin, stdout, stderr, and Redirection 169

Comparing Files 170

Finding Differences in Files with diff 170

Finding Similarities in Files with comm 170

Limiting Resource Use and Job Control 171

Listing Processes with ps 171

Listing Jobs with jobs 173

Running One or More Tasks in the Background 173

Moving Jobs to the Background or Foreground with bg and fg 174

Printing Resource Usage with top 175

Setting Process Priority with nice 177

Combining Commands 178

Pipes 178

Combining Commands with Boolean Operators 180

Running Separate Commands in Sequence 180

Process Substitution 181

Executing Jobs in Parallel 181

Using Environment Variables 182

Using Common Text Editors 185

Working with nano 186

Working with vi 187

Working with emacs 188

Working with sed and awk 189

Working with Compressed Files 191

Using Multiple Terminals with byobu192

Doing a Polite System Reset Using REISUB 194

Fixing an Ubuntu System That Will Not Boot 195

Checking BIOS 195

Checking GRUB 195

Reinstalling GRUB 195

Using Recovery Mode 196

Reinstalling Ubuntu 196

Tips and Tricks 196

Running the Previous Command 196

Running Any Previous Command 197

Running a Previous Command That Started with Specific Letters 197

Running the Same Thing You Just Ran with a Different First Word 197

Viewing Your History and More 197

Doing Two or More Things 198

Using Shortcuts 198

Confining a Script to a Directory 198

Using Coreutils 199

Reading the Contents of the Kernel Ring Buffer with dmesg 200

Chapter 13 Managing Users 201

User Accounts 201

The Super User/Root User 202

User IDs and Group IDs 204

File Permissions 204

Managing Groups 205

Group Listing 205

Group Management Tools 206

Managing Users 207

User Management Tools 208

Adding New Users 209

Monitoring User Activity on the System 211

Managing Passwords 212

System Password Policy 212

The Password File 212

Shadow Passwords 214

Managing Password Security for Users 216

Changing Passwords in a Batch 216

Granting System Administrator Privileges to Regular Users 217

Temporarily Changing User Identity with the su Command 217

Granting Root Privileges on Occasion: The sudo Command 219

Disk Quotas 222

Implementing Quotas 222

Manually Configuring Quotas 223

Related Ubuntu Commands 223

Chapter 14 Automating Tasks and Shell Scripting 225

What Is a Shell? 225

Scheduling Tasks 226

Using at and batch to Schedule Tasks for Later 227

Using cron to Run Jobs Repeatedly 229

Using rtcwake to Wake Your Computer from Sleep Automatically 231

Basic Shell Control 233

The Shell Command Line 233

Shell Pattern-Matching Support 235

Redirecting Input and Output 236

Piping Data 237

Background Processing 237

Writing and Executing a Shell Script 237

Running the New Shell Program 239

Storing Shell Scripts for System-wide Access 240

Interpreting Shell Scripts Through Specific Shells 240

Using Variables in Shell Scripts 242

Assigning a Value to a Variable 242

Accessing Variable Values 243

Positional Parameters 243

A Simple Example of a Positional Parameter 243

Using Positional Parameters to Access and Retrieve Variables from the Command Line 244

Using a Simple Script to Automate Tasks 244

Built-in Variables 246

Special Characters 247

Comparison of Expressions in pdksh and bash 250

Comparing Expressions with tcsh 255

The for Statement 259

The while Statement 261

The until Statement 263

The repeat Statement (tcsh) 263

The select Statement (pdksh) 264

The shift Statement 264

The if Statement 265

The expr Statement 266

The case Statement 267

The break and exit Statements 269

Using Functions in Shell Scripts 269

Chapter 15 The Boot Process 271

Running Services at Boot 271

Beginning the Boot Loading Process 272

Loading the Linux Kernel 274

Starting and Stopping Services with systemd 275

Controlling Services at Boot with Administrative Tools 278

Troubleshooting Runlevel Problems 278

Boot-Repair 278

Chapter 16 System-Monitoring Tools 281

Console-Based Monitoring 281

Using the kill Command to Control Processes 283

Using Priority Scheduling and Control 285

Displaying Free and Used Memory with free 286

Disk Space 286

Disk Quotas 287

Checking Log Files 287

Rotating Log Files 289

Graphical Process- and System-Management Tools 292

System Monitor 292

Conky 292

Other Graphical Process- and System-Monitoring Tools 297

KDE Process- and System-Monitoring Tools 298

Enterprise Server Monitoring 298

Chapter 17 Backing Up 301

Choosing a Backup Strategy 301

Why Data Loss Occurs 302

Assessing Your Backup Needs and Resources 303

Evaluating Backup Strategies 304

Making the Choice 308

Choosing Backup Hardware and Media 308

External Hard Drive 308

Network Storage 308

Tape Drive Backups 309

Cloud Storage 309

Using Backup Software 309

tar: The Most Basic Backup Tool 310

The GNOME File Roller 312

The KDE ark Archiving Tool 312

Déjà Dup 313

Back In Time 314

Unison 315

Amanda 315

Alternative Backup Software 316

Copying Files 316

Copying Files Using tar 317

Compressing, Encrypting, and Sending tar Streams 318

Copying Files Using cp 318

Using rsync 319

Version Control for Configuration Files 320

System Rescue 323

The Ubuntu Rescue Disc 323

Restoring the GRUB2 Boot Loader 323

Saving Files from a Nonbooting Hard Drive 324

Chapter 18 Networking 325

Laying the Foundation: The localhost Interface 326

Checking for the Availability of the Loopback Interface 326

Configuring the Loopback Interface Manually 327

Checking Connections with ping, traceroute, and mtr 328

Networking with TCP/IP 330

TCP/IP Addressing 331

Using IP Masquerading in Ubuntu 332

Ports 333

IPv6 Basics 334

Network Organization 337

Subnetting 337

Subnet Masks 337

Broadcast, Unicast, and Multicast Addressing 338

Hardware Devices for Networking 338

Network Interface Cards 338

Network Cable 340

Hubs and Switches 342

Routers and Bridges 343

Initializing New Network Hardware 343

Using Network Configuration Tools 345

Command-Line Network Interface Configuration 346

Network Configuration Files 350

Using Graphical Configuration Tools 355

Dynamic Host Configuration Protocol 355

How DHCP Works 356

Activating DHCP at Installation and Boot Time 357

DHCP Software Installation and Configuration 358

Using DHCP to Configure Network Hosts 359

Other Uses for DHCP 361

Wireless Networking 361

Support for Wireless Networking in Ubuntu 361

Choosing from Among Available Wireless Protocols 363

Beyond the Network and onto the Internet 363

Common Configuration Information 364

Configuring Digital Subscriber Line Access 365

Understanding PPP over Ethernet 366

Configuring a PPPoE Connection Manually 366

Configuring Dial-up Internet Access 367

Troubleshooting Connection Problems 368

Chapter 19 Remote Access with SSH and VNC 371

Setting Up an SSH Server 371

SSH Tools 372

Using scp to Copy Individual Files Between Machines 372

Using sftp to Copy Many Files Between Machines 373

Using ssh-keygen to Enable Key-Based Logins 373

Virtual Network Computing 375

Guacamole 377

Chapter 20 Securing Your Machines 379

Understanding Computer Attacks 379

Assessing Your Vulnerability 381

Protecting Your Machine 382

Securing a Wireless Network 382

Passwords and Physical Security 383

Configuring and Using Tripwire 384

Securing Devices 385

Viruses 385

Configuring Your Firewall 386

AppArmor 388

Forming a Disaster Recovery Plan 390

Chapter 21 Performance Tuning 393

Storage Disk 394

Linux File Systems 394

The hdparm Command 395

File System Tuning 396

The tune2fs Command 396

The e2fsck Command 397

The badblocks Command 397

Disabling File Access Time 397

Kernel 398

Tuned 399

Chapter 22 Kernel and Module Management 401

The Linux Kernel 402

The Linux Source Tree 403

Types of Kernels 405

Managing Modules 406

When to Recompile 408

Kernel Versions 409

Obtaining the Kernel Sources 409

Patching the Kernel 410

Compiling the Kernel 412

Using xconfig to Configure the Kernel 414

Creating an Initial RAM Disk Image 418

When Something Goes Wrong 418

Errors During Compile 418

Runtime Errors, Boot Loader Problems, and Kernel Oops 419

PART IV: UBUNTU AS A SERVER Chapter 23 Sharing Files and Printers 421

Using Network File System 422

Installing and Starting or Stopping NFS 422

NFS Server Configuration 422

NFS Client Configuration 423

Putting Samba to Work 424

Manually Configuring Samba with /etc/samba/smb conf 426

Testing Samba with the testparm Command 429

Starting, Stopping, and Restarting the smbd Daemon 429

Mounting Samba Shares 430

Network and Remote Printing with Ubuntu 431

Creating Network Printers 431

Using the CUPS GUI 433

Avoiding Printer Support Problems 434

Chapter 24 Common Web Server Stacks 437

LAMP 437

LEMP 439

MEAN 440

Chapter 25 Apache Web Server Management 443

About the Apache Web Server 443

Installing the Apache Server 444

Starting and Stopping Apache 444

Runtime Server Configuration Settings 446

Runtime Configuration Directives 446

Editing apache2 conf 447

Apache Multiprocessing Modules 449

Using htaccess Configuration Files 450

File System Authentication and Access Control 452

Restricting Access with Require 452

Authentication 453

Final Words on Access Control 455

Apache Modules 455

mod_access 456

mod_alias 456

mod_asis 456

mod_auth 457

mod_auth_anon 457

mod_auth_dbm 457

mod_auth_digest 457

mod_autoindex4 58

mod_cgi 458

mod_dir and mod_env 458

mod_expires 458

mod_headers 458

mod_include 459

mod_info and mod_log_config 459

mod_mime and mod_mime_magic 459

mod_negotiation 459

mod_rewrite 459

mod_setenvif 460

mod_speling 460

mod_status 460

mod_ssl 460

mod_unique_id 460

Ubuntu Linux Unleashed 2021 Edition

    Product form

    £42.13

    Includes FREE delivery

    RRP £45.89 – you save £3.76 (8%)

    Order before 4pm tomorrow for delivery by Fri 19 Jun 2026.

    A Paperback / softback by Matthew Helmke

    20 in stock


      View other formats and editions of Ubuntu Linux Unleashed 2021 Edition by Matthew Helmke

      Publisher: Pearson Education (US)
      Publication Date: 11/11/2020
      ISBN13: 9780136778851, 978-0136778851
      ISBN10: 0136778852

      Description

      Book Synopsis

      Matthew Helmke has used Ubuntu since 2005. He has written about Linux for several magazines and websites, is a lead author of The Official Ubuntu Book, and has coauthored both A Practical Guide to Linux: Commands, Editors, and Shell Programming and The VMware Cookbook. In his day job, Matthew works for Gremlin (https://www.gremlin.com/) making the Internet more reliable. Matthew first used UNIX in 1987, while studying Lisp on a Vax at the university. He has run a business using only free and open source software, has consulted, and teaches as an adjunct professor for the University of Arizona. You can find out more about Matthew at https://www.linkedin.com/in/matthewhelmke/ or drop him a line with errata or suggestions at matthew@matthewhelmke.com.



      Table of Contents

      Introduction xxxi

      PART I: GETTING STARTED Chapter 1 Installing Ubuntu and Post-Installation Configuration 1

      Before You Begin the Installation 1

      Researching Your Hardware Specifications 2

      Installation Options 2

      32-Bit Versus 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 11

      Shutting Down 11

      Finding Programs and Files 12

      Software Updater 12

      The sudo Command 14

      Configuring Software Repositories 15

      System Settings 17

      Detecting and Configuring a Printer 18

      Configuring Power Management in Ubuntu 18

      Setting the Time and Date 19

      Configuring Wireless Networks 20

      Troubleshooting Post-Installation Configuration Problems 21

      Chapter 2 Background Information and Resources 23

      What Is Linux? 23

      Why Use Linux? 25

      What Is Ubuntu? 27

      Ubuntu for Business 27

      Ubuntu in Your Home 28

      Getting the Most from Linux and Ubuntu Documentation 28

      Linux 29

      Ubuntu 30

      PART II: DESKTOP UBUNTU Chapter 3 Foundations of the Linux GUI 31

      Foundations and the X Server 31

      Basic X Concepts 32

      Using X 33

      Elements of the xorg conf File 34

      Starting X 39

      Using a Display Manager 39

      Changing Window Managers 39

      Chapter 4 Ubuntu Desktop Options 41

      Desktop Environment 41

      Using GNOME: A Primer 42

      KDE and Kubuntu 45

      Xfce and Xubuntu 46

      LXDE and Lubuntu 47

      MATE and Ubuntu MATE 48

      Ubuntu Budgie 49

      Ubuntu Kylin 50

      Chapter 5 On the Internet 51

      Getting Started with Firefox 52

      Checking Out Google Chrome and Chromium 53

      Chapter 6 Productivity Applications 55

      Introducing LibreOffice 56

      Other Useful Productivity Software 58

      Working with PDFs 58

      Writing Scripts 59

      Working with XML and DocBook 59

      Working with LaTeX 60

      Creating Mind Maps 61

      Productivity Applications Written for Microsoft Windows 61

      Chapter 7 Multimedia Applications 63

      Sound and Music 63

      Sound Cards 64

      Sound Formats 65

      Listening to Music 65

      Graphics Manipulation 66

      The GNU Image Manipulation Program 66

      Using Scanners in Ubuntu 67

      Working with Graphics Formats 67

      Capturing Screen Images 69

      Other Graphics Manipulation Options 70

      Using Digital Cameras with Ubuntu 70

      Handheld Digital Cameras 70

      Using Shotwell Photo Manager 71

      Burning CDs and DVDs in Ubuntu 71

      Creating CDs and DVDs with Brasero 71

      Creating CDs from the Command Line 72

      Creating DVDs from the Command Line 73

      Viewing Video 75

      Video Formats 75

      Viewing Video in Linux 76

      Recording and Editing Audio 76

      Editing Video 77

      Chapter 8 Games 79

      Ubuntu Gaming 79

      Installing Proprietary Video Drivers 80

      Online Game Sources 81

      Steam 81

      GOG com 82

      Humble 82

      itch io 82

      LGDB 82

      Game Jolt 82

      Installing Games from the Ubuntu Repositories 82

      Warsow 82

      Scorched 3D 83

      Frozen Bubble 84

      SuperTux 84

      Battle for Wesnoth 85

      Frets on Fire 85

      FlightGear 87

      Speed Dreams 87

      Games for Kids 88

      Commercial Games 88

      Playing Windows Games 88

      PART III: SYSTEM ADMINISTRATION Chapter 9 Managing Software 91

      Ubuntu Software 91

      Using Synaptic for Software Management 92

      Staying Up to Date 94

      Working on the Command Line 95

      Day-to-Day APT Usage 95

      Finding Software 98

      Using apt-get Instead of apt 99

      Compiling Software from Source 100

      Compiling from a Tarball 100

      Compiling from Source from the Ubuntu Repositories 101

      Configuration Management 102

      dotdee 102

      Ubuntu Core 103

      Using the Snappy Package Manager 103

      Chapter 10 Command-Line Beginner's Class 105

      What Is the Command Line? 106

      Accessing the Command Line 107

      Text-Based Console Login 107

      Logging Out 108

      Logging In and Out from a Remote Computer 108

      User Accounts 109

      Reading Documentation 111

      Using Man Pages 111

      Using apropros 112

      Using whereis 112

      Understanding the Linux File System Hierarchy 112

      Essential Commands in /bin and /sbin 114

      Configuration Files in /etc 114

      User Directories: /home 115

      Using the Contents of the /proc Directory to Interact with or Obtain Information from the Kernel 115

      Working with Shared Data in the /usr Directory 117

      Temporary File Storage in the /tmp Directory 117

      Accessing Variable Data Files in the /var Directory 117

      Navigating the Linux File System 117

      Listing the Contents of a Directory with ls 118

      Changing Directories with cd 120

      Finding Your Current Directory with pwd 120

      Working with Permissions 120

      Assigning Permissions 121

      Directory Permissions 122

      Altering File Permissions with chmod 123

      File Permissions with umask 124

      File Permissions with chgrp 125

      Changing File Permissions with chown 125

      Understanding Set User ID, Set Group ID, and Sticky Bit Permissions 125

      Setting Permissions with Access Control Lists 127

      Working with Files 128

      Creating a File with touch 128

      Creating a Directory with mkdir 129

      Deleting a Directory with rmdir 129

      Deleting a File or Directory with rm 130

      Moving or Renaming a File with mv 131

      Copying a File with cp 131

      Displaying the Contents of a File with cat 132

      Displaying the Contents of a File with less 132

      Using Wildcards and Regular Expressions 133

      Working as Root 133

      Understanding and Fixing sudo 134

      Creating Users 136

      Deleting Users 137

      Shutting Down the System 137

      Rebooting the System 138

      Commonly Used Commands and Programs 139

      Chapter 11 Command-Line Master Class, Part 1 141

      Why Use the Command Line? 142

      Using Basic Commands 143

      Printing the Contents of a File with cat 144

      Changing Directories with cd 145

      Changing File Access Permissions with chmod 147

      Copying Files with cp 147

      Printing Disk Usage with du 148

      Using echo 148

      Finding Files by Searching with find 149

      Searches for a String in Input with grep 151

      Paging Through Output with less 152

      Creating Links Between Files with ln 154

      Finding Files from an Index with locate 156

      Listing Files in the Current Directory with ls 156

      Listing System Information with lsblk, lshw, lsmod, lspci, and neofetch 158

      Reading Manual Pages with man 159

      Making Directories with mkdir 160

      Moving Files with mv 161

      Renaming Files with rename 161

      Deleting Files and Directories with rm 161

      Sorting the Contents of a File with sort 162

      Printing the Last Lines of a File with tail 163

      Printing the Location of a Command with which 164

      Downloading Files with wget 164

      Chapter 12 Command-Line Master Class, Part 2 167

      Redirecting Output and Input 167

      stdin, stdout, stderr, and Redirection 169

      Comparing Files 170

      Finding Differences in Files with diff 170

      Finding Similarities in Files with comm 170

      Limiting Resource Use and Job Control 171

      Listing Processes with ps 171

      Listing Jobs with jobs 173

      Running One or More Tasks in the Background 173

      Moving Jobs to the Background or Foreground with bg and fg 174

      Printing Resource Usage with top 175

      Setting Process Priority with nice 177

      Combining Commands 178

      Pipes 178

      Combining Commands with Boolean Operators 180

      Running Separate Commands in Sequence 180

      Process Substitution 181

      Executing Jobs in Parallel 181

      Using Environment Variables 182

      Using Common Text Editors 185

      Working with nano 186

      Working with vi 187

      Working with emacs 188

      Working with sed and awk 189

      Working with Compressed Files 191

      Using Multiple Terminals with byobu192

      Doing a Polite System Reset Using REISUB 194

      Fixing an Ubuntu System That Will Not Boot 195

      Checking BIOS 195

      Checking GRUB 195

      Reinstalling GRUB 195

      Using Recovery Mode 196

      Reinstalling Ubuntu 196

      Tips and Tricks 196

      Running the Previous Command 196

      Running Any Previous Command 197

      Running a Previous Command That Started with Specific Letters 197

      Running the Same Thing You Just Ran with a Different First Word 197

      Viewing Your History and More 197

      Doing Two or More Things 198

      Using Shortcuts 198

      Confining a Script to a Directory 198

      Using Coreutils 199

      Reading the Contents of the Kernel Ring Buffer with dmesg 200

      Chapter 13 Managing Users 201

      User Accounts 201

      The Super User/Root User 202

      User IDs and Group IDs 204

      File Permissions 204

      Managing Groups 205

      Group Listing 205

      Group Management Tools 206

      Managing Users 207

      User Management Tools 208

      Adding New Users 209

      Monitoring User Activity on the System 211

      Managing Passwords 212

      System Password Policy 212

      The Password File 212

      Shadow Passwords 214

      Managing Password Security for Users 216

      Changing Passwords in a Batch 216

      Granting System Administrator Privileges to Regular Users 217

      Temporarily Changing User Identity with the su Command 217

      Granting Root Privileges on Occasion: The sudo Command 219

      Disk Quotas 222

      Implementing Quotas 222

      Manually Configuring Quotas 223

      Related Ubuntu Commands 223

      Chapter 14 Automating Tasks and Shell Scripting 225

      What Is a Shell? 225

      Scheduling Tasks 226

      Using at and batch to Schedule Tasks for Later 227

      Using cron to Run Jobs Repeatedly 229

      Using rtcwake to Wake Your Computer from Sleep Automatically 231

      Basic Shell Control 233

      The Shell Command Line 233

      Shell Pattern-Matching Support 235

      Redirecting Input and Output 236

      Piping Data 237

      Background Processing 237

      Writing and Executing a Shell Script 237

      Running the New Shell Program 239

      Storing Shell Scripts for System-wide Access 240

      Interpreting Shell Scripts Through Specific Shells 240

      Using Variables in Shell Scripts 242

      Assigning a Value to a Variable 242

      Accessing Variable Values 243

      Positional Parameters 243

      A Simple Example of a Positional Parameter 243

      Using Positional Parameters to Access and Retrieve Variables from the Command Line 244

      Using a Simple Script to Automate Tasks 244

      Built-in Variables 246

      Special Characters 247

      Comparison of Expressions in pdksh and bash 250

      Comparing Expressions with tcsh 255

      The for Statement 259

      The while Statement 261

      The until Statement 263

      The repeat Statement (tcsh) 263

      The select Statement (pdksh) 264

      The shift Statement 264

      The if Statement 265

      The expr Statement 266

      The case Statement 267

      The break and exit Statements 269

      Using Functions in Shell Scripts 269

      Chapter 15 The Boot Process 271

      Running Services at Boot 271

      Beginning the Boot Loading Process 272

      Loading the Linux Kernel 274

      Starting and Stopping Services with systemd 275

      Controlling Services at Boot with Administrative Tools 278

      Troubleshooting Runlevel Problems 278

      Boot-Repair 278

      Chapter 16 System-Monitoring Tools 281

      Console-Based Monitoring 281

      Using the kill Command to Control Processes 283

      Using Priority Scheduling and Control 285

      Displaying Free and Used Memory with free 286

      Disk Space 286

      Disk Quotas 287

      Checking Log Files 287

      Rotating Log Files 289

      Graphical Process- and System-Management Tools 292

      System Monitor 292

      Conky 292

      Other Graphical Process- and System-Monitoring Tools 297

      KDE Process- and System-Monitoring Tools 298

      Enterprise Server Monitoring 298

      Chapter 17 Backing Up 301

      Choosing a Backup Strategy 301

      Why Data Loss Occurs 302

      Assessing Your Backup Needs and Resources 303

      Evaluating Backup Strategies 304

      Making the Choice 308

      Choosing Backup Hardware and Media 308

      External Hard Drive 308

      Network Storage 308

      Tape Drive Backups 309

      Cloud Storage 309

      Using Backup Software 309

      tar: The Most Basic Backup Tool 310

      The GNOME File Roller 312

      The KDE ark Archiving Tool 312

      Déjà Dup 313

      Back In Time 314

      Unison 315

      Amanda 315

      Alternative Backup Software 316

      Copying Files 316

      Copying Files Using tar 317

      Compressing, Encrypting, and Sending tar Streams 318

      Copying Files Using cp 318

      Using rsync 319

      Version Control for Configuration Files 320

      System Rescue 323

      The Ubuntu Rescue Disc 323

      Restoring the GRUB2 Boot Loader 323

      Saving Files from a Nonbooting Hard Drive 324

      Chapter 18 Networking 325

      Laying the Foundation: The localhost Interface 326

      Checking for the Availability of the Loopback Interface 326

      Configuring the Loopback Interface Manually 327

      Checking Connections with ping, traceroute, and mtr 328

      Networking with TCP/IP 330

      TCP/IP Addressing 331

      Using IP Masquerading in Ubuntu 332

      Ports 333

      IPv6 Basics 334

      Network Organization 337

      Subnetting 337

      Subnet Masks 337

      Broadcast, Unicast, and Multicast Addressing 338

      Hardware Devices for Networking 338

      Network Interface Cards 338

      Network Cable 340

      Hubs and Switches 342

      Routers and Bridges 343

      Initializing New Network Hardware 343

      Using Network Configuration Tools 345

      Command-Line Network Interface Configuration 346

      Network Configuration Files 350

      Using Graphical Configuration Tools 355

      Dynamic Host Configuration Protocol 355

      How DHCP Works 356

      Activating DHCP at Installation and Boot Time 357

      DHCP Software Installation and Configuration 358

      Using DHCP to Configure Network Hosts 359

      Other Uses for DHCP 361

      Wireless Networking 361

      Support for Wireless Networking in Ubuntu 361

      Choosing from Among Available Wireless Protocols 363

      Beyond the Network and onto the Internet 363

      Common Configuration Information 364

      Configuring Digital Subscriber Line Access 365

      Understanding PPP over Ethernet 366

      Configuring a PPPoE Connection Manually 366

      Configuring Dial-up Internet Access 367

      Troubleshooting Connection Problems 368

      Chapter 19 Remote Access with SSH and VNC 371

      Setting Up an SSH Server 371

      SSH Tools 372

      Using scp to Copy Individual Files Between Machines 372

      Using sftp to Copy Many Files Between Machines 373

      Using ssh-keygen to Enable Key-Based Logins 373

      Virtual Network Computing 375

      Guacamole 377

      Chapter 20 Securing Your Machines 379

      Understanding Computer Attacks 379

      Assessing Your Vulnerability 381

      Protecting Your Machine 382

      Securing a Wireless Network 382

      Passwords and Physical Security 383

      Configuring and Using Tripwire 384

      Securing Devices 385

      Viruses 385

      Configuring Your Firewall 386

      AppArmor 388

      Forming a Disaster Recovery Plan 390

      Chapter 21 Performance Tuning 393

      Storage Disk 394

      Linux File Systems 394

      The hdparm Command 395

      File System Tuning 396

      The tune2fs Command 396

      The e2fsck Command 397

      The badblocks Command 397

      Disabling File Access Time 397

      Kernel 398

      Tuned 399

      Chapter 22 Kernel and Module Management 401

      The Linux Kernel 402

      The Linux Source Tree 403

      Types of Kernels 405

      Managing Modules 406

      When to Recompile 408

      Kernel Versions 409

      Obtaining the Kernel Sources 409

      Patching the Kernel 410

      Compiling the Kernel 412

      Using xconfig to Configure the Kernel 414

      Creating an Initial RAM Disk Image 418

      When Something Goes Wrong 418

      Errors During Compile 418

      Runtime Errors, Boot Loader Problems, and Kernel Oops 419

      PART IV: UBUNTU AS A SERVER Chapter 23 Sharing Files and Printers 421

      Using Network File System 422

      Installing and Starting or Stopping NFS 422

      NFS Server Configuration 422

      NFS Client Configuration 423

      Putting Samba to Work 424

      Manually Configuring Samba with /etc/samba/smb conf 426

      Testing Samba with the testparm Command 429

      Starting, Stopping, and Restarting the smbd Daemon 429

      Mounting Samba Shares 430

      Network and Remote Printing with Ubuntu 431

      Creating Network Printers 431

      Using the CUPS GUI 433

      Avoiding Printer Support Problems 434

      Chapter 24 Common Web Server Stacks 437

      LAMP 437

      LEMP 439

      MEAN 440

      Chapter 25 Apache Web Server Management 443

      About the Apache Web Server 443

      Installing the Apache Server 444

      Starting and Stopping Apache 444

      Runtime Server Configuration Settings 446

      Runtime Configuration Directives 446

      Editing apache2 conf 447

      Apache Multiprocessing Modules 449

      Using htaccess Configuration Files 450

      File System Authentication and Access Control 452

      Restricting Access with Require 452

      Authentication 453

      Final Words on Access Control 455

      Apache Modules 455

      mod_access 456

      mod_alias 456

      mod_asis 456

      mod_auth 457

      mod_auth_anon 457

      mod_auth_dbm 457

      mod_auth_digest 457

      mod_autoindex4 58

      mod_cgi 458

      mod_dir and mod_env 458

      mod_expires 458

      mod_headers 458

      mod_include 459

      mod_info and mod_log_config 459

      mod_mime and mod_mime_magic 459

      mod_negotiation 459

      mod_rewrite 459

      mod_setenvif 460

      mod_speling 460

      mod_status 460

      mod_ssl 460

      mod_unique_id 460

      Recently viewed products

      © 2026 Book Curl

        • American Express
        • Apple Pay
        • Diners Club
        • Discover
        • Google Pay
        • Maestro
        • Mastercard
        • PayPal
        • Shop Pay
        • Union Pay
        • Visa

        Login

        Forgot your password?

        Don't have an account yet?
        Create account