Key Terms Flashcards
shell
The environment from which commands can be executed. Bash is the default shell on Linux, but other shells exist as well.
Bash
The default shell that is used on Red Hat Enterprise Linux.
File descriptor
A pointer that is used by a Linux process to refer to files that are in use by the process.
Device file
A file that is created in the /dev directory and that is used to represent and interact with a device.
Login shell
The shell that is opened directly after a user has logged in.
Subshell
A shell that is started from another shell. Typically, a subshell is started by running a shell script.
Mount
A connection that is made between a device and a directory. To access files on specific storage devices, the storage device needs to be mounted on a directory. This sets up the specified directory as the access point to files on the storage device. Mounts are typically organized by the system administrator and are not visible to end users.
inode
inodes are structures that store metadata about files and directories, including: File permissions, Ownership, Size, Timestamps, Location of the data. Every Linux file has an inode, and the inode contains all properties of the file but not the filename.
Hard link
A name associated with an inode. Inodes are used to store Linux files. An inode contains the complete administration of the file, including the blocks in which the file is stored. A file that does not have at least one hard link is considered a deleted file. To increase file accessibility, more than one hard link can be created for an inode.
Symbolic (soft) link
A special type of file that contains a reference to another file or directory in the form of an absolute or relative path.
Filesystem Hierarchy Standard (FHS)
A standard that defines which Linux directories should be used for which purpose.
Read man 7 file-hierarchy for a specification of the FHS.
Regular expression
A search pattern that allows users to search text patterns in a flexible way. Not to be confused with shell metacharacters.
Line anchor
In regular expressions, a character that refers to a specific position in a line.
^ signifies start of line
$ signifies end of line
Wildcard
The * character, which in a shell environment refers to an unlimited number of any characters.
Console
In Linux, the primary terminal where a user works. It is also a specific device with the name /dev/console.
Terminal
Originally, the screen that was used by a user to type commands on. On modern Linux systems, pseudo terminals can be used as a replacement. A pseudo terminal offers a shell window from which users enter the commands that need to be executed.
Subshell
A shell that is started from another shell. Typically, a subshell is started by running a shell script.
Systemd
The service manager on RHEL 9. Systemd is the very first process that starts after the kernel has loaded, and it takes care of starting all other processes and services on a Linux system.
GECOS
A field in the /etc/passwd file that can be used to store personal data about a user on the Linux operating system. GECOS originally stood for General Electric Comprehensive Operating Supervisor.
Inheritance
In permission management, the situation where new files that are created in a directory inherit the permission settings from the parent directory.
This can be enforced by setting the SGID bit on a directory’s permissions.
Repository
An installation source that contains installable packages and an index that contains information about the installable packages so that the installation program dnf can compare the version of packages currently installed with the version of packages available in the repository.
Package
A bundle that is used to distribute software. A package typically contains a compressed archive of files and metadata that includes instructions on how to install those files.
Module (dnf)
A collection of software packages that can be managed as one entity and can contain different versions of a software solution.
Application Stream
A specific version of a dnf module that can be installed as such. They are often used by developers who need a specific version of software to build or run their applcations.
Process
A task that is running on a Linux machine. Roughly, a process corresponds to a program, although one program can start multiple processes.
Thread
A thread is a subdivision of a process. Many processes are single threaded, which means that process is basically one entity that needs to be serviced. On a multicore or multi-CPU computer system, working with multithreaded processes makes sense. That way, the different cores can be used to handle the different threads, which allows a process to benefit from multicore or multithreaded environments.
Job
In a Linux shell, a task running in the current terminal. Jobs can be started in the foreground and in the background. Every job is also visible as a process.
Background process
A process that is running on a system without actively occupying a console. Processes can be started in the background by adding a & after the command that starts the process.
Zombie
A process that has lost contact with its parent and for that reason cannot be managed using regular tools.
Profile (tuned)
In ‘tuned’, a collection of performance settings that can easily be applied.
Systemd
The service manager on RHEL 9. Systemd is the very first process that starts after the kernel has loaded, and it takes care of starting all other processes and services on a Linux system.
Unit
An item that is managed by Systemd. Different types of units exist, including service, path, mount, and target units.
Target
In Systemd, a collection of unit files that can be managed together.
Want
An indication for a Systemd unit file that it is supposed to be started from a specific Systemd target.
Timer
A Systemd unit type that can be used as an alternative to cron jobs and run units at a specific time.
cron
A service that takes care of starting services repeatedly at specific times.
anacron
A service that ensures that vital cron jobs can be executed when the server is down at the moment that the job normally should be executed. Can be considered an extension to cron.
at
A service that can be used to schedule future jobs for one-time execution.
systemd-journald
The part of Systemd that takes care of logging information about events that have been happening. The introduction of journald ensures that information about all services can be logged, regardless of how the service itself is configured to deal with information that is to be logged.
rsyslogd
The generic daemon that logs messages.
journalctl
The command used to manage systemd-journald.
Log rotation
A service that ensures that log files cannot grow too big. Log files are monitored according to specific parameters, such as a maximum age or size. Once this parameter is reached, the log file will be closed and a new log file will be opened. Old log files are kept for a limited period and will be removed, often after only a couple of weeks.
Facility
In rsyslogd, the source where log information comes from. A strictly limited number of facilities have been defined in rsyslogd.
Priority (rsyslog)
Used to specify the severity of a logged event. Based on the severity, specific actions can be taken.