LPI Linux Essentials key terms
LPI Linux Essentials · Get comfortable with the vocabulary.
- GNU General Public License (GPL)
- Related: Free Software, Open Source Initiative
A copyleft software license that lets anyone run, study, modify, and redistribute a program, provided derivative works are distributed under the same terms and source code is made available.
- Free Software
- Related: GNU General Public License (GPL), Source Code
Software that grants users four freedoms: to run it for any purpose, study and change its source code, redistribute copies, and distribute modified versions. The term emphasizes user liberty rather than price.
- Open Source Initiative
- Related: Free Software, GNU General Public License (GPL)
A nonprofit organization that maintains the Open Source Definition and approves licenses meeting its criteria, which include free redistribution, access to source code, and no discrimination against persons or fields of use.
- Source Code
- Related: Compiler, Free Software
The human-readable instructions written by a programmer in a programming language. It is compiled or interpreted into machine-executable form, and access to it is what allows software to be studied and modified.
- Linux Kernel
- Related: Distribution, Shell
The core program of a Linux system. It manages memory, schedules processes, handles device drivers, and provides system calls that let applications use hardware without addressing it directly.
- Distribution
- Related: Linux Kernel, Package Manager
A complete installable operating system built around the Linux kernel, bundling a package manager, utilities, libraries, and often a desktop environment. Examples include Debian, Fedora, and Ubuntu.
- Shell
- Related: Pipeline, Standard Output
A command interpreter that reads typed commands, expands them, and asks the kernel to run programs. Bash is the most common on Linux, and it also offers scripting, variables, and pipelines.
- Command Prompt
- Related: Shell, Root User
The text a shell prints to signal it is ready for input. It commonly shows the user name, host name, and current directory, and ends with a character such as $ for regular users or # for root.
- Absolute Path
- Related: Relative Path, Root Directory
A file location written from the root of the directory tree, always starting with a slash, such as /etc/hosts. It identifies the same file regardless of the current working directory.
- Relative Path
- Related: Absolute Path, Current Working Directory
A file location interpreted from the current working directory rather than from the root, such as docs/notes.txt or ../bin. It depends on where the user currently is.
- Current Working Directory
- Related: Relative Path, Absolute Path
The directory a shell session is currently operating in. Relative paths resolve against it, and the pwd command prints its absolute path.
- Standard Input
- Related: Standard Output, Redirection, Pipeline
The default data stream a program reads from, usually the keyboard in a terminal. It can be redirected from a file or fed from another command through a pipe.
- Standard Output
- Related: Standard Input, Redirection, Pipeline
The default stream where a program writes normal results, usually the terminal screen. It can be redirected to a file or connected to another command's input.
- Redirection
- Related: Standard Output, Standard Input, Pipeline
Changing where a command's input or output goes, using operators such as > to overwrite a file, >> to append, and < to read from a file. Error output can be redirected separately.
- Pipeline
- Related: Standard Output, Standard Input, Filter
A chain of commands joined by the pipe symbol, where the standard output of one command becomes the standard input of the next, letting small tools be combined to process data.
- Filter
- Related: Pipeline, Regular Expression
A command that reads input, transforms or selects from it, and writes output, making it useful in pipelines. Common examples are grep, sort, cut, and uniq.
- Regular Expression
- Related: Filter, grep
A pattern language for matching text. Tools such as grep, sed, and editors use it to find lines or strings that fit rules like character classes, anchors, and repetition.
- grep
- Related: Regular Expression, Filter
A command that searches input line by line and prints lines matching a pattern, which may be a plain string or a regular expression. Options control case sensitivity, inversion, and line numbers.
- Standard Error
- Related: Standard Output, Redirection
A separate output stream for error and diagnostic messages, so they do not mix with normal results. It is usually shown on the terminal but can be redirected independently.
- Root User
- Related: sudo, File Permissions
The superuser account with unrestricted access to the system. It can read or change any file, install software, and manage devices, so routine work should be done as a normal user.
- sudo
- Related: Root User, User Account
A command that runs a single program with elevated privileges, typically as root, after checking the user's password and the policy in the sudoers configuration.
- User Account
- Related: Group, Root User
An identity on the system with a user name, numeric user ID, home directory, and login shell. Files and processes are owned by and run under accounts.
- Group
- Related: User Account, File Permissions
A named collection of user accounts with its own numeric ID, used to grant a set of people the same access to files and devices without assigning permissions individually.
- File Permissions
- Related: chmod, Root User
The read, write, and execute rights assigned separately to a file's owner, its group, and everyone else. They determine who may view, modify, or run a file.
- chmod
- Related: File Permissions, chown
A command that changes a file's permission bits, either symbolically such as u+x or numerically with octal digits such as 644, which encode read, write, and execute for each class.
- chown
- Related: File Permissions, Root User
A command that changes which user and group own a file. Only the root user can normally give ownership to another account.
- Package Manager
- Related: Distribution, Repository
A tool that installs, upgrades, and removes software from repositories while resolving dependencies. Examples are apt on Debian-based systems and dnf on Fedora-based systems.
- Repository
- Related: Package Manager, Distribution
A server or local collection of software packages and metadata that a package manager queries to find, verify, and download installable software and its dependencies.
- Process
- Related: Signal, Linux Kernel
A running instance of a program, with its own memory, open files, and numeric process ID. The kernel schedules processes and lets them be listed, paused, or stopped.
- Signal
- Related: Process
A short asynchronous message the kernel delivers to a process, such as SIGTERM asking it to stop or SIGKILL forcing it to end. Programs may catch or ignore some signals.
- Daemon
- Related: Process, systemd
A background process that runs without a controlling terminal and usually provides a service, such as scheduling, logging, or network handling. Names often end in d.
- systemd
- Related: Daemon, Process
The default init and service manager on most Linux distributions. It starts services at boot, supervises them, and provides tools to enable, start, and inspect units.
- Mount
- Related: Filesystem, Root Directory
Attaching a filesystem, such as a disk partition or network share, to a directory in the existing tree so its contents become accessible at that point.
- Filesystem
- Related: Mount, File Permissions
The structure and rules an operating system uses to organize files on storage, including directories, file metadata, and free space. Common Linux types include ext4 and XFS.
- Root Directory
- Related: Absolute Path, Mount
The top of the Linux directory tree, written as a single slash. Every other directory and file is reached by a path descending from it.
- Compiler
- Related: Source Code, Linux Kernel
A program that translates source code written in a language such as C into machine code or an intermediate form that the system can execute.
- Environment Variable
- Related: Shell, Command Prompt
A named value stored in a process's environment that programs can read, such as PATH listing directories searched for commands. Child processes inherit them from their parent.