Linux Learning Map
Table of Contents
Exam Objectives#
- Understand and use essential tools
- Access a shell prompt and issue commands with correct syntax
- Use input-output redirection (>, », |, 2>, etc.)
- Use grep and regular expressions to analyze text
- Access remote systems using SSH
- Log in and switch users in multi-user targets
- Archive, compress, unpack, and uncompress files using tar, gzip, and bzip2
- Create and edit text files
- Create, delete, copy, and move files and directories
- Create hard and soft links
- List, set, and change standard ugo/rwx permissions
- Locate, read, and use system documentation including man, info, and files in /usr/share/doc
Manage software#
- Configure access to RPM repositories
- Install and remove RPM software packages
- Configure access to Flatpak repositories
- Install and remove Flatpak software packages
Create simple shell scripts#
- Conditionally execute code (use of: if, test, [], etc.)
- Use Looping constructs (for, etc.) to process file, command line input
- Process script inputs ($1, $2, etc.)
- Processing output of shell commands within a script
Operate running systems#
- Boot, reboot, and shut down a system normally
- Boot systems into different targets manually
- Interrupt the boot process in order to gain access to a system
- Identify CPU/memory intensive processes and kill processes
- Adjust process scheduling
- Manage tuning profiles
- Locate and interpret system log files and journals
- Preserve system journals
- Start, stop, and check the status of network services
- Securely transfer files between systems
Configure local storage#
-
List, create, and delete partitions on GPT disks
-
Create and remove physical volumes
-
Assign physical volumes to volume groups
-
Create and delete logical volumes
-
Configure systems to mount file systems at boot by universally unique ID (UUID) or label
-
Add new partitions and logical volumes, and swap to a system non-destructively
-
Storage management overview
-
book: MBR #skipped bad quality. Used online search instead.
-
book: GPT #skipped bad quality. Used online search instead.
-
book: Disk Partitions
-
book: Storage management tools
-
book: Thin provisioning
-
need to practice most popular options of
fdisk -
Adding storage for practice
-
Ex 15-1 Add required storage to server 2
-
MBR storage management with parted
-
exercise 15-2 Create an MBR/GPT partition
-
exercise 15-3 Delete an MBR/GPT partition
-
Logical Volume Manager LVM
-
Physical volume
-
Volume Group
-
Physical Extent
-
Logical Volume
-
Logical Extent
-
LVM operations and commands
-
exercise 15-4: create physical volume and Volume Group
-
exercise 15-5: create Logical Volumes
-
exercise 15-6: extend a Volume Group and a Logical Volume
-
exercise 15-7: rename, reduce, extend and remove Logical Volumes
-
exercise 15-8: reduce and remove a Volume Group
-
exericse 15-9: uninitialize Physical Volumes
-
chapter summary
-
review questions
-
lab 15-1: create and remove partitions with parted
-
lab 15-2: create Volume Group and Logical Volumes
-
lab 15-3: expand Volume Group and Logical Volume
-
lab 15-4: remove Volume Group and Physical Volumes
Create and configure file systems#
- Create, mount, unmount, and use VFAT, ext4, and XFS file systems
- Mount and unmount network file systems using NFS
- Configure autofs
- Extend existing logical volumes
- Diagnose and correct file permission problems
Deploy, configure, and maintain systems#
- Schedule tasks using at, cron and systemd timer units
- Start and stop services and configure services to start automatically at boot
- Configure systems to boot into a specific target automatically
- Configure time service clients
- Install and update software packages from Red Hat Content Delivery Network, a remote repository, or from the local file system
- Modify the system bootloader
Manage basic networking#
- Configure IPv4 and IPv6 addresses
- Configure hostname resolution
- Configure network services to start automatically at boot
- Restrict network access using firewalld and firewall-cmd
Manage users and groups#
- Create, delete, and modify local user accounts
- Change passwords and adjust password aging for local user accounts
- Create, delete, and modify local groups and group memberships
- Configure privileged access
Manage security#
- Configure firewall settings using firewall-cmd/firewalld
- Manage default file permissions
- Configure key-based authentication for SSH
- Set enforcing and permissive modes for SELinux
- List and identify SELinux file and process context
- Restore default file contexts
- Manage SELinux port labels
- Use Boolean settings to modify system SELinux settings
As with all Red Hat performance-based exams, configurations must persist after reboot without intervention.
Processes#
- real use of process niceness apart from the fact that it changes its automatically assigned CPU access priority
- when would I need to start a process with non-default priority?
- in which cases do I need to send signals other than 9 and 15?
Job scheduling#
- practice allowed and denied user access to
atandcronjob creation (table 9-3 p191) - practice the impact of using
atvscronfor a same type of job - execute a file that contains bash instructions (script) as part of cron and at
- implement a real usage of
atandcronon my Rocky machine: find symbolic links that point to nowhere
RPM Package Management#
RHCSA objectives#
1.3 Install and remove RPM software packages 4.5a Install and update software packages from Red Hat Network 4.5b Install and update software packages from a remote repository 4.5c Install and update software packages from the local file system
storage concepts#
- Book first pass
filesystems and swap#
- book first pass
network filesystem and autofs#
- NFS
- nfs-utils
- exercise 18-1
- exercise 18-2
- NFS client, NFS server
- autofs
- /etc/auto.master.d
- autofs maps
- /etc/autofs.conf
- automounting home directories
- review q
- labs 18-1 to 18-4
SELinux#
- MAC vs DAC
- SELinux policies
- SELinux contexts aka SELinux labels
- AVC
- SELinux terminology
- SELinux contexts for users
- SELinux contexts for processes
- SELinux contexts for files
- SELinux contexts for ports
- domain transitioning (only conceptual)
- SELinux booleans
- /etc/selinux/config
-
getenforce,setenforce -
grubby -
sestatus -
chcon -
semanage fcontext -
semanage port -
restorecon -
getsebool,setsebool - diagnose and troublesoot an AVC message
- review q
- labs 22-1 to 22-5
networking essentials and network connections#
- hostname manipulations
- /etc/protocols
- /etc/services
- IPv4, IPv6, Ethernet
- classful, classless
- subnetting
- the NetworkManager service
- NetworkManager connection profiles
- nmcli
- Hosts table
- chapter 17 review quesitons
- lab 17-1
- lab 17-2
hostname resolution and time sync#
- DNS
- DNS roles
- DNS resolver, /etc/resolv.conf
- /etc/nsswitch.conf
- /etc/hosts
- dig
- host (the tool)
- nslookup
- getent
- time sources
- NTP roles
- stratum levels
- chrony, /etc/chrony.conf, chronyd, chronyc
- timedatectl
- review q
- lab 19-1
- lab 19-2
SSH service#
- encryption techniques
- authentication methods
- OpenSSH, versions, algorithms
- OpenSSH package
- sshd
- /var/log/secure
- /etc/ssh/sshd_config
- /etc/ssh/ssh_config
- ~/.ssh
- SSH keys
- ssh-keygen
- .ssh/known_hosts
- ssh command options
- sftp
- review q
- labs 20-1
- lab 20-2
- lab 20-3
- lab 20-4
Linux firewall#
- /etc/services
- netfilter
- nat
- nftables vs iptables
- firewalld
- /usr/lib/firewalld
- /etc/firewalld
- firewalld zones
- /usr/lib/firewalld/zones, /etc/firewalld/zones
- man firewalld.zones
- /usr/lib/firewalld/services
- /etc/firewalld/services
-
firewall-cmd - review q
- lab 21-1
- lab 21-2
- lab 21-3
- lab 21-4
appendixes#
- appendix A exam 1
- appendix B exam 2
- appendix C exam 3
- appendix D exam 4
micro topics#
| micro topic | skill level: (n)ewbie, (c)omfortable, (m)aster | I need this to reach the next level |
|---|---|---|
| understand the meaning of package naming | n | |
| package dependency: find out on which other packages a package depends on | n | |
| package dependency: find out which other packages depend on the current package | n | |