Linux Glossary

Introduction

Welcome to our comprehensive Linux Glossary! Whether you're a seasoned Linux user or a novice exploring the world of open-source operating systems, this glossary is your gateway to understanding key Linux concepts.

From essential commands like ls, cd, and grep to advanced topics such as kernel modules and virtualization, our glossary provides clear definitions and insights to enhance your Linux knowledge.

Linux Commands

  1. ls: List files and directories.
  2. cd: Change directory.
  3. pwd: Print the current working directory.
  4. mkdir: Create a directory.
  5. rmdir: Remove an empty directory.
  6. cp: Copy files and directories.
  7. mv: Move or rename files or directories.
  8. rm: Remove files and directories.
  9. touch: Create an empty file.
  10. cat: Display file contents.
  11. nano or vi: Text editors.
  12. grep: Search for text in files.
  13. find: Search for files or directories.
  14. ln: Create hard and soft links.
  15. sudo: Execute commands as a superuser.
  16. su: Switch user.
  17. useradd: Add a new user.
  18. usermod: Modify user properties.
  19. passwd: Change the user password.
  20. chown: Change file or directory ownership.
  21. chmod: Change file/directory permissions.
  22. groups: Display group memberships.
  23. top: Display real-time system information.
  24. df: Display disk space usage.
  25. du: Display file/folder disk usage.
  26. free: Display memory usage.
  27. uname: Display system information.
  28. uptime: Display system uptime.
  29. ps: Display process status.
  30. ifconfig or ip: Network configuration.
  31. ping: Test network connectivity.
  32. netstat: Network statistics.
  33. ssh: Securely access remote systems.
  34. scp: Securely copy files between systems.
  35. wget or curl: Download files from the web.
  36. nc: Netcat, a networking utility.
  37. apt or yum: Package management (Debian or Red Hat).
  38. dpkg or rpm: Direct package management.
  39. apt-get or dnf: Command-line package handling.
  40. tar: Create or extract tar archives.

This list of 40 commonly used Linux commands provides a solid foundation for working with the Linux operating system. However, it is by no means exhaustive, as there are many more commands available in Linux. These additional commands can offer even more functionality and flexibility, depending on your specific needs and use case.

Linux Terms

A

Absolute Path: An absolute path in Linux refers to the complete address that defines the exact location of a file or directory starting from the root directory ("/").

ACL (Access Control List): Mechanism used to define access rights for users or groups on files and directories in Linux.

ACPI (Advanced Configuration and Power Interface): Standard for power management and configuration in modern computers.

Administrator: The superuser, also known as root, manages system configurations, installs software, and performs administrative tasks.

Alias: A custom shortcut or alternate name for a command or a group of commands.

ALSA (Advanced Linux Sound Architecture): Software framework for managing sound card drivers on Linux systems.

AML (ACPI Machine Language): Low-level language used to represent ACPI tables on a computer system.

Apache: An open-source web server software widely used to serve web content on the internet.

API (Application Programming Interface): Set of rules and protocols for building software applications.

AppImage: Format for packaging applications that allows them to run on most Linux distributions without installation.

Applet: Small application designed to run within a larger program or on a web page.

APT (Advanced Package Tool): A package management system used in Debian-based Linux distributions.

Archive: A file containing multiple files or directories that have been compressed for storage or transmission.

Arch Linux: Lightweight and flexible Linux distribution known for its simplicity and customization options

Auditd: Userspace component of the Linux auditing system for monitoring and logging security-related events.

Autoconf: Tool for automatically configuring source code for software compilation on Unix-like systems.

AWK: Powerful text-processing language used for data extraction and reporting in Unix-based systems.

B

Bash: The default shell for most Linux distributions, providing a command-line interface for users.

Binary Executable: A file containing machine code instructions that a computer can execute directly.

Block Device: A type of storage device that works with data in blocks, used for random access storage.

Bootloader: Software that manages the boot process of a computer, loading the operating system into memory.

BSD UNIX (Berkeley Software Distribution Unix): A Unix-like operating system based on the original UNIX developed at the University of California, Berkeley.

BusyBox: A software suite that provides several Linux utilities in a single executable.

bzip2: A data compression algorithm and tool utilized for compressing and decompressing files within the Linux operating system environment.

C

CLI (Command Line Interface): A text-based interface for interacting with the operating system via commands.

Client: A computer or program that requests services or resources from a server in a client-server network architecture.

Command: Instruction given to the operating system to perform a specific action or task.

Command Prompt: Interface in which commands are typed by users to interact with the operating system.

CRON: A time-based job scheduler in Linux-like operating systems, used for automation of tasks.

Cron Job: Scheduled task configured to run at specified times using the cron daemon in Linux-like systems.

Crontab: File used to define schedules for cron jobs in Linux, allowing users to automate tasks at specified times and intervals.

D

Daemon: Background processes in Unix-like operating systems that perform specific tasks.

Debian: A popular Linux distribution known for its stability, extensive package repositories, and commitment to free software principles.

Directory: A folder in a file system used to organize and store files and other directories on a computer.

Distro (Distribution): A specific Linux operating system package including the Linux kernel and applications.

E

Environment Variable: Variables used by the shell to store information about the operating system environment.

Emacs: A popular text editor known for its extensibility and customization options.

Encryption: The process of converting data into a coded form to prevent unauthorized access, providing confidentiality and security.

F

FAT32: A file system format commonly used for storage devices, limited by its file size and partition size constraints.

File System: The method used to organize and store data on storage devices, facilitating data access, management, and retrieval.

Flatpak: A package management system and software deployment tool for Linux distributions that offers sandboxed applications.

Flathub: A central repository for hosting Flatpak applications, providing a convenient way to discover and install various software.

FHS (Filesystem Hierarchy Standard): Defines the directory structure and organization in Linux systems.

Fstab: File containing information about filesystems to be mounted during the system boot process.

G

GCC: The GNU Compiler Collection, a suite of compilers for programming languages like C, C++, and others on Linux.

GIMP: An open-source image editor for Linux, offering a wide range of editing capabilities and tools.

GNOME: A desktop environment for Linux, known for its user-friendly interface and customization options.

GNU: A project aiming to create a free operating system, providing essential components for many Linux distributions.

GUI (Graphical User Interface): Interface that allows users to interact with the operating system using graphics and icons.

GRUB (Grand Unified Bootloader): A widely used bootloader for managing system boot processes.

gzip: A compression tool used in Linux to reduce the size of files, often used with tar for archiving.

H

Host: Refers to a computer system or server running Linux that provides resources, services, or data to other computers on a network.

HTML: HyperText Markup Language used for creating websites and web pages.

HTTPS: Secure version of HTTP (Hypertext Transfer Protocol) used for encrypted communication.

I

init: The first process started during system boot on Linux, responsible for initializing and managing system processes.

Inode: Data structure that stores metadata about a file in Linux-like file systems.

IP Address (Internet Protocol Address): Unique address assigned to each device connected to a network.

Iptables: A firewall tool manages network traffic rules, enhancing security by controlling incoming and outgoing packets based on specified criteria.

J

Job: A task or process assigned to be executed within a Linux system, often related to automated or scheduled activities.

Journald: System service that collects and manages logging information on Linux systems.

Journaling File System: Records data structure changes before writing to disk, boosting reliability and enabling better recovery from crashes or errors.

JVM (Java Virtual Machine): Software that provides an environment for running Java bytecode.

K

KDE: A popular desktop environment for Linux known for its user-friendly interface, customization options, and wide range of applications.

Kernel: The core component of the operating system that manages system resources and provides essential services.

Kernel Panic: A critical error condition in Linux where the kernel cannot safely continue operating, leading to system shutdown to prevent potential data corruption.

KVM (Kernel-based Virtual Machine): A virtualization infrastructure for the Linux kernel that enables running multiple virtual machines on a host.

L

LAMP (Linux, Apache, MySQL, PHP/Python/Perl): Software stack commonly used for web development.

LEMP Stack: A software stack consisting of Linux, Nginx, MySQL (or MariaDB), and PHP/Python/Perl, used for hosting dynamic websites and web applications.

Localhost: The name given to the loopback network interface address (127.0.0.1) on a computer, allowing communication with itself.

LTS(Long Term Service): Indicating stable, maintained software with extended security updates lasting three to five years.

M

Mount: Process of making a filesystem available to the operating system.

Man (Manual): Command used to display the manual pages for other commands.

Module: A software component that can be loaded into the Linux kernel to extend its functionality or provide device support dynamically.

N

NFS (Network File System): Protocol that allows remote access to filesystems over a network.

NTFS: New Technology File System, a proprietary file system developed by Microsoft and commonly used in Windows operating systems for storing and organizing files.

O

OpenSSH: Suite of secure networking utilities based on SSH protocol.

Overclocking: Running a computer component at a higher clock rate than it was designed for.

Open Source: Software or code that is freely available, allowing users to view, modify, and distribute it according to open source licensing terms.

P

Package Manager: Software tool used to manage software packages on a Linux system.

PipeWire: A server for handling audio and video streams alongside other functionalities in Linux system audio management.

Piping: Connecting the output of one command directly to the input of another command in Linux using the pipe symbol "|" to create a data stream between commands.

PS (Process Status): Command used to display information about running processes.

Process: A running instance of a program in Linux, representing the execution of specific tasks and managed by the operating system.

Q

QEMU (Quick Emulator): Virtualization software that allows running operating systems on host machines.

Query Language: A specialized language used to retrieve and manipulate data stored in databases or information systems effectively, providing a structured and efficient way to interact with data through queries.

Quota: Disk space management feature that sets limits on the amount of disk space a user or group can use.

R

RAID (Redundant Array of Independent Disks): Data storage technology that combines multiple disk drives to improve performance or data redundancy.

Red Hat: A leading provider of open-source solutions, known for its enterprise Linux operating system and related services.

Redirection: The process of sending command output to a file, device, or another command's input stream in Linux.

Relative Path: A path that defines the location of a file or directory with reference to the current working directory.

Repository: A central storage location for software packages where users can download and install applications on their Linux system.

RPM: Red Hat Package Manager, a command-line package management system used for installing, upgrading, and managing software packages in Red Hat-based Linux distributions.

Root: The superuser or administrative user in Unix-like operating systems.

Root Access: Privileged access that allows users to perform administrative tasks and modify critical system settings in Linux.

Root Directory: The top-level directory in a Linux-like operating system from which all other directories and files stem.

Root Partition: The primary disk partition in a Unix-like operating system where the root directory ("/") resides, typically containing the operating system files and configurations.

S

Samba: A software suite in Linux that enables file and print services for Windows clients in a Linux environment.

Script: A sequence of commands, often written in a scripting language, executed by a shell in Linux for automating tasks.

Service: A program or process running in the background on a Linux system, typically providing specific functions or managing system resources.

Shell: Command-line interpreter that allows users to interact with the operating system.

SSH: Secure Shell Protocol, used for secure remote access to Linux systems for command-line and file transfer operations.

SSL: Secure Sockets Layer, a protocol that ensures secure communication over a network, commonly used for encrypting data transmitted over the internet.

Standard Error: The output stream in Linux where error messages and diagnostics are displayed.

Standard Input: The input stream in Linux from which programs read data, often coming from the keyboard.

Standard Output: The output stream in Linux where normal command output is displayed.

Sudo: Command that allows users to run programs with the security privileges of another user, typically the superuser.

Swap: Disk storage area used by the OS to store data when RAM is full, improving system performance with extra virtual memory.

Snap: A packaging and distribution system in Linux that bundles applications along with their dependencies in a single compressed file for easy installation and management.

Symlink: Short for symbolic link, a file that points to another file or directory, serving as a reference or shortcut to access the target file or directory through a different path.

T

Tar: Command-line utility used to compress and decompress files in Linux.

Terminal: Interface for users to interact with the operating system using text commands.

TCP/IP: Transmission Control Protocol/Internet Protocol, a suite of communication protocols used to establish connections and transmit data over networks.

TTY: A command in Linux that stands for teletypewriter, used to display terminal information or to switch to a different terminal.

Tux: The official mascot of the Linux kernel, created by Larry Ewing, used as a symbol to represent Linux.

U

Ubuntu: Popular Linux distribution known for its user-friendly environment and community support.

UEFI (Unified Extensible Firmware Interface): A modern firmware interface replacing BIOS, providing enhanced features like secure boot and driver architecture for system initialization on modern computers

UID (User ID): Unique numerical identifier assigned to each user on a Unix-like system.

Unix: A family of operating systems known for multitasking, multi-user capabilities, and portability, with different variations such as Linux and BSD.

User: An individual who interacts with a computer system by logging in, accessing resources, running applications, and performing various tasks within the Linux operating system.

V

Verbose: A mode that displays detailed information or output for commands, assisting users in troubleshooting, monitoring, and understanding system.

Vi/Vim: Text editor available on most Unix-like operating systems, known for its modal editing features.

Virtualization: Technology that enables running multiple operating systems on a single physical machine simultaneously.

W

Wayland: A display server protocol designed to replace the aging X Window System in Linux, providing modern features and improved performance.

wget: Command-line tool used to download files from the internet.

Wine: Enables running Windows apps on Unix-like systems without Windows, translating API calls and creating a compatibility environment.

Wireshark: Network protocol analyzer used for troubleshooting, analysis, and development of communication protocols.

X

X11: Windowing system used to manage graphical interfaces in Unix-like operating systems.

Xfce: Lightweight desktop environment for Unix-like operating systems, known for its speed and efficiency.

Y

YUM (Yellowdog Updater, Modified): Package management utility for Red Hat-based Linux distributions.

YAML (YAML Ain't Markup Language): Human-readable data serialization format commonly used in configuration files.

Z

ZFS (Zettabyte File System): Advanced file system developed by Sun Microsystems, known for its features like data integrity and scalability.

Zombie Process: A process that has completed execution but still has an entry in the process table.

Conclusion

In conclusion, this Linux glossary encompasses essential terms such as file systems, commands, and software components crucial for understanding this open-source operating system. From kernels to desktop environments like GNOME, Linux offers versatility and robustness.