100% found this document useful (10 votes)
135 views64 pages

(PDF Download) CompTIA Linux+ Certification. Exam Guide 2 (Exam XK0-005) Edition Ted Jordan Fulll Chapter

ebook

Uploaded by

dyghtndjeck
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (10 votes)
135 views64 pages

(PDF Download) CompTIA Linux+ Certification. Exam Guide 2 (Exam XK0-005) Edition Ted Jordan Fulll Chapter

ebook

Uploaded by

dyghtndjeck
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 64

Download More ebooks [PDF]. Format PDF ebook download PDF KINDLE.

Full download ebooks at ebookmass.com

CompTIA Linux+ Certification. Exam Guide


2 (Exam XK0-005) Edition Ted Jordan

For dowload this book click BUTTON or LINK below

https://ebookmass.com/product/comptia-linux-
certification-exam-guide-2-exam-xk0-005-edition-
ted-jordan/
OR CLICK BUTTON

DOWLOAD NOW

Download More ebooks from https://ebookmass.com


More products digital (pdf, epub, mobi) instant
download maybe you interests ...

CompTIA Linux+ Certification All-in-One Exam Guide


(Exam XK0-005), 2nd Edition Ted Jordan

https://ebookmass.com/product/comptia-linux-certification-all-in-
one-exam-guide-exam-xk0-005-2nd-edition-ted-jordan/

CompTIA Linux+ XK0-005 Exam Cram 1st Edition William


Rothwell

https://ebookmass.com/product/comptia-linux-xk0-005-exam-
cram-1st-edition-william-rothwell/

CompTIA Linux+ XK0-005 Exam Cram William “Bo” Rothwell

https://ebookmass.com/product/comptia-linux-xk0-005-exam-cram-
william-bo-rothwell/

CompTIA Server+ Certification All-in-One Exam Guide,


Second Edition (Exam SK0-005) Lachance

https://ebookmass.com/product/comptia-server-certification-all-
in-one-exam-guide-second-edition-exam-sk0-005-lachance/
CompTIA Server+ Certification All-in-One Exam Guide
(Exam SK0-005), 2nd Edition Daniel Lachance

https://ebookmass.com/product/comptia-server-certification-all-
in-one-exam-guide-exam-sk0-005-2nd-edition-daniel-lachance/

CompTIA Project+™ Certification All-in-One Exam Guide


(Exam PK0-005) 1st Edition Joseph Phillips

https://ebookmass.com/product/comptia-project-certification-all-
in-one-exam-guide-exam-pk0-005-1st-edition-joseph-phillips/

CompTIA Server+ Certification All-in-One Exam Guide,


Second Edition (Exam SK0-005) Daniel Lachance Lachance
It Consulting Inc.

https://ebookmass.com/product/comptia-server-certification-all-
in-one-exam-guide-second-edition-exam-sk0-005-daniel-lachance-
lachance-it-consulting-inc/

CompTIA PenTest+ Certification All-in-One Exam Guide


(Exam PT0-001) 1st Edition

https://ebookmass.com/product/comptia-pentest-certification-all-
in-one-exam-guide-exam-pt0-001-1st-edition/

CompTIA Network+ Certification All-In-One Exam Guide,


Seventh Edition (Exam N10-007) Meyers

https://ebookmass.com/product/comptia-network-certification-all-
in-one-exam-guide-seventh-edition-exam-n10-007-meyers/
All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM
Blind Folio: i

ALL IN ONE

CompTIA

Linux+™
Certification
EXAM GUIDE
Second Edition (Exam XK0-005)

00-FM.indd 1 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM
Blind Folio: ii

ABOUT THE AUTHORS

Ted Jordan (MS, CompTIA Linux+, CompTIA Security+, CompTIA Cloud+, CISSP,
CSSLP) has over 25 years of UNIX, IRIX, Solaris, and Linux engineering experience.
He studied coding and UNIX as a graduate student of the University of California,
Berkeley and Kettering University. During Mr. Jordan’s engineering career, he coded in
C/UNIX for General Motors, Silicon Graphics, Fakespace CAVE Virtual Reality, and
Sun Microsystems. He is the founder and president of successful technical ventures,
Funutation, Inc., and JordanTeam LLC, both providing Linux coding and education.
He has taken and passed all CompTIA Linux+ exams since 2001 and has successfully
trained hundreds of others to attain their Linux+ certifications. Follow him on Twitter
and YouTube @JordanTeamLearn.

Sandor Strohmayer is a trainer and curriculum developer who has been teaching and
writing Linux and UNIX training material for more than 20 years. Mr. Strohmayer
began as a hardware and operating system instructor for Sun Microsystems. Since then
he has developed and taught UNIX, Linux, and other training programs for schools,
corporations, and the military, using study guides and blended learning techniques
supplemented with individually paced learning via a learning management system.
Mr. Strohmayer also offers study, Linux, and other IT hints on LinkedIn (www.linkedin
.com/pub/sandor-strohmayer/4/702/765).

About the Technical and Developmental Editor


Kenneth “Ken” Hess is a practicing senior system administrator and a technology
author, blogger, columnist, editor, and podcaster. Ken has written hundreds of technology
articles on topics that cover Linux, open source software, Windows, Mac, mobile devices,
databases, and cryptocurrencies. He also reviews technology products and is an avid
photographer and filmmaker.

00-FM.indd 2 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM
Blind Folio: iii

ALL IN ONE

CompTIA

Linux+™
Certification
EXAM GUIDE
Second Edition (Exam XK0-005)

Ted Jordan
Sandor Strohmayer

New York Chicago San Francisco


Athens London Madrid Mexico City
Milan New Delhi Singapore Sydney Toronto

McGraw Hill is an independent entity from CompTIA® and is not affiliated with CompTIA in any manner. This publication
and accompanying media may be used in assisting students to prepare for the CompTIA Linux+™ exam. Neither CompTIA
nor McGraw Hill warrants that use of this publication and accompanying media will ensure passing any exam. CompTIA
and CompTIA Linux+™ are trademarks or registered trademarks of CompTIA in the United States and/or other countries.
All other trademarks are trademarks of their respective owners. The CompTIA Marks are the proprietary trademarks and/or
service marks of CompTIA and its affiliates used under license from CompTIA.

00-FM.indd 3 06/04/23 10:52 AM


Copyright © 2023 by McGraw Hill. All rights reserved. Except as permitted under the Copyright Act of 1976, no part of this
publication may be reproduced or distributed in any form or by any means, or stored in a database or retrieval system, without
the prior written permission of publisher, with the exception that the program listings may be entered, stored, and executed in a
computer system, but they may not be reproduced for publication.

ISBN: 978-1-26-480277-7
MHID: 1-26-480277-3

The material in this eBook also appears in the print version of this title: ISBN: 978-1-26-479896-4,
MHID: 1-26-479896-2.

eBook conversion by codeMantra


Version 1.0

All trademarks are trademarks of their respective owners. Rather than put a trademark symbol after every occurrence of a trade-
marked name, we use names in an editorial fashion only, and to the benefit of the trademark owner, with no intention of infringe-
ment of the trademark. Where such designations appear in this book, they have been printed with initial caps.

McGraw Hill eBooks are available at special quantity discounts to use as premiums and sales promotions or for use in corporate
training programs. To contact a representative, please visit the Contact Us page at www.mhprofessional.com.

Information has been obtained by McGraw Hill from sources believed to be reliable. However, because of the possibility of hu-
man or mechanical error by our sources, McGraw Hill, or others, McGraw Hill does not guarantee the accuracy, adequacy, or
completeness of any information and is not responsible for any errors or omissions or the results obtained from the use of such
information.

TERMS OF USE

This is a copyrighted work and McGraw Hill (“McGraw Hill”) and its licensors reserve all rights in and to the work. Use of this
work is subject to these terms. Except as permitted under the Copyright Act of 1976 and the right to store and retrieve one copy
of the work, you may not decompile, disassemble, reverse engineer, reproduce, modify, create derivative works based upon,
transmit, distribute, disseminate, sell, publish or sublicense the work or any part of it without McGraw Hill’s prior consent. You
may use the work for your own noncommercial and personal use; any other use of the work is strictly prohibited. Your right to
use the work may be terminated if you fail to comply with these terms.

THE WORK IS PROVIDED “AS IS.” McGRAW HILL AND ITS LICENSORS MAKE NO GUARANTEES OR WARRAN-
TIES AS TO THE ACCURACY, ADEQUACY OR COMPLETENESS OF OR RESULTS TO BE OBTAINED FROM USING
THE WORK, INCLUDING ANY INFORMATION THAT CAN BE ACCESSED THROUGH THE WORK VIA HYPERLINK
OR OTHERWISE, AND EXPRESSLY DISCLAIM ANY WARRANTY, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

McGraw Hill and its licensors do not warrant or guarantee that the functions contained in the work will meet your requirements
or that its operation will be uninterrupted or error free. Neither McGraw Hill nor its licensors shall be liable to you or anyone else
for any inaccuracy, error or omission, regardless of cause, in the work or for any damages resulting therefrom. McGraw Hill has
no responsibility for the content of any information accessed through the work. Under no circumstances shall McGraw Hill and/
or its licensors be liable for any indirect, incidental, special, punitive, consequential or similar damages that result from the use of
or inability to use the work, even if any of them has been advised of the possibility of such damages. This limitation of liability
shall apply to any claim or cause whatsoever whether such claim or cause arises in contract, tort or otherwise.
All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM
Blind Folio: v

This book is dedicated to my parents, Gwendolyn and


Theodore Jordan, who helped me find my passion for
technology and teaching others “how to fish.”
—Ted Jordan

00-FM.indd 5 06/04/23 10:52 AM


BeginNew-Tight5.5 / Java: A Beginner’s Guide, Ninth Edition / Herbert Schildt / 355-9 / Front Matter
Blind Folio: xxiv

This page intentionally left blank

00-FM.indd 24 12/11/21 9:20 PM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CONTENTS AT A GLANCE

Chapter 1 An Introduction to Linux and a Pre-Assessment Exam. . . . . . . . . . . . . . . . . . . . 1


Chapter 2 Using the vi Text Editor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Chapter 3 Working with the Linux Shell.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Chapter 4 Managing Linux Users and Groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Chapter 5 Managing Linux Files and Directories. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Chapter 6 Managing Ownership and Permissions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Chapter 7 Managing Storage.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Chapter 8 Configuring Volume Management. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Chapter 9 Managing Linux Processes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
Chapter 10 Managing Linux Applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Chapter 11 Managing the Linux Boot Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Chapter 12 Managing Hardware Under Linux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Chapter 13 Writing Shell Scripts.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Chapter 14 Managing Linux Network Settings.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
Chapter 15 Understanding Network Security. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
Chapter 16 Securing Linux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
Chapter 17 Applying DevOps: Automation and Orchestration.. . . . . . . . . . . . . . . . . . . 573
Chapter 18 Understanding Virtualization and the Cloud. . . . . . . . . . . . . . . . . . . . . . . . . . 589
Chapter 19 Troubleshooting and Diagnostics.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
Chapter 20 Installing and Configuring Linux.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
Appendix A Objective Map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679
Appendix B About the Online Content. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699

Index.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703

vii

00-FM.indd 7 06/04/23 10:52 AM


BeginNew-Tight5.5 / Java: A Beginner’s Guide, Ninth Edition / Herbert Schildt / 355-9 / Front Matter
Blind Folio: xxiv

This page intentionally left blank

00-FM.indd 24 12/11/21 9:20 PM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CONTENTS

Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiii
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxv
Chapter 1 An Introduction to Linux and a Pre-Assessment Exam . . . . . . . . . . . . . 1
A Brief History of Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Batch Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
MULTICS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
UNIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Linux Operating System Structure . . . . . . . . . . . . . . . . . . . . . . . . . 4
Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Operating System Software . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Application Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Linux Distributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Distribution Differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Linux Derivatives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Common Linux Implementations . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Linux on the Desktop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Linux on the Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Mobile Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Linux and Virtualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Linux and Cloud Computing . . . . . . . . . . . . . . . . . . . . . . . . 16
Embedded Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Pre-Assessment Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Quick Answer Key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
In-Depth Answer Explanations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Analyzing Your Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Chapter 2 Using the vi Text Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
The Role and Function of the vi Text Editor . . . . . . . . . . . . . . . . . 53
Editing Text Files in vi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Opening Files in vi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
The vi Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Working in Normal Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

ix

00-FM.indd 9 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


x
Working in Command-Line Mode . . . . . . . . . . . . . . . . . . . . 59
Exercise 2-1: Using the vi Editor . . . . . . . . . . . . . . . . . . . . 61
Editing Text Files in nano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Command Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Configuration Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Chapter 3 Working with the Linux Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
What Is a Shell? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Configuring the Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
The Life of a Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Managing Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Configuring Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Setting Up the Local Environment . . . . . . . . . . . . . . . . . . . . . . . . . 76
Locale Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Character Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
An ASCII Primer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
A Unicode Primer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Setting Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
The date Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
The /usr/share/zoneinfo/
and /etc/localtime Files . . . . . . . . . . . . . . . . . . . . . 80
The hwclock Command . . . . . . . . . . . . . . . . . . . . . . . . . . 81
The timedatectl Command . . . . . . . . . . . . . . . . . . . . . 81
Bash Configuration Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Login Script Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
The source Command . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Exercise 3-1: Working with Variables, Parameters,
and Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Redirection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
File Descriptors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Redirect stdin with < . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Redirect stdout with > and >> . . . . . . . . . . . . . . . . . . . . . . . 88
Redirect stderr with 2> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Combining stdout and stderr . . . . . . . . . . . . . . . . . . . . . . . . . 90
Send Data to a Command Using a Pipe . . . . . . . . . . . . . . . . . 90
Exercise 3-2: Redirection Hands-on Project . . . . . . . . . . . . . 91
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

00-FM.indd 10 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

Contents
xi
Chapter 4 Managing Linux Users and Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Understanding Linux Users and Groups . . . . . . . . . . . . . . . . . . . . . 99
Linux User Accounts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Displaying User and Group IDs . . . . . . . . . . . . . . . . . . . . . . 104
Creating and Managing User Accounts from the Command Line . . . 106
Provisioning New Users with useradd . . . . . . . . . . . . . . . . 106
Exercise 4-1: Managing User Accounts
from the Command Line . . . . . . . . . . . . . . . . . . . . . . . . . 110
Provisioning New Workgroups with groupadd . . . . . . . . . 113
Exercise 4-2: Managing Groups from the Command Line . . . 114
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Chapter 5 Managing Linux Files and Directories . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Understanding the Filesystem Hierarchy Standard . . . . . . . . . . . . . 121
Navigating the Linux Filesystem . . . . . . . . . . . . . . . . . . . . . . 123
Viewing Directory Contents with ls . . . . . . . . . . . . . . . . . . 125
Exercise 5-1: Navigating the Filesystem . . . . . . . . . . . . . . . . 126
Managing Linux Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Files, Filenames, and Inodes . . . . . . . . . . . . . . . . . . . . . . . . . 127
Creating and Validating Files with touch and stat . . . . . . 128
Soft and Hard Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Creating New Directories with mkdir . . . . . . . . . . . . . . . . . 133
Determining the File Type . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Viewing File Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Deleting Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Copying and Moving Files . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Exercise 5-2: Managing Files and Directories . . . . . . . . . . . . 136
Finding Files in the Linux Filesystem . . . . . . . . . . . . . . . . . . . . . . . 139
Using find to Search for Files . . . . . . . . . . . . . . . . . . . . . . . 139
Using xargs to Run Commands from Standard Input . . . . 141
Using locate to Find Files . . . . . . . . . . . . . . . . . . . . . . . . . 142
Understanding Commands and Precedence . . . . . . . . . . . . . . . . . . 143
Creating Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Creating and Using Functions . . . . . . . . . . . . . . . . . . . . . . . . 144
Using Builtin Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Using External Commands . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Exercise 5-3: Finding Files . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Finding Content Within Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Using grep to Search Within Files . . . . . . . . . . . . . . . . . . . . 147
Using egrep to Search Within Files . . . . . . . . . . . . . . . . . . 148
Exercise 5-4: Using grep . . . . . . . . . . . . . . . . . . . . . . . . . . 149

00-FM.indd 11 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


xii
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Chapter 6 Managing Ownership and Permissions . . . . . . . . . . . . . . . . . . . . . . . . 159
Managing File Ownership . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Viewing Default File Permissions and Ownership . . . . . . . . . 160
Managing Ownership from the Command Line . . . . . . . . . . 161
Exercise 6-1: Managing Ownership . . . . . . . . . . . . . . . . . . . 162
Managing File and Directory Permissions . . . . . . . . . . . . . . . . . . . . 163
How Permissions Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Managing Permissions from the Command Line . . . . . . . . . . 165
Exercise 6-2: Managing Permissions . . . . . . . . . . . . . . . . . . . 168
Working with Default Permissions . . . . . . . . . . . . . . . . . . . . 169
Working with Special Permissions . . . . . . . . . . . . . . . . . . . . . 171
Exercise 6-3: Managing Default and Special Permissions . . . 173
Configuring File Attributes and Access Control Lists . . . . . . . . . . . 174
File Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
File Access Control Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Chapter 7 Managing Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
An Overview of Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
The Master Boot Record . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
The GUID Partition Table . . . . . . . . . . . . . . . . . . . . . . . . . . 183
The Device Naming Conventions . . . . . . . . . . . . . . . . . . . . . 184
Viewing Disk Partitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Creating Partitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Partition Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
fdisk Partitioning Utility . . . . . . . . . . . . . . . . . . . . . . . . . . 189
parted Partitioning Utility . . . . . . . . . . . . . . . . . . . . . . . . . 192
gdisk Partitioning Utility . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Block Device Encryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
Creating Filesystems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Available Filesystems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
Building a Filesystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Mounting a Filesystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Mounting Filesystems Automatically at Boot . . . . . . . . . . . . . 204
Unmounting a Partition with umount . . . . . . . . . . . . . . . . . 206
Managing Linux Filesystems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Using df to Verify Free Disk Space . . . . . . . . . . . . . . . . . . . . 207
Using du to Verify Directory Usage . . . . . . . . . . . . . . . . . . . . 208
Reporting Filesystem Status Using dumpe2fs . . . . . . . . . . . 209

00-FM.indd 12 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

Contents
xiii
Verifying XFS Filesystems Using xfs_admin . . . . . . . . . . . 209
Checking the Filesystem Integrity . . . . . . . . . . . . . . . . . . . . . 210
Managing Quotas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Editing /etc/fstab to Set Up Quotas . . . . . . . . . . . . . . . 211
Creating Quota Database Files . . . . . . . . . . . . . . . . . . . . . . . 212
Assigning a Quota to Users and Groups . . . . . . . . . . . . . . . . 212
Exercise 7-1: Managing Linux Partitions . . . . . . . . . . . . . . . . 213
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
Chapter 8 Configuring Volume Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Implementing Logical Volume Management . . . . . . . . . . . . . . . . . . 223
LVM Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
LVM Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
LVM Snapshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Extending LVMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
Creating Archives and Performing Compression . . . . . . . . . . . . . . . 229
Selecting a Backup Medium . . . . . . . . . . . . . . . . . . . . . . . . . 229
Selecting a Backup Strategy . . . . . . . . . . . . . . . . . . . . . . . . . . 230
Linux Backup and Compression Utilities . . . . . . . . . . . . . . . . 231
Exercise 8-1: Backing Up Data . . . . . . . . . . . . . . . . . . . . . . . 235
Enabling Redundant Array of Independent Disks . . . . . . . . . . . . . . 235
Configuring Software RAID . . . . . . . . . . . . . . . . . . . . . . . . . 238
Verifying RAID Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Exercise 8-2: Configuring RAID and Logical Volumes . . . . . 239
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Chapter 9 Managing Linux Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
Understanding Linux Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
Types of Linux Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
User Processes Versus System Processes . . . . . . . . . . . . . . . . . 250
How Linux Processes Are Loaded . . . . . . . . . . . . . . . . . . . . . 252
Managing Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
Starting System Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Viewing Running Processes . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Prioritizing Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Managing Foreground and Background Processes . . . . . . . . . 264
Ending a Running Process . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Keeping a Process Running After Logout . . . . . . . . . . . . . . . . 268
Exercise 9-1: Working with Linux Processes . . . . . . . . . . . . . 269
Scheduling Jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Using the at Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Using the cron Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . 274

00-FM.indd 13 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


xiv
Exercise 9-2: Scheduling Linux Processes . . . . . . . . . . . . . . . 277
Using systemd timers . . . . . . . . . . . . . . . . . . . . . . . . . 278
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
Chapter 10 Managing Linux Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Using a Package Manager to Install Applications . . . . . . . . . . . . . . . 289
Installing Applications on Red Hat with RPM . . . . . . . . . . . . . . . . 290
RPM Package Naming Conventions . . . . . . . . . . . . . . . . . . . 291
RPM Command Options . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
RPM Application Installation . . . . . . . . . . . . . . . . . . . . . . . . 292
RPM Application Upgrades . . . . . . . . . . . . . . . . . . . . . . . . . . 293
RPM Application Removal . . . . . . . . . . . . . . . . . . . . . . . . . . 294
RPM Application Verification . . . . . . . . . . . . . . . . . . . . . . . . 294
RPM Database Querying . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
RPM Conversion to CPIO . . . . . . . . . . . . . . . . . . . . . . . . . . 296
Exercise 10-1: Practicing Package Manipulation with RPM . . . . 297
Installing RPMs with YUM, DNF, and ZYpp . . . . . . . . . . . . . . . . . 298
The YUM Package Manager . . . . . . . . . . . . . . . . . . . . . . . . . 298
Exercise 10-2: Practicing Package Manipulation with YUM . . . 303
The DNF Package Manager . . . . . . . . . . . . . . . . . . . . . . . . . 303
The ZYpp Package Manager . . . . . . . . . . . . . . . . . . . . . . . . . 304
Installing Applications on Debian with dpkg . . . . . . . . . . . . . . . . . 306
Debian Package Naming Conventions . . . . . . . . . . . . . . . . . . 306
Managing Applications with dpkg . . . . . . . . . . . . . . . . . . . . 307
Viewing Application Information with apt-cache . . . . . . 308
Installing Applications on Debian with APT . . . . . . . . . . . . . . . . . . 309
Troubleshooting an Application Crash . . . . . . . . . . . . . . . . . . 309
Using Universal Linux App Stores . . . . . . . . . . . . . . . . . . . . . . . . . . 310
Snap Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
Flatpak Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
AppImage Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Installing Applications from Source Code . . . . . . . . . . . . . . . . . . . . 313
Preparing the Installation Files . . . . . . . . . . . . . . . . . . . . . . . . 313
Compiling the Executable . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Installing the Executable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
Exercise 10-3: Building Software from Source Code . . . . . . . 316
Uninstalling Software Compiled from Source Code . . . . . . . 317
Managing Shared Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
How Shared Libraries Work . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Managing Shared Library Dependencies . . . . . . . . . . . . . . . . 319
Exercise 10-4: Working with Shared Libraries . . . . . . . . . . . . 321
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

00-FM.indd 14 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

Contents
xv
Chapter 11 Managing the Linux Boot Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
The BIOS POST Phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
The Classic BIOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
The Modern UEFI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
The GRUB2 Bootloader Phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Modify the GRUB2 Bootloader . . . . . . . . . . . . . . . . . . . . . . 335
Change a Forgotten root Password . . . . . . . . . . . . . . . . . . . 338
Exercise 11-1: Working with GRUB2 . . . . . . . . . . . . . . . . . . 340
The Kernel Initiation Phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
System V Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
The Linux Runlevels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
The inittab Startup File . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Shutting Down the System . . . . . . . . . . . . . . . . . . . . . . . . . . 342
The systemd Initialization Phase . . . . . . . . . . . . . . . . . . . . . . . . . 343
systemd Unit Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
Service Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Targets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Kernel Panic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Chapter 12 Managing Hardware Under Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Discovering Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Displaying the Kernel Ring Buffer with dmesg . . . . . . . . . . 356
Detecting USB Devices with lsusb . . . . . . . . . . . . . . . . . . 358
Detecting PCI Devices with lspci . . . . . . . . . . . . . . . . . . . 359
Managing Kernel Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
Exercise 12-1: Working with Kernel Modules . . . . . . . . . . . . 363
Referencing Kernel and User Space . . . . . . . . . . . . . . . . . . . . . . . . . 364
/sys and sysfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
udev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
Configuring Hardware Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
lsdev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
lshw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Exercise 12-2: Discovering Devices . . . . . . . . . . . . . . . . . . . . 381
Configuring Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
Bluetooth Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
Configuring Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Scanning for Network Devices . . . . . . . . . . . . . . . . . . . . . . . 383
Configuring a Wi-Fi Network . . . . . . . . . . . . . . . . . . . . . . . . 383
Configuring Storage Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
SCSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385

00-FM.indd 15 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


xvi
SATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Optical Drives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Solid State Drives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
USB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
hdparm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
lsscsi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Printing in Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Adding Printers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Printing to a Printer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
Managing Printers and Print Queues . . . . . . . . . . . . . . . . . . . 392
Canceling Print Jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
lpmove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
Removing a Printer or Printer Class . . . . . . . . . . . . . . . . . . . . 394
Exercise 12-3: Printing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Chapter 13 Writing Shell Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Advanced Shell Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Globbing Wildcard Characters . . . . . . . . . . . . . . . . . . . . . . . 402
Sequencing Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
Command Substitution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Understanding Shell Script Components . . . . . . . . . . . . . . . . . . . . 404
Defining the Interpreter with #! . . . . . . . . . . . . . . . . . . . . . . 404
Commenting with # . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
Defining Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
Reading User Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
Using Positional Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Using Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Using Control Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Expression Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Testing with Conditionals . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
Using Looping Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
Exercise 13-1: Creating a Basic Shell Script . . . . . . . . . . . . . 416
Processing Text Streams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
The tr Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
The cut Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
The nl Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
The od Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
The sed Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
The awk Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
The sort Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
The split Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
The head Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430

00-FM.indd 16 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

Contents
xvii
The tail Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
The uniq Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
The wc Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Exercise 13-2: Processing Text Streams . . . . . . . . . . . . . . . . . 431
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
Chapter 14 Managing Linux Network Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
Understanding IP Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
What Is a Protocol? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
How IPv4 Addresses Work . . . . . . . . . . . . . . . . . . . . . . . . . . 444
How IPv4 Subnet Masks Work . . . . . . . . . . . . . . . . . . . . . . . 446
Configuring Network Addressing Parameters . . . . . . . . . . . . . . . . . 449
Assigning NIC Nomenclature . . . . . . . . . . . . . . . . . . . . . . . . 449
Configuring IPv4 Parameters . . . . . . . . . . . . . . . . . . . . . . . . . 449
Exercise 14-1: Working with Network Interfaces . . . . . . . . . 454
Configuring Routing Parameters . . . . . . . . . . . . . . . . . . . . . . 455
Configuring Name Resolver Settings . . . . . . . . . . . . . . . . . . . 457
Configuring IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
Troubleshooting Network Problems . . . . . . . . . . . . . . . . . . . . . . . . 461
Using a Standardized Troubleshooting Model . . . . . . . . . . . . 461
Using ping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
Using netstat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Using traceroute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
Using nc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Using Name Resolution Tools . . . . . . . . . . . . . . . . . . . . . . . . 467
Synchronizing Time on a Network . . . . . . . . . . . . . . . . . . . . 469
Exercise 14-2: Working with Network Commands . . . . . . . . 471
Understanding Network-Based Filesystems . . . . . . . . . . . . . . . . . . . 472
Network File System (NFS) . . . . . . . . . . . . . . . . . . . . . . . . . . 472
Samba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
Chapter 15 Understanding Network Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
Understanding How Encryption Works . . . . . . . . . . . . . . . . . . . . . 482
Symmetric Encryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
Asymmetric Encryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
Integrity Checking via Hashing . . . . . . . . . . . . . . . . . . . . . . . 484
Implementing Secured Tunnel Networks . . . . . . . . . . . . . . . . . . . . . 485
How SSH Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
Configuring SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
Exercise 15-1: Working with SSH . . . . . . . . . . . . . . . . . . . . 488

00-FM.indd 17 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


xviii
Logging In to SSH Without a Password . . . . . . . . . . . . . . . . 490
Exercise 15-2: Configuring Public Key Authentication . . . . . 493
Virtual Private Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
Configuring High-Availability Networking . . . . . . . . . . . . . . . . . . . 497
Network Bridge Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
Network Bonding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
Understanding Single Sign-On . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
RADIUS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
LDAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
Kerberos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
TACACS+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501
Defending Against Network Attacks . . . . . . . . . . . . . . . . . . . . . . . . 501
Mitigating Network Vulnerabilities . . . . . . . . . . . . . . . . . . . . 502
Implementing a Firewall with firewalld . . . . . . . . . . . . . 504
Exercise 15-3: Implementing Network Security Measures
with firewalld . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509
Implementing a Firewall with iptables . . . . . . . . . . . . . . 509
Exercise 15-4: Implementing Network Security Measures
with iptables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
Encrypting Files with GPG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513
How GPG Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
Using GPG to Encrypt Files . . . . . . . . . . . . . . . . . . . . . . . . . 514
Using GPG to Revoke Keys . . . . . . . . . . . . . . . . . . . . . . . . . . 518
Exercise 15-5: Using GPG to Encrypt Files . . . . . . . . . . . . . 520
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526
Chapter 16 Securing Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
Securing the System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
Securing the Physical Environment . . . . . . . . . . . . . . . . . . . . 527
Securing Access to the Operating System . . . . . . . . . . . . . . . . 528
Controlling User Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
To Root or Not to Root? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
Implementing a Strong Password Policy . . . . . . . . . . . . . . . . 534
Locking Accounts After Failed Authentications . . . . . . . . . . . 536
Configuring User Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
Disabling User Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
Security Auditing Using find . . . . . . . . . . . . . . . . . . . . . . . 542
Exercise 16-1: Managing User Access . . . . . . . . . . . . . . . . . . 544
Managing System Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
Configuring Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
Using Log Files to Troubleshoot Problems . . . . . . . . . . . . . . . 552
Using Log Files to Detect Intruders . . . . . . . . . . . . . . . . . . . . 555

00-FM.indd 18 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

Contents
xix
Enhancing Group and File Security . . . . . . . . . . . . . . . . . . . . . . . . . 556
Implementing SELinux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
Implementing AppArmor . . . . . . . . . . . . . . . . . . . . . . . . . . . 562
Exercise 16-2: Managing SELinux Contexts . . . . . . . . . . . . . 564
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
Chapter 17 Applying DevOps: Automation and Orchestration . . . . . . . . . . . . . 573
Orchestration Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
Orchestration Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575
The Git Revision Control System . . . . . . . . . . . . . . . . . . . . . . . . . . 577
Using Git . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577
Collaborating with Git . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
Exercise 17-1: Working with a Git Repository . . . . . . . . . . . 583
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587
Chapter 18 Understanding Virtualization and the Cloud . . . . . . . . . . . . . . . . . . . 589
Understanding Virtualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589
Hypervisors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590
Thin vs. Thick Provisioning . . . . . . . . . . . . . . . . . . . . . . . . . . 591
Virtualization File Formats . . . . . . . . . . . . . . . . . . . . . . . . . . 591
Managing Virtual Machines with virsh . . . . . . . . . . . . . . . 591
Virtual Networking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592
BLOB Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594
Virtual Machine Shortcomings . . . . . . . . . . . . . . . . . . . . . . . 594
Understanding Containers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594
Persistent Volumes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596
Container Markup Languages . . . . . . . . . . . . . . . . . . . . . . . . 596
Managing Containers with Docker and Kubernetes . . . . . . . . . . . . 597
Getting Started with Docker . . . . . . . . . . . . . . . . . . . . . . . . . 598
Deploying an Existing Container Image . . . . . . . . . . . . . . . . 599
Running a Container Image . . . . . . . . . . . . . . . . . . . . . . . . . 599
Configuring Container Persistent Storage . . . . . . . . . . . . . . . 600
Removing Containers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
Cluster Management with Kubernetes . . . . . . . . . . . . . . . . . . 601
Automating Installations with Kickstart . . . . . . . . . . . . . . . . . . . . . 602
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605

00-FM.indd 19 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


xx
Chapter 19 Troubleshooting and Diagnostics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
A Standardized Troubleshooting Model . . . . . . . . . . . . . . . . . . . . . . 607
Troubleshooting Computer Problems . . . . . . . . . . . . . . . . . . . . . . . 608
Verify Hardware Configuration . . . . . . . . . . . . . . . . . . . . . . . 608
Verify CPU Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
Verify Memory Performance . . . . . . . . . . . . . . . . . . . . . . . . . 611
Exercise 19-1: Working with Swap Space . . . . . . . . . . . . . . . 614
Validate Storage Performance . . . . . . . . . . . . . . . . . . . . . . . . . 614
Validate Other Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617
Troubleshooting Network Problems . . . . . . . . . . . . . . . . . . . . . . . . 620
Verify Network Performance . . . . . . . . . . . . . . . . . . . . . . . . . 621
Validate User Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . 626
Validate the Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627
Exercise 19-2: Troubleshooting Networking Issues . . . . . . . . 628
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632
Chapter 20 Installing and Configuring Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635
Designing a Linux Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636
Conducting a Needs Assessment . . . . . . . . . . . . . . . . . . . . . . 636
Selecting a Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637
Checking Hardware Compatibility . . . . . . . . . . . . . . . . . . . . 638
Verifying System Requirements . . . . . . . . . . . . . . . . . . . . . . . 638
Planning the Filesystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639
Selecting Software Packages . . . . . . . . . . . . . . . . . . . . . . . . . . 641
Identifying User Accounts . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
Gathering Network Information . . . . . . . . . . . . . . . . . . . . . . 643
Selecting an Installation Source . . . . . . . . . . . . . . . . . . . . . . . 643
Installing Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
Exercise 20-1: Installing a Linux System . . . . . . . . . . . . . . . . 646
Configuring the X Window System . . . . . . . . . . . . . . . . . . . . . . . . 649
Configuring the X Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
Configuring the Display Manager . . . . . . . . . . . . . . . . . . . . . 653
Configuring Accessibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
Configuring Locale Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656
Configuring Time Zone Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
Configuring Printing with CUPS . . . . . . . . . . . . . . . . . . . . . . . . . . 658
Configuring CUPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 658
Configuring E-mail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
Configuring SQL Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663
Configuring Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
GUID Partition Table Components . . . . . . . . . . . . . . . . . . . 664
IDE Drives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666
Locating a Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666

00-FM.indd 20 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

Contents
xxi
Chapter Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 670
Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671
Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676
Appendix A Objective Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679
Exam XK0-005 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679
Appendix B About the Online Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
System Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
Your Total Seminars Training Hub Account . . . . . . . . . . . . . . . . . . 699
Privacy Notice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699
Single User License Terms and Conditions . . . . . . . . . . . . . . . . . . . 699
TotalTester Online . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 701
Other Book Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 701
Performance-Based Questions . . . . . . . . . . . . . . . . . . . . . . . . 701
Virtual Machines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702
Videos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702
Technical Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702

Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703

00-FM.indd 21 06/04/23 10:52 AM


BeginNew-Tight5.5 / Java: A Beginner’s Guide, Ninth Edition / Herbert Schildt / 355-9 / Front Matter
Blind Folio: xxiv

This page intentionally left blank

00-FM.indd 24 12/11/21 9:20 PM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

ACKNOWLEDGMENTS

Thank you to my wife, Cheryl, and my children, Theo and Aria, for allowing Daddy to
toil, peacefully, in the basement, alone, to complete this work.
Also I would like to thank my Cass Technical High School teachers Mr. Max Green and
Mr. Walter Downs, a Tuskegee Airman who felled 6 ½ enemy aircraft in WWII, for
giving me my “serious fun” teaching style.
Dr. David “Doc” Green and Dr. Duane McKeachie of Kettering University showed me
how to simplify difficult concepts for students.
Dr. Larry Stark and Dr. Masayoshi Tomizuka of the University of California at Berkeley
introduced me to UNIX, which has taken me further than I imagined.
—Ted Jordan

xxiii

00-FM.indd 23 06/04/23 10:52 AM


BeginNew-Tight5.5 / Java: A Beginner’s Guide, Ninth Edition / Herbert Schildt / 355-9 / Front Matter
Blind Folio: xxiv

This page intentionally left blank

00-FM.indd 24 12/11/21 9:20 PM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

INTRODUCTION

Congratulations on your decision to become CompTIA Linux+ certified! By purchasing


this book, you have taken the first step toward earning one of the hottest certifications
around. Being CompTIA Linux+ certified provides you with a distinct advantage in
today’s IT job market. When you obtain your Linux+ certification, you prove to your
employer, your coworkers, and yourself that you truly know your stuff with Linux.
The new CompTIA Linux+ exam, XK0-005, is an expanded version of the previous
CompTIA Linux+ XK0-004 exam. In addition to Linux, it covers some DevOps,
virtualization, and cloud topics. The Linux portion of the test includes SELinux and
other security topics as well as device management firewall and server commands used
in a multiserver environment.
The XK0-005 exam is designed for those with at least 12 months of hands-on
experience working with Linux servers as a Linux, cloud, or DevOps support engineer.
The exam includes both multiple-choice and performance-based questions, requiring
a working knowledge of the topics listed in the CompTIA Linux+ exam objectives,
described later in this introduction.
We first need to introduce you to the nuts and bolts of this book and the CompTIA
Linux+ certification program. We’ll look at the following topics:

•• Who this book is for


•• How to use this book
•• How this book is organized
•• Special features of the All-in-One certification series
•• The CompTIA Linux+ certification exam
•• Tips for succeeding on the Linux+ certification exam
Let’s begin!

Who This Book Is For


Before you start this book, you need to be aware that we have two primary goals in mind:

•• To help you prepare for and pass the Linux+ exam offered by CompTIA
•• To provide you with the extra skills and knowledge you need to be successful on
the job after you are certified

xxv

00-FM.indd 25 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


xxvi
How to Use This Book
We suggest you use the virtual machine image supplied with the book (see Appendix B
for more details). Although it is a large download, the image contains everything you
need to study for the test offline. The image is CentOS 7–based, but it also contains
Docker images to review the material specifically related to Fedora, openSUSE, and
Debian. We have also included an Ubuntu image. Each of these images may be opened
by executing the fedora, opensuse, debian, or ubuntu commands.
Prior to working with the image, make a clone. Before experimenting, make a snap-
shot so that if you mess up you can just roll it back. Don’t be afraid to trash the image.
That is what learning is about.
There are two users on the system: root and student1. To log in as root from
the graphical interface, select Unlisted and then use the username root and the pass-
word password. To log in as student1, select student1 and supply the password
student1.
We have also provided a directory called /LABS. This directory contains lab files
for specific chapters. Each chapter directory contains a source directory and a work
directory. We suggest you practice with the copy in the work directory; if you make a
mistake or want to start over, you can easily copy the original lab files from the source
directory to the work directory.
As you are reading, use the Linux image to test what you have read. Read a section
and then try the commands in the section. These actions will help you remember the
material better and also improve your problem-solving skills. Most chapters also include
one or more exercises. When you encounter an exercise, do each step. Don’t just scan
the exercise—understand what each step does. Anticipate what your actions will affect
and then verify the results. If something unexpected happens, try to understand why,
and try again.
The activities help you understand the material better and are similar to the exam’s
performance-based questions. So don’t just read the activities or watch the videos; perform
them so that you can pass the exam the first time.
In some exercises we have not supplied all the steps. We are not trying to trick you.
We want you to build the assessment skills that you will need not only when taking the
CompTIA Linux+ exam but also in real life. Always ask, what do I have to complete?
What do I need for this function to work? Examine pertinent variable or parameter
settings as well as related configuration files. If you are having difficulty, each exercise
has an accompanying video available in the online content that demonstrates how to
perform the exercise.
Take your time studying. The object of the CompTIA Linux+ exam is to certify that
you know what you are doing, not that you can pass a test. Rome wasn’t built in a day.
Take the time to prepare. If you can explain concepts, can complete the exercises while
understanding them, and can discriminate why a question’s answer is correct whereas
other choices are incorrect, you are ready to take the exam.

00-FM.indd 26 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

Introduction
xxvii
How This Book Is Organized
The CompTIA Linux+ exam objectives, as currently published, are organized by topic.
They aren’t organized into a logical instructional flow. As you read through this book,
you’ll quickly notice that we don’t address the CompTIA Linux+ objectives in the same
order as they are published by CompTIA. All the objectives are covered; however, we’ve
reorganized them such that we start with the most basic Linux concepts first. Then, as
we progress through the book, we address increasingly more advanced CompTIA Linux+
objectives, building on the skills and knowledge covered in preceding chapters.
The Exam Objective Map in Appendix A has been constructed to help you cross-
reference the official exam objectives from CompTIA with the objectives as they are
presented and covered in this book. The exam objectives are listed in the left column
of the table exactly as CompTIA presents them, and the right column identifies the
corresponding chapter(s) in which each exam objective is covered.

Special Features of the


All-in-One Certification Series
To make the All-in-One Certification series exam guides more useful and a pleasure to
read, McGraw Hill has designed the series to include several conventions that you’ll see
throughout this book.

Icons
To alert you to an important bit of advice, a shortcut, or a pitfall, you’ll occasionally see
Notes, Tips, Cautions, and Exam Tips peppered throughout the text.

NOTE Notes offer nuggets of especially helpful stuff, background explanations,


and information. They also define terms occasionally.

TIP Tips provide suggestions and nuances to help you learn to finesse your
job. Take a tip from us and read the Tips carefully.

CAUTION When you see a Caution, pay special attention. Cautions appear
when you have to make a crucial choice or when you are about to undertake
something that may have ramifications you might not immediately anticipate.
Read them now so that you don’t have regrets later.

EXAM TIP Exam Tips give you special advice or may provide information
specifically related to preparing for the exam itself.

00-FM.indd 27 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


xxviii
End-of-Chapter Reviews and Questions
An important part of this book comes at the end of each chapter, where you will find a
brief review of the main points, along with a series of questions followed by the answers
to those questions. Each question is in multiple-choice format.
The questions are provided as a study aid to you, the reader and prospective
CompTIA Linux+ exam taker. We cannot guarantee that if you answer all of the ques-
tions correctly you will absolutely pass the certification exam. But we can guarantee
that the questions will provide you with an idea about how ready you are for the exam.

Online Content
This book comes with access to virtual machine files you can download and use to set up
your very own Linux system to practice with. It also includes access to video clips from
the authors demonstrating many of the exercises you’ll find within the book’s chapters,
as well as TotalTester practice exams to prepare you for the real certification exam. Read
more about the online content and how to access it in Appendix B.

The CompTIA Linux+ Certification Exam


Now that you understand how this book is organized, it’s time for you to become familiar
with the CompTIA Linux+ certification program and the associated exam. Let’s review
the following topics:

•• About the CompTIA Linux+ certification


•• Taking the CompTIA Linux+ exam

About the CompTIA Linux+ Certification


The CompTIA Linux+ certification is an excellent program! It is a vendor-neutral certi-
fication designed and administered by the Computing Technology Industry Association,
affectionately known as CompTIA.
The CompTIA Linux+ certification is considered “vendor neutral” because the exam
is not based on one specific vendor’s hardware or software. This is somewhat unique
in the information technology industry. Many IT certification programs are centered
on one particular vendor’s hardware or software, such as those from Microsoft, Cisco,
SUSE, or Red Hat.
The CompTIA Linux+ certification, on the other hand, is designed to verify your
knowledge and skills with the Linux operating system in general, not on any one
particular distribution. The following is according to CompTIA (at the time of writing):

CompTIA Linux+ validates the skills administrators need to secure the enterprise,
power the cloud and keep systems running. The new certification ensures that IT
professionals, software developers, cybersecurity engineers and penetration testers
have these necessary skills to support today’s tech systems.

00-FM.indd 28 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

Introduction
xxix
CompTIA Linux+ is the only job-focused Linux certification covering the latest
foundational skills demanded by hiring managers. Unlike other certifications, the
new exam includes performance-based and multiple-choice questions to identify
the employees who can do the job. The exam covers tasks associated with all major
distributions of Linux, setting the foundation for advanced vendor/distro-specific
knowledge.

As previously mentioned, CompTIA has published objectives for the exam that define
the CompTIA Linux+ certification. These exam objectives specify what a Linux system
administrator should know and be able to do. The CompTIA Linux+ exam objectives
(along with practice exams) are available at https://comptia.org/certifications/linux,
upon submitting a brief registration form. To be CompTIA Linux+ certified, you must
be able to perform the tasks contained in these objectives.

Taking the CompTIA Linux+ Exam


The CompTIA Linux+ exam is a timed exam and delivered electronically on a computer.
The exam is composed of 90 questions and must be completed within 90 minutes.
(A countdown timer is provided in the upper-right corner of the screen.)

NOTE You might actually see fewer than 90 questions on the exam because
performance-based questions (PBQs) carry more weight. Expect to see about
5 PBQs. The more PBQs on the exam, the fewer total questions provided.
Partial credit is granted on PBQs.

The exam interface is fairly straightforward. Items are displayed one at a time on the
screen. You are presented with a question along with a series of responses. You mark the
appropriate response and then go to the next question. You are allowed to go back to
questions that you’ve marked for review.
Each exam is composed primarily of multiple-choice items. Most of the multiple-
choice questions require only one answer; however, some will require the selection of
multiple correct responses. If you forget to select one, the exam will warn you that your
answer is incomplete.
After you complete the exam, the computer will immediately evaluate it and your
score will be printed out. To pass, you need a minimum score of 720 points out of a
possible 900. If you do not pass, your score printout will list the objectives where you
missed questions. You can use this information to review and prepare yourself to retake
the exam.
To make the exam globally available, CompTIA administers the CompTIA Linux+
exam through its testing partner, Pearson VUE (https://home.pearsonvue.com). When
registering at Pearson VUE, you have the option to choose a testing center or to take the
exam at home.

00-FM.indd 29 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


xxx

Figure 1 Locating a testing center near you

NOTE To take the exam at home, make sure you use a room that is very neat
and free of books. No one can walk in the room while you are taking the
exam; otherwise, the proctor will fail you, and no refunds. Learn more here:
https://www.comptia.org/testing/testing-options/take-online-exam

To sign up for the CompTIA Linux+ exam, visit the CompTIA website https://
store.comptia.org and purchase an exam voucher. You will find a promotional code
for a 10 percent discount off the price of the exam voucher at the back of this book.
Then visit the Pearson VUE website and locate a testing center near you. Just specify
the exam you want to take and your local information. Unless you selected to take
the exam at home, you will then be provided with a list of testing centers near you, as
shown in Figure 1. Learn more here: https://www.comptia.org/testing.
Then use the Pearson VUE website to schedule the exam and submit the exam
voucher. You can also call the test provider directly and schedule the exam over the
phone. Be aware that they will need to verify your identity, so be prepared to share your
Social Security or National ID number. The test provider will send you a confirmation
e-mail listing the time and location of your exam.
On the day of the test, be sure to allow adequate travel time. You never know when
you will run into a traffic jam or your car will break down. Try to show up early. If you
are taking your exam at a community college, you may have to walk a very long distance
to reach the exam.
When you check in at the testing center, you will be required to show two forms of
original, unexpired identification, at least one of which must have your photo on it. The
following are acceptable forms of ID:
•• Driver’s license
•• Passport
•• Social Security card or National ID card

00-FM.indd 30 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

Introduction
xxxi
•• Signed credit card
•• Common Access Card
•• Personal identity verification card
•• Military ID card
•• NEXUS card
•• State-issued ID card
When you check in, you must surrender your phone, tablet, keys, wallet, reference
materials, and so on to the test proctor, who will place them in a locker. The center
may inspect your eyeglasses for cameras. You are not allowed to take any materials into
the exam room, including blank paper. Most testing centers will provide note-taking
materials that remain in the room after the exam is completed.

Tips for Succeeding on the CompTIA Linux+


Certification Exam
Over the last decade, we have helped hundreds of candidates prepare for a variety of
certification exams. As a result, we have learned several tips to help you pass the exam.
The most important things you can do are to thoroughly study and practice. No tip,
trick, or strategy can compensate for a lack of study and practice. The goal is to move the
information into your long-term memory. Here are some study tips to help you prepare.

Preparing for the Exam


•• Set a daily study appointment. Start slow and build. Start with a half hour a day,
and work up to an hour session twice a day if possible. (Studying two hours in a
row is not productive.) Remember to keep this appointment just as you would
any other important appointment. If you miss an appointment, don’t worry; just
don’t miss the next one. Don’t study more than two one-hour sessions per day.
•• If you are studying after work, give yourself a chance to wind down. Try taking a
shower and changing clothes. Maybe take a walk or spend some time listening
to music. If you are hungry, eat light and healthy. Avoid watching video games
or television before you study.
•• Ensure that your study environment is well lit and uncluttered. Turn off the telephone.
Have everything you need to study within your study environment. Once you sit
down to study, stay there.
•• Use flashcards and mind maps. These are great study tools. For more information
on how flashcards can help, view the information found on the Mnemosyne
Project website (https://mnemosyne-proj.org/).
•• Maintain study health. Make time to get exercise and rest for best performance.
Exercise facilitates study. We are not telling you to go to a gym; try walking after
lunch and dinner. Television, video games, and cell phones interfere with study
and sleep hours long after you have turned them off.

00-FM.indd 31 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


xxxii
•• Study in manageable chunks. After you have read a section, when possible, use the
virtual machine image to validate what you studied. Make flashcards and mind
maps to help retain that section’s material, and use these tools for future study.
•• When you come to a quiz or chapter exam, don’t blow through it. Use the opportunity
to learn how to evaluate a question. Make certain you understand why the correct
answer or answers are correct and the other answers are incorrect.
•• When you do the exercises, understand what each command does and how and
where to test the results. Before you execute a command, determine what settings
or configuration files will affect the command. Using this methodology will
help you in real life and when breaking down questions. Get into the habit of
executing a command and then testing the results.

Some people recommend setting a deadline by scheduling your exam in advance.


We can’t recommend that strategy for everyone. Scheduling the test can be productive
or counterproductive. Setting a 30- or 60-day deadline may put unnecessary pressure
on you, especially if you find a chapter that is giving you problems. We have seen success
with the tortoise approach: slow and steady. If you are truly motivated to accomplish
your goal, you will. Use your motivation to keep your study appointments. When you
are ready to take the test, schedule the exam. If, however, you are the type of person who
thrives under a deadline, go ahead and schedule the exam.

Close to the Exam Date


•• Continue to use your flashcards and mind maps to review the material.
•• Familiarize yourself with what 60 seconds of time passing feels like. During the
test, the worst thing you can do is get stuck on a question. Use a timer to get
used to 60-second intervals. When taking the test, if you can’t answer a question
within 60 seconds, mark the question to return to later.
•• Practice evaluating questions. Write down key points or create a simple diagram.
•• Pretend you are teaching the material. Try to explain the material in a section.
If you can explain it, you know it.
•• Use the virtual machine image and apply the knowledge you have learned.

The Night Before Your Exam


•• Don’t study.
•• Place all the paperwork you will need for the exam in one place.
•• Get a good night’s rest.
•• Set your alarm to allow plenty of time in the morning to get ready and go to the
testing center.

00-FM.indd 32 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

Introduction
xxxiii
Taking the Exam
•• Evaluate the question. Determine what the question is asking. Break out the
question into what information is pertinent and what is fluff. Determine how
you would solve the problem. Here’s an example:
User student1 wants to copy a file in the subdirectory /public/test
to the directory /data. User student1 does not own either of the parent
directories, /public or /data, but is a member of the group that is the
group owner for all directories. The group has read and execute permissions
for all directories. What command will enable student1 to copy the file
from /public/test to /data?
To answer the question, you must be familiar with which permissions are
necessary to copy a file from one directory to another. To copy the file, you need
execute permissions on the source directory and write and execute permissions
on the target directory.
The question tells you that student1 is a member of the group that has group
ownership of all directories and the group has read and execute permissions.
What is missing? User student1 cannot write the file to the target directory,
/data, because the group that student1 belongs to only has read and
execute permissions.
What is required? The group owners need write permissions on directory /data.
Now you can look for the answer or answers that will apply write permissions
to the directory /data.
•• Visually assess the question. You can use the writing materials given to you to.
As you had practiced earlier, write down key points or create a simple diagram.
This might seem like a waste of time, but visual clues can help bring back
memory. Your brain stores and relates to data in memory based on context.
•• Read each answer carefully. Use the information from your assessment to determine
if an answer satisfies the question’s requirements. Eliminate the obviously incorrect
answers first.
•• Make your best choice and move on. From experience, we know that your first
impression is usually the correct one.
•• Don’t spend more than 60 seconds on a question. If you pass 60 seconds, mark the
question so you may return to it and move on.

NOTE Performance-based questions can take about 5 minutes to complete.


Skip these and save them for the last 30 minutes of the exam. This will give
you time to finish multiple-choice questions. Answer all questions. Don’t
leave any blank.

•• Your first answer is usually correct. If you are concerned about a question, mark it
for review and return to it later, but your first answer is usually correct.

00-FM.indd 33 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / FM

CompTIA Linux+ Certification All-in-One Exam Guide


xxxiv
After you finish the exam, your results will be automatically printed out for you. The
report will be embossed with the CompTIA-certified examiner seal by your test proctor
to certify the results. Don’t lose this report; it is the only hard copy you will have until
you receive your certification in the mail.
The report will display your performance on each section of the exam. The CompTIA
Linux+ exam is pass/fail. Based on the information available upon publication of this
book, if you score 720 or better, you pass!
If you don’t pass, you can use the information on your report to identify the areas
where you need to study. You can retake the exam immediately if you wish. However,
there are two things to keep in mind:

•• You have to pay full price for the retake exam (although you can find discount
coupons via a quick online search).
•• The retake exam probably will not be the same as your first exam.
If you don’t pass the second exam, you must wait at least 14 days before taking the
exam a third time.
If you fail with a score of 650 or higher, we suggest you study up on the items missed
and schedule your retake within a day or two. If you wait any longer than that, your
memory will probably go “cold,” and you may need to go through the entire preparation
process again.

EXAM TIP Avoid TNC failure! CompTIA provides you 28 minutes to read the
“Terms and Conditions” (TNC) for the exam. If you do not select ACCEPT
within that time period, whether you have finished reading the terms or not,
the screen defaults to “Denied Acceptance of Terms,” the exam shuts down,
and your test voucher is “burned.” No refunds. No voucher reuse. You must
spend another $358 to schedule the exam again. Therefore, be sure to read
the Candidate Agreement at the CompTIA website, before taking the exam:
https://www.comptia.org/testing/testing-policies-procedures/test-policies.

00-FM.indd 34 06/04/23 10:52 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / Chapter 1

An Introduction to Linux
and a Pre-Assessment Exam
CHAPTER

1
In this chapter, you will learn about
• A brief history of Linux
• Linux operating system structure
• Linux distributions
• Common Linux implementations

The possibilities of our returning from this mission in one piece may have just doubled.
—Nichelle Nichols as Lt. Uhura, Star Trek

A Brief History of Linux


To understand Linux and its different distributions, you need to understand what was
going on in the world of computing before Linus Torvalds began developing the Linux
kernel. The 1950s saw the evolution of computers from single-user, single-task systems
to batch processing systems.
The discussion starts from the mid-20th century and continues until the development
of Linux, as follows:

• Batch processing
• MULTICS
• UNIX
• LINUX

Let’s start with programming in the mid-1950s.

Batch Processing
Batch processing is the sequential execution of programs. A programmer would submit a
program on punch cards or paper tape to a system operator. The system operator would
later “run” the job and give the results back to the programmer.

01-ch01.indd 1 06/04/23 10:53 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / Chapter 1

CompTIA Linux+ Certification All-in-One Exam Guide


2
Unfortunately, a programming error, typing error, damaged card (or tape), or card out
of sequence would cause the program to fail. The programmer would have to repair the
difficulty and resubmit the job.

ARPA/DARPA
On October 4, 1957, the Soviet Union launched Sputnik. The launch had many people
wondering if the United States was falling behind technically. At that time, the U.S.
Army, Navy, and Air Force had their own defense development projects. The rivalries
between the services were unproductive and wasteful.
President Eisenhower asked members of his Science Advisory Committee to meet
with newly appointed Secretary of Defense Neil McElroy to find a solution to the prob-
lem. The scientists’ solution was to have a single civilian agency to control research and
development and report to the Secretary of Defense.
Six months after the establishment of the Advanced Research Projects Agency (ARPA),
NASA was created to separate civilian and military space travel. In 1972, ARPA’s name
was changed to DARPA (the Defense Advanced Research Projects Agency).

Compatible Time-Sharing System


Batch processing could not keep up with the increasing demand for computer resources.
Massachusetts Institute of Technology (MIT) was one of several colleges that began to
develop time-sharing systems, which allow multiple users to access system resources con-
currently through remote terminals.
MIT developed an experimental time-sharing system, called Compatible Time
Sharing System (CTSS), and produced the following applications that were later used
in UNIX:

• RUNOFF A text formatting and printing utility that was the predecessor of
roff, groff, nroff, and troff.
• RUNCOM (run commands) One of the first applications for running scripts.
The rc directories in Linux’s /etc/init.d directory are named after RUNCOM
scripts.

MULTICS
In 1964, MIT, General Electric, and Bell Labs began development of the Multiplexed
Information and Computing Service (MULTICS) operating system funded by DARPA.
The goals for MULTICS were as follows:

• Remote terminal use


• Continuous operation
• A high reliability internal filesystem
• Support for a wide range of applications executing concurrently
• A system that can evolve with changes in technology and user requirements

01-ch01.indd 2 06/04/23 10:53 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / Chapter 1

Chapter 1: An Introduction to Linux and a Pre-Assessment Exam


3
Honeywell and MIT completed MULTICS and launched the first commercial version
in October 1969. MULTICS remained a viable operating system for 25 years.

UNIX
Computer scientists Ken Thompson and Dennis Ritchie of Bell Labs worked on the
MULTICS project. After Bell Labs withdrew, Ken Thompson decided he would develop
his own operating system based on MULTICS operating principles. The initial version
was released in 1970 and was called UNICS, for Uniplexed Information and Computing.

NOTE The UNIX development team consisted of Ken Thompson, Dennis


Ritchie, Doug McIlroy, and Joe Ossanna.

The first two versions of UNICS were written in assembly language for a specific
processor family. Applications written in assembly language for one processor family
had to be rewritten for another processor family.
Dennis Ritchie developed the programing language C. Compiled languages convert
source code to assembly language, which mitigated the need to rewrite the operat-
ing system for each new processor family. In 1973, UNICS was rewritten in C and
renamed UNIX.
In 1974, AT&T held a monopoly on the U.S. telephone systems. As part of an agree-
ment with the federal government, the company could keep its monopoly but was not
allowed to sell software. Since it could not sell UNIX, AT&T licensed UNIX to educa-
tional institutions for a small distribution charge. This allowed colleges and universities
to obtain the operating system and use it for teaching and development.
In 1982, AT&T was broken up into smaller phone companies, which permitted
AT&T to sell software. Thus, UNIX was no longer “free” to educational institutions.

MINIX
When Andrew Tanenbaum heard AT&T UNIX Version 7 would no longer be made
available for educational institutions, he began to work on MINIX, a microkernel-based,
UNIX Version 7–compatible operating system. Initially, the operating system kept crash-
ing, and Tanenbaum was about to terminate the project until one of his students informed
him the crash was due to the Intel chip overheating, generating a thermal interrupt.
Tanenbaum fixed the problem, and MINIX was released freely to universities in 1987.
Unfortunately, MINIX was copyrighted; therefore, no one was allowed to modify the source
code. In 2000, MINIX licensing was changed to a permissive license called the Berkeley
Software Distribution (BSD). Permissive licensing allows users to modify the source code
but does not require modified source code to be made available.
The current version is MINIX 3 and is designed to be used in embedded systems.
An embedded system contains an operating system and control program that is used to
manage a specific device such as a FAX machine or digital camera.

01-ch01.indd 3 06/04/23 10:53 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / Chapter 1

CompTIA Linux+ Certification All-in-One Exam Guide


4
GNU
On September 27, 1983, Richard Stallman announced the GNU project (GNU stands
for GNU is Not UNIX). GNU was to be a free UNIX-like operating system that could
be shared, studied, and modified by anyone. At that time, a free (as in cost) and open
source version of UNIX did not exist. AT&T no longer provided free versions of UNIX
to learning institutions, and Andrew Tanenbaum’s MINIX was copyrighted.
In 1985, Stallman founded the Free Software Foundation and, with attorney David
Wheeler, created the General Public License (GPL). GPL is also referred to as copyleft.
The GPL license dictates that any software or work of art may be modified and dis-
tributed freely as long as the modified versions are also distributed without restrictions
or cost.
Since no free UNIX kernel existed, the GNU project had to develop one.

Linux
Linus Torvalds entered the University of Helsinki in 1988. At that time, most universities
used MINIX to teach UNIX to their students. Torvalds did not like the MINIX terminal
emulator and decided to write a better one. As he added functionality to his emulator, he
concluded it would be better to create an operating system from scratch.
On September 17, 1991, Torvalds released a development environment called Freax
(Free UNIX) under a GPL license. Freax used many of the tools and utilities created by
Richard Stallman’s GNU project. One of the major design differences was that Torvalds
decided to use a monolithic kernel rather than a microkernel. Six months later, the name
of the operating system was changed to Linux. Linus then posted the source code and
invited other programmers to review, modify, and contribute enhancements. This was
the original Linux operating system.
Linus Torvalds holds a registered trademark for the Linux operating system and
controls Linux kernel development. When most people talk about Linux, they’re usually
talking about an operating system with a Linux kernel.

Linux Operating System Structure


An operating system provides a means for users to execute programs on a computer. The
Linux operating system consists of multiple functional layers (layered architecture), as
detailed in the following list:

• Hardware layer Responsible for interacting with system hardware.


• Kernel The kernel layer is the core of the operating system. It provides the
system with process, memory, and task management.
• Shell Application and user environment and interface.
• Operating system software Used to manage the operating system.
• Application software Editors and other user applications.

01-ch01.indd 4 06/04/23 10:53 AM


All-In-One / CompTIA Linux+™ Certification All-in-One Exam Guide, 2 Ed. / Jordan / 896-2 / Chapter 1

Chapter 1: An Introduction to Linux and a Pre-Assessment Exam


5
In this section you will learn the following details about the Linux operating system
structure:

• Kernel
• Operating system software
• Application software
Let’s first explore the Linux kernel.

Kernel
The kernel layer is the core of the operating system. Most Linux distributions use a
monolithic kernel. Some (GNU) use a microkernel. The kernel also connects applica-
tions to system hardware. The kernel is divided into the following components:

• System Call Interface (SCI) Provides a connection between user space and
kernel space
• Process management Responsible for creating, stopping, and communicating
with system processes
• Memory management Responsible for memory allocation, virtual memory,
and paging
• Virtual filesystem Provides an abstraction layer for multiple filesystem types
• Network stack Provides protocols used in network communications
• Device drivers Software used to communicate with hardware
• Architecture-dependent code System code specific to the type of processor
To understand the difference between a monolithic kernel and a microkernel, you
must understand the terms user space and kernel space. Kernel processes execute in
memory reserved for kernel processes (kernel space). User processes execute in memory
reserved for user applications (user space). Separating user and kernel space protects
kernel processes.

Monolithic Kernel
A monolithic kernel executes in kernel space. Monolithic kernels are made up of modules
that perform specific functions. These modules may be dynamically loaded or unloaded.

Microkernel
A microkernel uses a small kernel executing in kernel space to manage memory, multitask-
ing, and interprocess communication. Most other kernel functions are built in to “servers”
that execute in user space.

01-ch01.indd 5 06/04/23 10:53 AM


Another random document with
no related content on Scribd:
Paavi nousi äkkiä äkkiä istuimeltaan ja hänen kasvonsa kävivät
synkän ja huolestuneen näköisiksi.

»Davido Rossi», sanoi hän hätäisesti.

Roma alkoi vavista. »Niin», änkytti hän.

»Davido Rossi, kapinallinen?»

»Ei, ei teidän pyhyytenne, sitä hän ei ole.»

»Mutta lapseni, lapseni, hän on perustanut kapinallisen,


yhdistyksen, jonka pyhä isä juuri tänä päivänä on julistanut
vääräksi.»

Paavi astui huoneen poikki, ja Roma nousi seisomaan ia katsoi


häneen.

»Hän vehkeilee kirkkoa vastaan — kirkkoa ja sen ylintä päätä


vastaan.»

»Ei, ei, teidän pyhyytenne. Hän on uskonnollinen ja paljon


enemmän hallituksen ja kuninkaan vihollinen.»

»Pyhä isä», sanoi hän, »kerronko teille salaisuuden. Ei ole ketään


muuta maailmassa, jolle voisin sen kertoa, mutta teille voin sen
sanoa. Mieheni on nyt Englannissa järjestämässä suurta liikettä
italialaisten maanpakolaisten keskuudessa. En tiedä mitä se
oikeastaan on, mutta hän kertoi minulle, että siitä on seurauksena
koko valtakunnan valloitus ja hallituksen kukistuminen. Hän ei ole
sanonut, onko se tavallinen salaliitto vai muu suunnitelma, mutta
minä tiedän, että se on tähdätty Rooman politiikkaa vastaan eikä
uskontoa vastaan, ja sen tarkoituksena on kuninkaan, mutta ei
paavin, kukistaminen.»

Paavi joka oli seisonut selin Romaan, kääntyi ympäri ja katsoi


häneen kauhuissaan. Hänen silmäkulmansa olivat rypyssä ja hänen
kasvonsa muistuttivat vielä entistä enemmän eräitä toisia kasvoja,
jotka saattoivat Roman yhä hermostuneemmaksi.

»'Kun tulen takaisin, on mukanani sellainen voima, joka panee


vankilat avaamaan ovensa ja tyrannien valtaistuimet vapisemaan.'
Niin hän sanoi, teidän pyhyytenne. Tuo liike alkaa kohta, olen varma
siitä, ja silloin teidän pyhyytenne saa nähdä, että kansan johtajat
eivät ole uskonnottomia miehiä, vaan…»

Paavi kohotti kätensä. »Vaiti!» huusi hän. »Älkää jatkako, lapsi.


Jumala tiesi mitä minun tulee tehdä sille, mitä jo olette sanonut.»

Silloin Roma huomasi, mitä hän oli tehnyt hurjassa


liikutuksessaan, ja kauhistuen hän koetti peruuttaa sanojaan.

»Pyhä isä, älkää päätelkö siitä, mitä sanoin, että Davido Rossi on
kapinallinen ja kuninkaansurmaaja…»

»Älkää puhuko, lapseni. Te ette aavista, millaisen maanjäristyksen


te olette saanut aikaan jalkojeni alla. Minun täytyy ajatella. Minun
täytyy saada selville velvollisuuteni Jumalaa ja ihmisiä kohtaan.»

Syntyi hetken äänettömyys, ja sitten Roma koetti tyyntyä ja lausui:


»Minä olen vain tietämätön nainen, pyhä isä, ja ehkä olen sanonut
liian paljon enkä ymmärrä mitä olen tehnyt. Mutta se, minkä olen
kertonut, sanottiin minulle rakkaudessa ja luottamuksessa. Ja pyhä
isä on viisas ja hyvä, ja mitä hän tekee, on oikein.»
Paavi palasi tuolilleen huolestuneen näköisenä eikä näyttänyt
kuuntelevan. Roma vaipui polvilleen hänen viereensä ja sanoi
matalalla, rukoilevalla äänellä:

»Mieheni luottamus minuun on niin kaunis, teidän pyhyytenne


Minä olen ainoa henkilö maailmassa, jolle hän on kertonut kaikki
salaisuutensa, ja jos hän saisi kuulla hiukankaan niistä muualta…»

»Älkää pelätkö, tyttäreni. Sen, minkä uskoitte minulle, pidän yhtä


pyhänä kuin rippisalaisuuden. Mutta te olette kertonut minulle
kamalan kertomuksen, ja taivaan isä yksin tietää, mitä hänen
palvelijansa pitäisi tehdä.»

Roma katsoi huolestuneisiin vanhoihin kasvoihin, jotka äsken


olivat olleet niin päivänpaisteiset, ja hän ymmärsi kuinka ääretön
vastuunalaisuus lepää tiaraa kantavan miehen hartioilla. Sitten hän
taas muisti, mitä kapusiinilaismunkki oli hänelle sanonut, ja hän
sanoi samalla matalalla, rukoilevalla äänellä:

»Jos voisin kertoa teidän pyhyydellenne lisää hänestä — kuka hän


on ja mistä hän on kotoisin — köyhästä, vaatimattomasta paikasta,
teidän pyhyytenne… jos saisin sanoa, kuinka hän on kärsinyt ja mikä
kamala varjo vieläkin himmentää hänen elämäänsä, niin isällinen
sydämenne rakastaisi ja säälisi häntä.»

»Älkää kertoko minulle enempää, lapseni. On parempi etten tiedä.


Sääli ei saa puhua siinä, missä velvollisuus minua käskee. Mutta
minä voin rakastaa Davido Rossia siitä huolimatta. Ja minä rakastan
häntä. Rakastan häntä kuin kadotettua poikaa, joka on kohottanut
kätensä isäänsä vastaan, vaikka hän ei itse sitä tiedä.»
Roma aikoi taas puhua ja selvemmin kuin äsken, kun äkillinen
epäilys hänet valtasi. Olihan Leone sangen tavallinen sukunimi, eikä
Italiassa ollut tavallista antaa pojalle isän ristimänimeä. Se, mikä
hänestä oli tuntunut varmalta, saattoikin olla vain sattuma.

Paavin tuolissa oli soittokellon nappi. Paavi painoi sitä, ja


monsignor astui huoneeseen koputtamatta. Paavi nousi ja tarttui
Roman käteen.

»Menkää rauhassa ja ottakaa siunaukseni, lapseni. Minä siunaan


teitä! Isällinen siunaukseni varjelkoon sydäntänne pysymään
puhtaana ja vahvistakoon teitä kaikissa kiusauksissa, lohduttakoon
koettelemuksissa, pelastakoon pahasta ja johtakoon teidät vihdoin
Kristuksen lasten joukkoon.»

Monsignor astui eteenpäin ja viittasi Romalle, että hänen tuli


poistua. Roma nousi ja läksi huoneesta astuen ovelle, liian
liikutettuna voidakseen puhua. Hän ei huomannut ennenkuin ovi
sulkeutui, että hän kulki valtaistuinsalin poikki ja että pappi kulki
hänen vieressään.
V.

Kun paavi käveli puutarhassaan samana iltapäivänä kuten tavallista,


oli vanha kapusiinilainen hänen kanssaan. Vatikaanin ovelta he
ajoivat paavin vaunuissa, kaksi ylimyskaartin jäsentä ratsastaen
molemmilla puolilla ja yksi kamariherra vaunujen jäljessä,
laakerikäytävän läpi, kunnes he saapuivat kukkulalla olevalle
huvimajalle. Siellä molemmat vanhat miehet astuivat vaunuista,
paavi valkoisessa viitassaan, valkoisessa päällystakissaan ja
päässään punainen hattu, ja kapusiinilainen ruskeassa puvussaan,
päässä patalakki ja jalassa sandaalit. Paavin kissa, punertavan
ruskea eläin, joka seurasi häntä puutarhassa kuin koira isäntäänsä,
hyppäsi samalla pois vaunuista.

Huvilan pyöreän tornin edessä on korkea, oranssi- ja


magnoliapuiden suojaama terassi, jossa on ympyrään asetettuja
puutarha-istuimia. Kunnianarvoisat vanhat miehet istuutuivat sinne,
ja kissa asettui hiekkakäytävälle heidän eteensä. He olivat niin
korkealla nyt, että Pietarin kirkon korkea kupooli tuntui melkein
olevan samalla tasolla kuin heidän kasvonsa, ja Rooma näytti
ylhäälle ilmapalloon häämöttävältä kaupungilta. Tuolla takana levisi
laaja Campagna vihreänä kuin kesäinen meri. Vielä kauempana
siintivät ja punersivat Albano-vuoret, siellä täällä näkyi pieniä
valkoisia kaupunkeja pitkin rinteitä. Ja kaikkein kauimpana hohtivat
purppuran väristen haamujen tavoin juhlallisten Apenninien
lumipeitteiset kukkulat.

Paavi oli tavallista totisempi ja äänettömämpi. Pari kertaa


kapusiinilainen virkkoi: »Ja mitä piditte nuoresta tämänaamuisesta
ripitettävästäni?

»Bene, bene!» vastasi paavi.

Mutta vihdoin paavi vedellen viivoja hiekkaan kävelykepillään


rupesi puhumaan.

»Isä!»

»Teidän pyhyytenne!»

»Jumalan käsittämätön säädös, joka teki minusta paavin, ei


muuttanut meidän suhdettamme toisiimme ihmisinä, eikö niin?»

Kapusiinilainen otti nuuskaa ja vastasi: »Teidän pyhyytenne


ystävällisyydessään on vakuuttanut niin.»

»Te olette mestarini nyt aivan kuin kolmekymmentä vuotta sitten,


ja tahtoisin kysyä teiltä erästä asiaa.»

»Mikä se on, teidän pyhyytenne?»

»Olettehan ollut rippi-isäni monta vuotta, isä?» »Neljäkymmentä


vuotta, teidän pyhyytenne.» »Sillä ajalla teillä on ollut monta vaikeata
asiaa selvitettävänä?»

»Hyvin monta.»
»Isä, onko koskaan tapahtunut, että ripitettävä on tunnustanut
teille salaliiton, jonka tarkoituksena on rikos?»

»Se on monesti tapahtunut.»

»Ja mitä olette tehnyt?»

»Pyytänyt häntä ilmoittamaan siitä viranomaisille tai kertomaan


siitä minulle rippituolin ulkopuolella.»

»Onko ripitettävä koskaan kieltäytynyt täyttämästä sitä.»

»Ei koskaan.»

»Mutta jos… jos tapaus olisi sitä laatua, että ripitettävän olisi
vaikea ilmaista sitä viranomaisille, koska hänen täytyisi ottaa
huomioon mikä rangaistus sitä seuraa… jos veren ja rakkauden
siteet saattaisivat tuollaisen tunnustuksen mahdottomaksi ja jos olisi
suorastaan julmaa pyytääkään ripitettävältä semmoista, mitä silloin
tekisitte?»

»En mitään, teidän pyhyytenne.»

»Ette sittenkään, vaikka aiottu rikos olisi hyvin vakavaa laatua ja


koskisi teitä hyvin läheltä?»

Kapusiinilainen levitti kirjavan nenäliinansa sanoen: »Se ei


muuttaisi asiaa, teidän pyhyytenne.»

»Mutta otaksukaapa, että kuulette rippituolissa, että veljenne


aiotaan surmata, mikä silloin on velvollisuutenne?»

»Velvollisuuteni ripitettävää kohtaan, joka uskoo minulle sielunsa


salaisuudet, on vaitiolo.»
»Ja mikä on velvollisuutenne Jumalaa kohtaan?»

Nenäliina putosi kapusiinilaisen kädestä.

»Eikö rippiä voi käyttää väärin?» sanoi paavi.

»Epäilemättä.»

»Jos esimerkiksi ripille menijä puhuu jotakin vetääkseen papin


liittoon, jonka tarkoituksena on rikos?»

»Siinä tapauksessa sitä ei tietysti ole pidettävä rippinä.»

»Mutta eikö ripillemenijä myöskin voi tietämättään käyttää väärin


rippiä, kun hän puhuu varmassa uskossa, mutta samalla ilmaisee
papille aiotun rikoksen ja siitä syystä saattaa hänet rikostoverin
asemaan?»

»Eiköhän, teidän pyhyytenne.»

»Silloin ripillemenijä, joka ilmaisee salaliiton veljenne


surmaamiseksi, käyttää väärin rippiä, ja teidän velvollisuutenne
Jumalaa kohtaan on veljenne hengen pelastaminen.»

»Niin muutamat jumaluusoppineet väittävät. Ja niin on joskus


meneteltykin. Minä en pidä siitä, vaikka en voi osoittaa sitä
vääräksi.»

»Jos tuo on meidän velvollisuutemme, kun on kysymys


veljestämme, on se tietysti myöskin velvollisuutemme, kun on
kysymys vihollisestamme.»

»Tietysti, teidän pyhyytenne.»


Paavi vaikeni, piirsi hiekkaan kepillään ja sanoi:

»Isä, minulle on tunnustettu liitto viholliseni henkeä vastaan.»

Kapusiinilainen työnsi nenäliinaa hihaansa ja nojautui istuimeensa.


Hetken kuluttua paavi kertoi hänelle, mitä Roma oli sanonut Rossin
toimista ulkomailla.

»Salaliitto», sanoi hän, »selvä salaliitto.»

»Minkälaatuiseksi arvelette tuota salaliittoa?»

»Kuka sen tietää? Ehkä se on sen keskiaikaisen tavan


uudistamista, että maanpakoon ajetut kansalaiset koettavat valloittaa
takaisin maan kiihoittamalla kotimaan puolueita.»

»Luuletteko sitä Rossin tarkoitukseksi?»

»Luulen.»

»Kapusiinilainen työnsi levottomana patalakkiaan ja sanoi:

»Pyhä isä, toivoisin että jättäisitte tuon asian sikseen.»

»Kuinka niin?»

»Lukiessamme historiaa huomaamme, että tuollaiset yritykset


tavallisesti ovat epäonnistuneet. Jos niin kävi keskiajalla, jolloin
sodankäynti oli kovin yksinkertaista, niin onhan luultavaa, että
tuollaiset salaisten seurain kapinat ja maanpakolaisten
pintapuolisesti järjestetyt hyökkäykset eivät voi olla vaarallisia näinä
vakinaisten armeijain päivinä.»
»Se on totta. Mutta onko tuo kyllin pätevä syy olla toimimatta
mihinkään suuntaan tässä asiassa? Heikommillakin kapinoilla
entisaikoina on ollut se seuraus, että ne ovat lujittaneet despotismia
ja heikentäneet kansan asemaa kotimaassa. Ja se tulee olemaan
Rossinkin kapinan seurauksena meidän päivinämme. Hän ei valloita
maata, vaan kiihoittaa hallitusta, ehkäisee sivistystä, vuodattaa
viatonta verta ja pahentaa köyhien taloudellista asemaa.»

»Mutta ajatelkaa, pyhä isä. Te ette voi paljastaa niitä salaisuuksia,


jotka tuo tyttöparka on ilmoittanut. Hänen tunnustuksensa tosin ei
ollut rippi, vaan luottamuksen osoitus, mutta teidän pyhyytenne
tietää, että siveellisen jumaluusopin mukaan on olemassa n.s.
luonnollisia salaisuuksia, joiden ilmaiseminen olisi paha rikos.
Sellaiset asiat kuin tämä kuuluvat tuohon luokkaan. Ne ovat
salaisuuksia, ja niitä on pidettävä pyhinä.»

»Niin on.»

»Ei siis ole mahdollista, että teidän pyhyytenne voisi kertoa tänä
aamuna kuulemaansa tuottamatta ikävyyksiä niiden kertojalle ja
vaikeuttamatta hänen suhdettaan mieheensä.»

»Taivas minua varjelkoon sellaista tekemästä, tapahtuipa mitä


tahansa. Mutta eikö papin ole lupa puhua salaisuutena kuullusta
synnistä, jos hän voi tehdä sen siten, että tunnustajaa ei saada
selville?»

»Aikooko teidän pyhyytenne tehdä siten?»

»Miksikä ei? Eikö pyhä Alphonsus myönnä sitä, ja eivätkö melkein


kaikki jumaluusoppineet neuvo niin tekemään?»
»Pyhä isä on itse jumaluusoppinut ja tietää tuon asian parhaiten.
Omasta puolestani, teidän pyhyytenne, pidän aina vaarallisena
kokeilla sielun salaisuuksilla, olkoonpa tarkoitus hyvän edistäminen
tai pahan estäminen.»

Kapusiinilainen katsoi sinne päin, missä hevoset kaapivat maata ja


ylimyskaartin upseerit seisoivat vaunujen vieressä.

»Kolmekymmentäviisi vuotta sitten meille annettiin kamala opetus


sellaisista vaaroista, teidän pyhyytenne.»

Paavi kumartui ja piirteli yhä hiekkaan.

»Teidän pyhyytenne, muistakaa sitä nuorta naisraukkaa, joka


kertoi rippi-isälleen aikovansa mennä naimisiin rikkaan nuoren
miehen kanssa. Rippi isä piti velvollisuutenaan kertoa yleisin sanoin
nuoren miehen isälle, että sellainen avioliitto oli tekeillä. Mikä oli
seuraus? Avioliitto solmittiin salassa ja päättyi tuskaan ja
kuolemaan.»

Paavi nousi levottomana. »Emme puhu nyt siitä. Se koski isän


ylpeyttä ja rauenneita toiveita. Tämä on aivan toinen asia. Mies, joka
on pirullisten mielikuvien orja, kirkon ja yhteiskunnallisen järjestyksen
vihollinen, hautoo yritystä, joka ei voi loppua muuten kuin
onnettomuuteen ja verenvuodatukseen. Pyhä isä tietää sen. Pitääkö
hänen sulkea tuo rikoksellinen tieto poveensa? Taivas varjelkoon!»

»Te aiotte siis varoittaa viranomaisia?»

»Minun täytyy. Se on velvollisuuteni. Kuinka voisin laskea pääni


levolle, ellen sitä tee? Mutta minä olen tekevä sen varovasti. En ole
ilmaiseva ketään, ja tuo tyttöraukka on pysyvä tuntemattomana.»
Kapusiinilainen nousi. »Hänen pyhyytensä voi toimia ainoastaan
mitä jaloimmista vaikuttimista, ja taivas suokoon hänen toimiensa
päättyvän hyvin. Mutta 'epikeian' käyttäminen, kun on kysymys
sielun salaisuuksista, on kuin syöksyminen pimeän, ammottavan
jyrkänteen yli. Me tiedämme, mistä askeleemme alkavat, mutta
Jumala yksin tietää, missä ne loppuvat.»

Kunnianarvoisat vanhat miehet astuivat nojautuen keppiinsä pitkin


sypressien varjostamaa, kukkien reunustamaa tietä. Äkkiä kuului
pensaikosta siipien suhinaa ja linnun kirkumista, ja samassa paavin
kissa hypähti keskellä pensaikkoa olevalle marmoripatsaalle. Siellä
oli ennen ollut suihkulähde, mutta vesi oli kuivunut, ja aukko, josta
vesi ennen oli vuotanut, oli sammalten peittämä, ja sinne oli lintu
pesinyt. Kissa oli juuri alkamaisillaan vetää esiin munia sieltä, kun
paavi pääsi apuun.

»Voi Mirri, Mirri», huudahti hän, »millainen anarkisti sinä olet!…


Monsignor!»

»Teidän pyhyytenne», vastasi kamariherra tullen paavin luo.

»Ottakaa tämä gatto rosso vaunuihin ja pitäkää häntä _domicilio


coatto'_ssa kunnes tulemme sinne.»

Monsignor nauroi ja kantoi pois kissan, ja paavi laski kätensä


hellästi linnun pienille kirjaville munille.

»Raukat, kuinka lämpimiä ne ovat. Kuunnelkaa! Äiti valittaa tuolla


puussa. Kas! Se katsoo tänne ja odottaa, että menisimme. Kuinka
hyvin se luulee säilyttäneensä salaisuutensa!»
Kapusiinilainen hengitti syvään. »Niin, luonto on opettanut saman
pelonhuudon kaikille lapsilleen.»

»Se on totta», sanoi paavi.

»Se tuo mieleeni tämänaamuisen tyttöraukan.»

Paavi astui takaisin vaunuihinsa sanaakaan sanomatta. Kun hän


palasi Vatikaaniin, soitettiin Angelusta kaikissa Rooman kirkoissa,
kaupunki hohti punertavassa valossa auringon laskiessa Monte
Marion taakse, ja pinjat sen kukkulalla kuvastuivat punaista taivasta
vasten kuin murtuneen temppelin katottomat pylväät.
VI.

Bruno haudattiin seuraavana päivänä. Vapaamuurarit olivat anoneet


lupaa saada toimittaa hautauksen, ja vaunut, joille kirstu oli asetettu,
oli koristettu vapaamuurarien merkillä sillä kohtaa, missä muutoin
tavallisesti on risti. Oli palmusunnuntai, ja ruumissaattoon yhtyi
hautausmaan portilla joukko, joka astui San Lorenzon kirkosta
kantaen palmuja ja puksipuun oksia.

Haudalla pidettiin puheita, joissa poliisin ja viranomaisten tekoja


moitittiin. Suuri rikos oli tehty, ja kansa vastasi siihen asettumalla
hallitusta vastaan. »Bruno Roccon veri», niin sanoi puhuja, »on
vuotanut kuin virkistävä sade kuivuneeseen maahan, ja sankarihenki
on kasvava siitä herättämään Rooman omantunnon». Siviilipukuisia
poliiseja oli saattojoukossa kuunnellen tarkkaan jokaista sanaa.

Roma ei ollut siellä. Poistaakseen kiusallisia ajatuksia hän


valmisteli veistokuvaansa, vaikka olikin sunnuntai. Kello yhdeksän
aikaan vanha Francesca tuli tuomaan hänelle kirjettä. Trinità dei
Montin portinvartia oli tuonut sen ja odotti alhaalla jotakin lahjaa.
Äkillisen ilon huumaamana Roma sieppasi kirjeen ja tyhjensi
kukkaronsa vanhan vaimon käteen.
»Santo Dio!» huusi Francesca, »onko tämä kaikki kirjeestä?»

»Niin on, äiti», sanoi Roma. »Anna rahat sille hyvälle miehelle,
joka sen toi.»

»Onko se herra Rossilta? Onko? Sitä minä arvelinkin. Teidän


tarvitsee vain sanoa kolme kertaa Ave Maria aamulla, kun heräätte,
niin saatte kaikki mitä haluatte. Minä tiesin, että signora kaipasi
kirjettä…»

»Niin, niin, mutta mies odottaa tuolla alhaalla, ja minunkin täytyy


jatkaa työtäni ja…»

»Työtä! Ah, signorina, paratiisissa ei tuhlata aikaa työhön.


Semmoisella hienolla neidillä kuin te tulee olemaan harput ja
taivaalliset…»

»Mutta mies ei odota, hyvä eukko», sanoi Roma ja työnsi kuuron


vaimon pois huoneesta.

Mutta yksin jäätyäänkään hän ei ensin uskaltanut avata kirjettä.


Hän vapisi koskettaessaan sitä ja katsellessaan postimerkkejä. Ne
olivat ranskalaisia ja niissä oli Pariisin postileima. Tuo tuotti hänelle
hiukan epämääräistä iloa. Rossi oli ollut matkoilla eikä ollut ehkä
saanutkaan hänen kirjettään.

Vavisten suudellen kirjekuorta ja rukoillen lyhyen rukouksen Roma


avasi sen vihdoin, ja kun kirje kahisten putosi kuoresta, vilkaisi hän
loppusanoja:

»Sinun uskollinen miehesi.»


Hän hengitti syvään, ja värähdys kävi läpi hänen ruumiinsa. Sitten
hän luki:

»Rakkaani! — Pariisin lehdissä tänä aamuna julaistu Roomasta


saapunut sähkösanoma kertoo Brunon tutkimisesta ja kuolemasta.
Jos sanon, että olen kauhistunut, en sano paljoa. Olen järkytetty
perustuksia myöten. Sydämeni on murtumaisillaan, ja käteni voi
tuskin pitää kiinni kynästä.

Sain kuulla tuon uutisen jo eilisiltana, kun istuin eräässä


ravintolassa muutamien sanomalehtimiesten kanssa. Me olimme
juuri päivällisellä, mutta minun täytyi nousta pois ja palata
asuntooni. Olin melkein sekaisin koko yön. Yhtämittaa heräsin
unestani luullen kuulevani Brunon äänen, joka kutsui minua. Kerran
nousin ikkunan luo ja katsoin tyhjälle kadulle. Ja kumminkin tiesin
koko ajan, että ystäväraukkani makasi kuolleena vankilassa.

Oi Jumala, eikö maailmassa ole mitään rangaistusta noille


ihmisille, jotka iskevät itse oikeuden perustuksiin? He puhuvat
anarkiasta — tämä vasta on oikeuden anarkiaa. Olin
valmistautunut odottamaan paljoa sen jälkeen mitä kerroit minulle,
mutta Brunon kiduttaminen olisi tuntunut melkein mahdottomalta,
ellen tietäisi, että jokaisessa maassa vielä on voimassa tuo
vankilain hirmuvalta, joka asettaa poliisit kansan herroiksi eikä
heidän palvelijoikseen.

Bruno-raukka! En hyväksy itsemurhaa missään tapauksessa.


Ihmisen elämä ei ole hänen omansa. Kukin meistä on soturi, eikä
ainoakaan vahti saa surmata itseään työssään. Ken tietää minkä
käänteen taistelu vielä saa? Velvollisuutemme kenraaliamme
kohtaan on taistella loppuun asti. Mutta kun vahti mieluummin
kuolee kuin lausuu väärän tunnussanan, silloin itsemurha on uhri,
kuolema on voitto, ja Jumala ottaa marttyyrinsa armonsa siipien
suojaan.

Miesraukka kuoli siinä uskossa, että minä olin hänet pettänyt!


Minä olin tuntenut hänet kahdeksan vuotta, ja sinä aikana hän oli
uskollinen minulle kuin oma varjoni. Hän oli uljain, kunnollisin
ystävä, mitä saattoi toivoa. Ja nyt hän on jättänyt minut luullen
minun lopuksi pettäneen hänet. Oi veljeni, tietänetköhän nyt
totuuden? Eikö siinä maailmassa, jonne nyt olet mennyt, mikään
taivaallinen ääni sitä kerro sinulle? Eikö kuolema paljasta kaikkea?
Etkö voi katsella tänne alas ja nähdä kaikkea ja repiä pois sitä
harsoa, joka peitti katseesi täällä alhaalla? Ainoastaan hänkö, joka
jäi maan päälle, tietää, että hän oli uskollinen sinun rakkaudellesi.
Taivas varjelkoon! Niin ei voi olla.

Rakkaani, tulin Pariisiin äkkiarvaamatta kymmenen päivää


sitten…»

Roma kohotti kyyneleiset silmänsä. »Hän ei siis ole saanut


kirjettäni», ajatteli hän.

»Minut kutsuttiin tänne ei ainoastaan kokoamaan italialaisia uutta


ristiretkeämme varten, vaan myöskin järjestämään yhteiseen
ryhmään eri ranskalaisia yhdistyksiä, joilla on sama tarkoitusperä
— marksisteja, possibilisteja, boulangisteja, guesdistejä ja
keskivallankumouksellisia, joilla on jos jonkinlaiset eri tavat ajaa
asioitaan. Olin jo melkein epätoivoinen enkä uskonut, että noita eri
ryhmiä voisi yhdistää, kun uutinen Brunon kuolemasta tuli kuin
sotatorven toitotus, jonka edessä Jerikon muurit alkoivat murtua.
Jokainen tuntee, että toiminnan hetki on tullut, ja se, mistä minä
luulin tulevan italialaisen liikkeen, näyttää muodostuvan
kansainväliseksi liikkeeksi. Ääretön oikeudentunnon purkaus
murtaa kaikki rotu- ja kansallisuusmuurit.

Jumala johtakoon meitä nyt. Mitä sanoi mestarimme?


'Kapinoitsijan miekka ei ole koskaan niin terävä kuin marttyyrin
hautakivellä hiottuna.' Oma vereni joutuu kuohuksiin, kun ajattelen,
mikä saattaa olla seurauksena kaikista noista hirmuvaltaisuuksista.
Tietysti hallitsevat luokat siellä kotona pesevät kätensä eivätkä
syytä itseään tuosta tapahtumasta. Kun joku ministeri tahtoo
näytellä Macbethin osaa, niin hänellä on aivan riittävästi
tallirenkejä, joiden päälle hän voi ruiskuttaa Duncanin veren. Mutta
kansa ei tiedä sellaisista hiuksenhienoista erotuksista. Minä en
maksa paljoa kuninkaan hengestä, kun kansan omatunto on tullut
tuntemaan hänen rikoksensa. Eihän hän sitä tehnyt, sanotaan. Ei,
hän ei tee mitään, mutta hän on vastuunalainen kaikesta. Anarkistit
eivät ole keksineet kuninkaanmurhaa. Kansa on kaikkina aikoina
käyttänyt sitä aseenaan, kun sen oikeudentuntoa on haavoitettu. Ja
muutamien tuollaisen aseen käyttäjien nimet ovat kirjoitetut
kultakirjaimilla marmoritauluihin.»

Roma alkoi vavista. Oliko paavi ollut oikeassa kumminkin?


Miettikö
Rossi vallankumousta ja kuninkaanmurhaa?

»Oi oma armaani, sydäntäni pakottaa, kun ajattelen, mitä tuhoa


rakas isänmaamme ehkä saa kärsiä näiden tapausten tähden.
Kirkon pitäisi olla kansan puolustusmuurini sortajia vastaan, mutta
meillä ei ole mitään toivoa siinä suhteessa enää. Mitä Jumalan
nimessä kirkko toimii nyt tässä yhteiskunnan kuohumistilassa, joka
on suurempi kuin ikinä ennen? Se laulaa virsiä ja Miserereä
tuomiokirkoissa, hoitaa sakramentteja ja pukee pappinsa
kultakaapuihin, kun suurin osa maailmaa on kuolemaisillaan
henkiseen ja ruumiilliseen nälkään! Vähätpä tuosta! Jumala on
hyvä eikä Häntä petetä muutamilla latinalaisilla sanoilla ja parilla
sytytetyllä kynttilällä.

Täällä kerrotaan, että paavi konsistorionsa ensi kokouksessa


nimittää viisitoista uutta kardinaalia. Se on kirkon vastaus noihin
tärkeisiin kysymyksiin, joita aika sille asettaa. Elämän veturi on
liiaksi kuormitettu ja räjähtämäisillään. Hyvä! Asettakoot vain vielä
suurempia painoja varaventtiilille! Paavi on pyhimys. Tunnen
sanomatonta hellyyttä häntä kohtaan, mutta kun ajattelen tuota
vanhaa miestä, joka ei tiedä ajastaan, vaan elää menneiden
vuosisatain muistoilla miettien ajallisia etujaan, pientä hoviaan,
jossa on kahmalollinen sotilaita, ja on riippuvainen maailman
äärettömästä tietämättömyydestä, — kun ajattelen häntä
asettamassa heikkoa kättään tulevien sukupolvien päälle
hallitakseen heitä, hänen itsensä ollessa tomua ja tuhkaa, tekee
mieleni itkeä.

Voi, jos vielä olisin hyvä katolilainen, niin riippuisin kiinni


uskossani Pyhään Henkeen! Ajattelepa tuota vanhain miesten
yhdistystä, kardinaalikollegiota. Harvat heistä ovat tunnettuja
viisaudestaan, monet ovat julkaisseet kirjoitelmia, jotka puolustavat
sellaisia hullutuksia, joiden mielettömyyden kaikki tieteet aikoja
sitten ovat todistaneet, useimmat ovat edistyksen vihollisia ja
sellaisen valtiollisen suunnan puoltajia, josta kaikki sivistyneet
kansakunnat jo aikoja ovat luopuneet. Heitä peloittaa kansan
marssin kaukainen kaikukin — ja kumminkin heidän tulee valita
paavi, joka on oleva ihmiskunnan erehtymätön uskon ja siveyden
johtaja. Jumalalle kiitos, kristillinen rakkaus on siksi suuri, että
kirkko on voinut pysyä elossa kaiken tuon kurjuuden keskellä, joka
varmaan musertaisi sen, ellei se olisi taivaallista alkujuurta.»

Roma kohotti taas katseensa kirjeestä. Paavi oli varmaan


oikeassa. Rossi oli kirkon vihollinen ja pani ehkä kaikki voimansa
liikkeelle musertaakseen sen.

»Rakas, älä usko etten muista muita ja viehättävämpiä asioita,


vaikka nuo seikat nyt ovat niin paljon minua liikuttaneet. Ei kulu
hetkeäkään, jolloin ei sydämeni puhuisi sinulle, aivan kuin voisit
vastata minulle. Olen ollut levoton, kun en ole kuullut mitään
sinusta kymmeneen päivään, vaikka jätin osoitteeni Lontooseen,
jotta kirjeesi lähetettäisiin minulle tänne. Joskus ajattelen, että
viholliseni ehkä kiusaavat sinua, ja silloin moitin itseäni, kun en
ottanut sinua mukaani huolimatta kaikesta. Joskus arvelen, että
olet sairas, ja silloin tekee mieleni istua ensimmäiseen junaan ja
palata Roomaan. Tiedän, etten voi aina olla luonasi, mutta tämä
ero on julma. Onneksi se kohta loppuu, ja silloin loppuvat myöskin
surumme. Älä kärsi minun tähteni äläkä anna huolien painaa
mieltäsi. Tapahtukoon mitä tahansa, ei mikään voi meitä erottaa,
sillä rakkaus on ikipäiviksi yhdistänyt sydämemme.

Siitä syystä olen varma sinusta, Roma, varma sinun


rakkaudestasi ja uskollisuudestasi. Kuinka voisin muutoin pysyä
hetkeäkään pystyssä tuon kamalan tapahtuman jälkeen peläten
kaksinkertaista marttyyriutta, marttyyriutta itselleni ja sille, joka on
minulle rakkain maailmassa.

Kevät joutuu ja sen mukana minä joudun luoksesi, lemmittyni.


Etkö tunne jo orvokkien tuoksua? Hyvästi.

Uskollinen miehesi.»

You might also like