CELE study materials
CELE study resources

CELE key terms

CELE · Get comfortable with the vocabulary.

Kernel

The core component of an operating system that manages hardware resources, memory, and processes, and provides essential services to all other software running on the system.

Related: Shell, Init System
Shell

A command-line interpreter that reads user commands and executes them, providing an interface to the operating system and allowing scripting and automation.

Related: Bash, Environment Variable
Init System

The first process started by the kernel during boot, responsible for initializing system services and managing processes; common examples include systemd and SysVinit.

Related: Systemd Unit, Runlevel
Filesystem Hierarchy Standard (FHS)

A standard that defines the directory structure and directory contents in Linux systems, ensuring consistency across distributions for file locations like /etc, /var, and /usr.

Related: Mount Point, Inode
Inode

A data structure on a filesystem that stores all metadata about a file except its name and actual data, including permissions, ownership, size, and pointers to data blocks.

Related: Hard Link, Symbolic Link
Hard Link

A directory entry that points to the same inode as another file, meaning both names refer to the same data on disk; deleting one does not remove the data until all links are gone.

Related: Symbolic Link, Inode
Symbolic Link

A special file that contains a reference to another file or directory by path, similar to a shortcut; if the target is removed, the link becomes broken.

Related: Hard Link, Inode
Mount Point

A directory in the filesystem tree where an additional filesystem is attached and made accessible, such as /mnt or /media.

Related: Filesystem Hierarchy Standard (FHS), /etc/fstab
/etc/fstab

A configuration file that lists filesystems and their mount options, used by the system to automatically mount filesystems at boot or on demand.

Related: Mount Point, UUID
UUID

A universally unique identifier assigned to a filesystem or partition, used in configuration files like /etc/fstab to reliably identify devices regardless of hardware changes.

Related: /etc/fstab, Block Device
Block Device

A type of device that provides access to storage in fixed-size blocks, such as hard drives, SSDs, and partitions, typically found under /dev.

Related: UUID, Partition
Partition

A logical division of a storage device that can be formatted with a filesystem and used independently, allowing multiple operating systems or separate data areas on one disk.

Related: Block Device, Filesystem
Filesystem

A method and data structure that an operating system uses to organize, store, and retrieve files on a storage device, such as ext4, XFS, or Btrfs.

Related: Inode, Mount Point
User Account

A set of credentials and permissions that allows a person or service to log in and access resources on a Linux system, identified by a username and user ID (UID).

Related: Group, UID
Group

A collection of user accounts that simplifies permission management by allowing permissions to be assigned to multiple users at once; each group has a group ID (GID).

Related: User Account, GID
UID

A numeric identifier assigned to each user account; the root user typically has UID 0, and system users often have UIDs below 1000.

Related: User Account, GID
GID

A numeric identifier assigned to each group; used in file permissions and process credentials to determine group-based access rights.

Related: Group, UID
File Permissions

A set of rights that control who can read, write, or execute a file or directory, defined for the owner, group, and others, and represented by a three-digit octal or symbolic notation.

Related: chmod, chown
chmod

A command used to change the access permissions of files and directories, using either symbolic (e.g., u+x) or octal (e.g., 755) notation.

Related: File Permissions, chown
chown

A command used to change the owner and/or group of a file or directory; typically requires root privileges.

Related: chmod, File Permissions
sudo

A command that allows a permitted user to execute a command as another user, typically the superuser, according to security policy defined in /etc/sudoers.

Related: su, Root User
su

A command used to switch to another user account, often the root user, by providing the target user's password; it starts a new shell with that user's privileges.

Related: sudo, Root User
Root User

The superuser account with UID 0, which has unrestricted access to all files, commands, and system resources; using it requires caution due to its power.

Related: sudo, su
Process

An instance of a running program, including its memory space, file descriptors, and execution state; each process is identified by a unique process ID (PID).

Related: PID, Signal
PID

A unique numeric identifier assigned to each running process by the kernel, used to manage, monitor, and control processes.

Related: Process, Signal
Signal

A software interrupt sent to a process to notify it of an event or request an action, such as SIGTERM to request termination or SIGKILL to force termination.

Related: kill, Process
kill

A command used to send a signal to a process, typically to terminate it; by default it sends SIGTERM, but other signals can be specified.

Related: Signal, PID
Systemd Unit

A configuration file that describes a system resource or service managed by systemd, such as a service, mount point, or timer; units are defined in files with specific extensions like .service.

Related: Init System, systemctl
systemctl

A command used to control the systemd system and service manager, allowing users to start, stop, enable, disable, and check the status of systemd units.

Related: Systemd Unit, Init System
Runlevel

A legacy SysVinit concept representing a system state that defines which services are running; systemd uses targets instead, but runlevels are still partially supported for compatibility.

Related: Init System, Systemd Unit
IP Address

A numerical label assigned to each device on a network that uses the Internet Protocol for communication, identifying both the host and its network location.

Related: Subnet Mask, Default Gateway
Subnet Mask

A 32-bit number that divides an IP address into network and host portions, determining which part identifies the network and which part identifies the host.

Related: IP Address, CIDR Notation
CIDR Notation

A compact representation of an IP address and its associated subnet mask, written as address/prefix-length (e.g., 192.168.1.0/24), where the prefix length indicates the number of network bits.

Related: Subnet Mask, IP Address
Default Gateway

The router on a local network that forwards traffic to destinations outside the local subnet; configured in the routing table to handle unknown destinations.

Related: IP Address, Routing Table
Routing Table

A data table stored in the kernel that lists the routes to various network destinations, used to determine where to send packets based on their destination IP address.

Related: Default Gateway, IP Address
SSH

Secure Shell, a cryptographic network protocol and command suite for secure remote login and other secure network services over an unsecured network.

Related: Public Key Authentication, sshd
Public Key Authentication

An SSH authentication method where the client proves its identity by signing a challenge with a private key, while the server verifies using the corresponding public key stored in authorized_keys.

Related: SSH, sshd
sshd

The OpenSSH daemon that listens for SSH connections, handles authentication, and provides secure remote access to the system; configured via /etc/ssh/sshd_config.

Related: SSH, Public Key Authentication
Package Manager

A tool that automates the process of installing, upgrading, configuring, and removing software packages, resolving dependencies and managing repositories.

Related: Repository, Dependency
Repository

A centralized storage location from which software packages are retrieved and installed by a package manager; repositories contain metadata and package files.

Related: Package Manager, Dependency
Dependency

A software package that another package requires to function correctly; package managers automatically resolve and install dependencies to ensure proper operation.

Related: Package Manager, Repository
Environment Variable

A dynamic named value that affects the behavior of processes on a Linux system, such as PATH, HOME, or USER, and can be inherited by child processes.

Related: Shell, PATH
PATH

An environment variable that specifies a colon-separated list of directories the shell searches to find executable commands when a user types a command name.

Related: Environment Variable, Shell
Bash

The Bourne Again Shell, a widely used Unix shell and command language that provides scripting capabilities, command-line editing, and job control.

Related: Shell, Environment Variable
Cron

A time-based job scheduler in Unix-like systems that runs scheduled commands or scripts at specified intervals, defined in crontab files.

Related: Crontab, Systemd Timer
Crontab

A file containing a list of commands to be run by cron at specified times, with each line representing a job and its schedule in five time fields.

Related: Cron, Systemd Timer
Systemd Timer

A systemd unit that triggers another unit based on time, providing functionality similar to cron but with more advanced scheduling and logging capabilities.

Related: Systemd Unit, Cron
Firewall

A network security system that monitors and controls incoming and outgoing network traffic based on predetermined security rules, often implemented with iptables or firewalld.

Related: iptables, firewalld
iptables

A user-space utility program that allows a system administrator to configure the IP packet filter rules of the Linux kernel firewall, part of the Netfilter framework.

Related: Firewall, firewalld
firewalld

A dynamic firewall management tool that provides a simplified interface for managing firewall rules, using zones and services to define trust levels and allowed traffic.

Related: Firewall, iptables
SELinux

Security-Enhanced Linux, a mandatory access control mechanism integrated into the Linux kernel that enforces security policies to confine processes and limit potential damage from compromised services.

Related: AppArmor, Firewall
AppArmor

A Linux security module that provides mandatory access control by confining programs to a limited set of resources, using profiles to define allowed actions.

Related: SELinux, Firewall