LinuC Level 2 Exam 201 — knowledge map
The 127 core concepts of LinuC Level 2 Exam 201 and how they connect. Click a node in the map above to explore related terms and prerequisites; the list below indexes every concept with its definition and links to its prerequisites and related concepts.
Concepts (127)
Shell (bash)
The interactive environment that interprets user commands and passes them to the kernel; the Linux default is bash. Its mechanics (variables, quoting, history, path resolution) underpin scripting and text processing.
Prerequisites: Command history (history)、Quoting (single / double / backquote)
Kernel
The core of the OS; it manages hardware (CPU, memory, devices) and provides services to processes. VMs each have their own kernel, while containers share the host kernel.
Locating commands (which/whereis/type)
Three ways to locate a command: which finds the executable on PATH, whereis adds man pages and source, and type also detects aliases and shell builtins (type cd -> shell builtin).
Prerequisites: Alias / shell builtin、locate / updatedb、man (manual)、source (dot command)
Filesystems and mkfs
Making a partition usable (formatting) means creating a filesystem, done with the mkfs family. ext4 is the general Linux standard (predecessor ext3), XFS excels at large/parallel workloads (RHEL default), VFAT interoperates with Windows, Btrfs is new-generation, and tmpfs lives in memory and vanishes on reboot.
Prerequisites: Shutdown and reboot commands (shutdown/reboot/halt/poweroff)
Packages and repositories
Linux software is managed as packages fetched from distribution servers (repositories); a package manager auto-resolves dependencies and handles install/update/remove centrally, working from a local index (package catalog).
Related: Distribution
Control flow (if / case / for / while)
Branching and looping in scripts: if…fi is a conditional ([ ] is test), case…esac branches a value by patterns, and for/while…done loop. The key is not to confuse the closers (fi/esac/done).
Filesystem mounting (/etc/fstab)
Mounting attaches a filesystem at a point in the directory tree (a mount point); use mount/umount (umount fails while busy). Boot-time mounts are defined in /etc/fstab (device, point, type, options, dump, fsck order) and verified with mount -a. Removable media mount under /media.
Distribution
A packaged form distributing the Linux kernel together with package management, tools, and configuration; the Debian/Ubuntu family (apt) and the RHEL/CentOS family (yum/dnf) differ in management commands and defaults.
Prerequisites: Kernel
Related: Packages and repositories
Shutdown and reboot commands (shutdown/reboot/halt/poweroff)
Commands to safely stop or restart the system. shutdown is the canonical one, supporting scheduling (-h halt / -r reboot) and warnings to logged-in users; halt stops, reboot restarts, poweroff powers off.
systemd / systemctl
The modern Linux init and service manager; it runs as PID 1 and starts services (units) in parallel by dependency (successor to legacy SysV init). systemctl is its control command (start/stop/enable/disable/status).
Boot loader (GRUB2)
A program that selects and loads the kernel after firmware; the Linux standard is GRUB2, which offers a menu of kernels and boot options.
Prerequisites: Kernel、Locating commands (which/whereis/type)
Docker image
A read-only template used to start containers. It is built from a Dockerfile with docker build, or created from a running container's state with docker commit. Images are fetched from a registry with docker pull, listed with docker images, and removed with docker rmi.
Filters (text-processing commands)
Single-purpose commands that transform stdin to stdout: view with cat/less (pager)/head/tail (-f follows), transform with tr/nl, join with paste/join, split with split, format with expand/unexpand/fmt/pr, dump binary with od. Combined via pipes.
Prerequisites: Pipe (|)、Standard streams (stdin / stdout / stderr)
find
Walks a path in real time to find matching files: filter with -name, -type (f/d), -size, -mtime (modified; -7 within 7 days), -user, and act in bulk with -exec command {} \;.
Prerequisites: Filters (text-processing commands)、PATH、Locating commands (which/whereis/type)
Hard and symbolic links (ln)
Multiple names for one entity: a hard link (ln) is an equal name for the same inode—same filesystem only, no directories, and data survives deletion. A symbolic link (ln -s) is a file holding a path—it can cross filesystems and point at directories, but dangles if the target is removed.
Prerequisites: Filesystems and mkfs、PATH
Related: inode
PATH
An environment variable listing directories searched for command executables; the current directory is not included by convention, so run local scripts as ./script.sh (relative) or by absolute path.
Prerequisites: Shell and environment variables
Related: Absolute and relative paths
Snapshot
A point-in-time freeze of a filesystem or volume's state. LVM snapshot LVs and Btrfs snapshots are common examples; because only the changed blocks are tracked, creation is cheap, making snapshots useful for backups and rollback after a failure.
Prerequisites: Filesystems and mkfs
source (dot command)
The . (dot) and source commands read a script into the current shell without creating a new process; used to apply config files (e.g., ~/.bashrc) without re-login.
Prerequisites: Shell (bash)
Subvolume (Btrfs)
A logical subdivision within a Btrfs filesystem that can be mounted or snapshotted independently. A single Btrfs filesystem can be split into multiple subvolumes, each with its own snapshots.
Prerequisites: Filesystems and mkfs、Filesystem mounting (/etc/fstab)、Snapshot
Console / terminal emulator
The text screen for operating the shell; you enter commands via a physical text console or a terminal emulator that provides it on the desktop.
Prerequisites: Persisting jobs after disconnect (nohup/screen/tmux)、Shell (bash)
Container filesystem
The filesystem visible inside a container, built by stacking the layers of its source image. An image itself is a set of read-only layers; when a container runs, one writable layer is added on top.
Prerequisites: Docker image、Filesystems and mkfs、source (dot command)
ESP (EFI System Partition)
A FAT-formatted partition holding the boot loader for UEFI boot, mounted at /boot/efi.
Prerequisites: Boot loader (GRUB2)、Filesystem mounting (/etc/fstab)、UEFI / BIOS
Text search and extract commands (grep/egrep/fgrep/sed)
grep prints lines matching a regex (-i ignore case, -v non-matching, -n line numbers, -r recursive); egrep (grep -E) uses extended regex, fgrep (grep -F) does fixed-string search with no regex. sed is a stream editor, best known for sed 's/old/new/g' search-and-replace.
Prerequisites: Control flow (if / case / for / while)、Regular expression
Hypervisor
Software that virtualizes a physical machine CPU/memory/disk and shares them among virtual machines; it uses CPU virtualization extensions (Intel VT-x / AMD-V) for practical speed. On Linux, KVM plays this role.
initramfs
An initial RAM disk containing the drivers the kernel needs to mount the real root filesystem; it bridges early boot.
Prerequisites: Filesystems and mkfs、Kernel、Filesystem mounting (/etc/fstab)
IP forwarding
A kernel setting that lets a server relay (route) packets not addressed to itself out through another network interface. It is toggled via /proc/sys/net/ipv4/ip_forward or the sysctl parameter net.ipv4.ip_forward, and is required to make a Linux server act as a router.
Prerequisites: IP address (IPv4 / IPv6)、Kernel、X Window System (X server / X client)
IP address (IPv4 / IPv6)
A number identifying a host on a network: IPv4 is 32 bits in dotted quads (192.168.1.10), IPv6 is 128 bits in colon-hex, structurally solving address exhaustion; an fe80:: link-local address auto-configures for on-link traffic.
KVM
Virtualization built into the Linux kernel (Kernel-based Virtual Machine), turning Linux itself into a hypervisor.
Prerequisites: Hypervisor、Kernel、Virtual machine (VM)
NAT (Network Address Translation)
A mechanism that translates private IP addresses to public IP addresses and back, running on a router or gateway so many internal hosts can share a small number (or just one) of public IPs to reach the internet (NAPT / IP masquerading). On Linux this is implemented via the iptables MASQUERADE target, among others.
Prerequisites: iptables / firewalld (firewall)、IP address (IPv4 / IPv6)、Private / public IP address、systemd targets (default target / single-user mode)
Persisting jobs after disconnect (nohup/screen/tmux)
Ways to keep work running after logout or a dropped SSH: nohup ignores hangup (SIGHUP); screen/tmux are terminal multiplexers you can detach and reattach.
Prerequisites: Signals and terminating processes (kill / pkill / killall / pgrep)
Permissions and ownership
Access control per file for three classes (owner, owning group, others) with read (r), write (w), execute (x); shown in the first 10 chars of ls -l. Change the owner with chown and the group with chgrp.
Shell scripts and the shebang
Automating a series of commands in a file; the first-line shebang #!/bin/bash names the interpreter, and chmod +x grants execute permission to run it as ./script.sh.
Prerequisites: chmod / umask、Permissions and ownership、Shell (bash)
Login status (who/w/last)
Commands to see who is logged in: who shows current logins, w adds activity and load, and last shows login history from /var/log/wtmp.
Related: Command history (history)
apt (Debian family)
Repository-based package management on Debian/Ubuntu: apt update refreshes the index (not packages), apt upgrade upgrades packages, plus install/remove/purge. apt-cache searches, apt-file reverse-looks-up which package provides a file (including uninstalled). Repositories are defined in /etc/apt/sources.list.
Prerequisites: Packages and repositories、Locating commands (which/whereis/type)
Differential backup
A backup method that copies only data changed since the last full backup. Restoring needs just the full backup plus the most recent differential, but the differential grows larger each day since the last full backup.
Prerequisites: Full backup、Login status (who/w/last)
DNS client config (host / dig / resolv.conf)
Configuring and checking name resolution: nameserver in /etc/resolv.conf sets the DNS servers, /etc/nsswitch.conf the lookup order (usually files->dns), and /etc/hosts holds static entries. host/dig query DNS directly (dig selects a server with @), while getent resolves following nsswitch order (including /etc/hosts).
Prerequisites: Control flow (if / case / for / while)
Default editor (EDITOR / nano / emacs)
Which editor crontab -e and similar launch is set by the EDITOR variable (export EDITOR=nano). nano shows keys on-screen (beginner-friendly), and emacs is another major editor.
Prerequisites: cron / crontab (periodic scheduling)、Persisting jobs after disconnect (nohup/screen/tmux)、Shell and environment variables、Locating commands (which/whereis/type)
iptables / firewalld (firewall)
A host packet filter: iptables drives the kernel netfilter directly via rule chains (INPUT/OUTPUT/FORWARD); firewalld manages by zones and service names (rules vanish on reboot without --permanent). The policy is default-deny, allowing only what is needed.
Prerequisites: Filters (text-processing commands)、Kernel、Shutdown and reboot commands (shutdown/reboot/halt/poweroff)
systemd journal (journalctl)
Binary-format logs collected by systemd, queried with journalctl (-u per unit, -b this boot, -f follow, -p severity, --since time range). It persists if /var/log/journal/ exists, otherwise memory-only (lost on reboot). Configure via journald.conf; trim old data with --vacuum-*.
Prerequisites: Shutdown and reboot commands (shutdown/reboot/halt/poweroff)、systemd / systemctl
Kernel modules (modprobe)
A way to load drivers into the kernel only when needed: lsmod lists loaded modules, modprobe loads/unloads with dependencies (the first choice), and insmod/rmmod load/unload a single module by file path.
Namespaces
A Linux kernel feature that isolates resources such as process IDs, network stacks, and mount points so a process sees its own independent view of the system. Along with cgroups, it is the foundational technology behind containers.
Prerequisites: Kernel、Filesystem mounting (/etc/fstab)
Network configuration (ip / ifconfig / nmcli)
Viewing/changing host networking: the current standard is the ip command (ip addr for addresses, ip route for routes), legacy is ifconfig/route. ip/ifconfig changes are temporary and vanish on reboot; persist via NetworkManager nmcli or config files. ifup/ifdown bring interfaces up/down from config. The hostname is in /etc/hostname.
Prerequisites: Shutdown and reboot commands (shutdown/reboot/halt/poweroff)
Paravirtualization
A virtualization approach where the guest OS is aware it is virtualized and uses dedicated drivers (such as virtio) to talk to devices efficiently. Compared with full virtualization, which emulates real hardware entirely, it delivers better I/O performance.
Prerequisites: Hypervisor、Locating commands (which/whereis/type)
Partition (MBR / GPT)
The unit into which a disk is divided; the ledger is the partition table, either legacy MBR (2 TB max, four primary partitions with extended as the workaround) or the mainstream GPT (practically unlimited, paired with UEFI).
Prerequisites: UEFI / BIOS、Locating commands (which/whereis/type)
Pipe (|)
Connects the left command's stdout to the right command's stdin (ps aux | grep nginx); stderr does not enter the pipe (add 2>&1 first to include it).
Prerequisites: Text search and extract commands (grep/egrep/fgrep/sed)、Redirection (> / >> / 2>&1)
Shell and environment variables
A shell variable is set with NAME=value (no spaces around =) and is valid only in that shell; export makes it an environment variable inherited by child processes. List with set (all) / env (environment only), remove with unset, print with echo.
Prerequisites: Shell (bash)
Related: Child process
Standard streams (stdin / stdout / stderr)
The three streams every command has: standard input (0), standard output (1), standard error (2). Rewiring them with redirection and pipes is the basis of Linux text processing.
Related: Pipe (|)、Redirection (> / >> / 2>&1)
systemd targets (default target / single-user mode)
Unit groups representing how far to boot: multi-user.target (CUI server standard), graphical.target (GUI), rescue.target (single-user mode). set-default sets the default from next boot; isolate switches now.
Prerequisites: systemd / systemctl
Timestamp
The last-modified/accessed/changed time of a file; touch updates it, and find -mtime can search by modification date.
Prerequisites: System and hardware clocks (date / hwclock)、Basic file operations (cp / mv / rm / mkdir)、find、Login status (who/w/last)
X Window System (X server / X client)
The server/client foundation of the Linux GUI: the X server runs where the display/input are and provides drawing and input, while X clients are the applications. Where an app runs and where it displays can differ.
Prerequisites: Control flow (if / case / for / while)
Alias / shell builtin
An alias is an alternate name for a command (alias ll='ls -l') that shadows a同名 command; a shell builtin (cd, echo) is built into the shell itself with no external executable.
Prerequisites: Shell (bash)
Full backup
A backup method that copies all target data every time. Restoring is simple and fast, but each run takes more time and storage. It also serves as the baseline for differential and incremental backups.
Related: Incremental backup
Child process
A process started by another (its parent). When the shell runs a command it forks a child, and only environment variables are inherited (the reason export is needed).
Prerequisites: Shell (bash)
Related: Shell and environment variables
chmod / umask
chmod changes permissions: octal mode sums r=4, w=2, x=1 per triplet (chmod 754); symbolic mode uses u/g/o/a with +/-/=. umask sets default bits removed at creation—files start from 666, directories from 777 (umask 022 gives 644/755).
Prerequisites: Octal (permission notation)、Permissions and ownership
Copyleft and permissive
Two families of OSS licenses: copyleft requires derivatives you redistribute to carry the same license (source disclosed), a propagating condition; permissive lets you close modifications if you keep the copyright notice. The trigger for obligations is generally "redistribution".
Prerequisites: source (dot command)
Dependencies (packages)
Other packages a package needs to function; apt/yum resolve them automatically and install together, while dpkg/rpm do not and fail when a dependency is missing.
Prerequisites: Control flow (if / case / for / while)、dpkg (direct deb handling)、Packages and repositories
Docker registry
A server that stores and distributes Docker images. Docker Hub is the default public registry; images are fetched and published with docker pull/docker push. Organizations can also run their own private registries.
Prerequisites: Docker image
FHS (Filesystem Hierarchy Standard)
A convention defining the standard directory layout: /etc config, /var variable data (logs), /home users, /usr apps, /bin,/sbin core commands, /opt add-ons, /tmp temporary, /boot kernels, /dev devices, /proc,/sys virtual FS. Nearly universal across distributions.
Prerequisites: Distribution、Filesystems and mkfs、Kernel
locate / updatedb
locate searches the index database built by updatedb, so it is fast but blind to files newer than the last index; refresh with updatedb and configure exclusions in /etc/updatedb.conf. When accuracy matters, use find (a live walk).
Prerequisites: find、Login status (who/w/last)
LVM (logical volume management)
An abstraction layer pooling disks (physical volumes, PV) into a volume group (VG) and carving logical volumes (LV) from it; it supports online grow/shrink and point-in-time snapshots.
Prerequisites: Snapshot
Operations monitoring tools and alerts
Continuous monitoring of server/service liveness, resource utilization, and response times, which raises an alert to administrators when a threshold is crossed or a failure occurs. Tools such as Nagios, Icinga2, Zabbix, Cacti, MRTG, and collectd are used, and many rely on SNMP to poll network device status.
Prerequisites: Locating commands (which/whereis/type)
ping / traceroute (reachability and path)
Tools to isolate network faults by layer: ping (ping6) checks reachability via ICMP, and traceroute/tracepath show each router hop to pinpoint where traffic stops; tracepath needs no privileges and probes MTU.
Prerequisites: PATH
Private / public IP address
Private IP addresses (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) are numbers used only within a limited scope such as an organization and cannot reach the internet directly. They pair with public IP addresses, which are uniquely reachable on the internet, and a router translates between the two to communicate.
Prerequisites: IP address (IPv4 / IPv6)、Locating commands (which/whereis/type)
Process / PID
A process is a running instance of a program, identified by a unique PID. The first to start, PID 1, is systemd (init).
Prerequisites: systemd / systemctl
pv* commands (physical volume operations)
LVM commands for physical volumes (PV): pvcreate initializes a disk or partition as a PV, while pvdisplay/pvs show PV information.
Prerequisites: Control flow (if / case / for / while)
Regular expression
A language for describing string patterns: ^ line start, $ line end, . any one char, [abc] a set, * zero-or-more of the previous. Basic (BRE) and extended (ERE: + ? | ( )) forms exist; the * differs from a shell wildcard (any string is .*). Full grammar in regex(7).
Prerequisites: Shell (bash)
Related: Wildcards (globbing)
Signals and terminating processes (kill / pkill / killall / pgrep)
Signals convey control to processes: the default SIGTERM (15) politely asks to terminate, SIGKILL (9) force-kills uncatchably, SIGHUP (1) means hangup/reload. kill takes a PID, pkill/killall take a name, pgrep finds PIDs by name.
SMART (Self-Monitoring, Analysis and Reporting Technology)
A mechanism built into HDDs/SSDs that self-monitors health indicators (temperature, bad sectors, etc.) and reports signs of impending failure. smartd runs as a background monitor, while smartctl checks status and runs self-tests.
Prerequisites: Control flow (if / case / for / while)
HDD / SSD
Mass storage: an HDD is a magnetic disk—cheap and large but with moving parts and slower; an SSD uses flash memory—fast and shock-resistant but with limited write cycles. Optical storage (DVDs) is for distribution/archival.
Prerequisites: Distribution
Special permission bits (SUID/SGID/sticky bit)
Special permission bits: SUID (4000) runs as the file owner (e.g., passwd); SGID (2000) runs as the file group for executables, and on a directory makes new files inherit its group; the sticky bit (1000) lets only a file owner delete it within a directory (e.g., /tmp).
Prerequisites: Permissions and ownership
Time zone (timedatectl)
Regional time settings; the data lives under /usr/share/zoneinfo/, configured by symlinking /etc/localtime to one. On systemd, timedatectl set-timezone Asia/Tokyo persists it, the TZ variable switches temporarily, and tzselect picks interactively.
Prerequisites: Hard and symbolic links (ln)、systemd / systemctl
UEFI / BIOS
Firmware that runs right after power-on; it initializes hardware (POST self-test), selects and prioritizes the boot device, and loads the boot loader. UEFI is the successor to BIOS, supporting GPT disks and large capacities.
Prerequisites: Boot loader (GRUB2)
UUID / label (blkid)
Robust ways to identify a filesystem: using UUID= or a label in /etc/fstab survives device-order changes (e.g., /dev/sdb becoming /dev/sdc). Inspect UUIDs with blkid.
Prerequisites: Filesystems and mkfs、Filesystem mounting (/etc/fstab)
Virtual filesystems (/proc, /sys)
Information windows with no on-disk存在, generated in memory by the kernel: /proc exposes process/kernel state (e.g., /proc/cpuinfo) and /sys (sysfs) the device tree.
Prerequisites: Filesystems and mkfs、Kernel、Device management (udev/sysfs/D-Bus)
Virtual machine (VM)
A virtual computer running on a hypervisor with its own independent guest OS (including a kernel); it can run a different OS from the host but boots slower and uses more resources.
Prerequisites: Hypervisor、Kernel
Remote GUI (DISPLAY / xauth / X11 forwarding)
Displaying a remote GUI app on your local screen: the DISPLAY variable points to the target X server and xauth manages authorization. In practice, ssh -X (X11 forwarding) shows it over the SSH tunnel.
Prerequisites: Persisting jobs after disconnect (nohup/screen/tmux)
xargs / tee
xargs turns incoming text into arguments for the next command (find … | xargs rm)—a bridge to commands that take arguments, not stdin. tee duplicates a stream to both the screen and a file.
Prerequisites: find、Persisting jobs after disconnect (nohup/screen/tmux)、Standard streams (stdin / stdout / stderr)
Incremental backup
A backup method that copies only data changed since the previous backup (full or incremental). Each run is minimal in size, but restoring requires applying the full backup followed by every incremental in order.
Related: Full backup
Building and installing from source
The sequence of obtaining source code (via git clone or extracting a tarball), applying patches if needed, generating build settings with configure, and then compiling and installing with make and make install. It is a way to install software outside of a package manager.
Prerequisites: Packages and repositories、source (dot command)
System and hardware clocks (date / hwclock)
Linux keeps two clocks: the OS-maintained system clock (date/timedatectl) and the motherboard hardware clock (hwclock). hwclock --systohc writes system->hardware; --hctosys is the reverse.
Prerequisites: Time zone (timedatectl)
Operating Linux in the cloud
For cloud Linux servers, the provider controls everything outside the OS (power, network entry, physical placement). The management console is internet-reachable, so protect it with multi-factor authentication / one-time passwords (a leak loses every server). Region choice ties to regulation and data sovereignty; ephemeral storage vanishes on stop so keep no durable data there. Design for auto-recovery against provider maintenance (reboots).
Prerequisites: Console / terminal emulator、X Window System (X server / X client)
Container (Linux)
A lightweight runtime that shares the host OS kernel and isolates processes with namespaces; it starts no guest OS so it is fast and light, but can only run the host OS family.
Prerequisites: Kernel、Namespaces
Default route (default gateway)
The exit for packets destined outside your network; check with ip route (or route -n)—without it nothing leaves the local segment. Fix a wrong routing table with ip route del/add default.
Prerequisites: Exit status ($? / exit)、Network configuration (ip / ifconfig / nmcli)
dpkg (direct deb handling)
The low-level tool beneath apt, handling deb files directly (-i install, -r remove, -P purge). It resolves no dependencies. Query with -l list, -L package->files, -S file->package. dpkg-reconfigure re-runs a package interactive setup.
Prerequisites: Packages and repositories
Exit status ($? / exit)
A number indicating a command result: $? holds the last exit status (0 = success, non-zero = failure), and exit N sets a script own status. It underpins branching with && and ||.
Prerequisites: Login status (who/w/last)
Basic file operations (cp / mv / rm / mkdir)
Core commands to manage files/directories: cp copies, mv moves (renames), rm deletes, mkdir/rmdir create/remove (empty) directories, touch creates empty files or updates timestamps, file identifies type. Directory-wide operations need -r (recursive).
Prerequisites: Locating commands (which/whereis/type)
Command history (history)
A record of previously run commands: history lists them, !number re-runs one, !! repeats the last. Saved to ~/.bash_history on logout.
Related: Login status (who/w/last)
inode
The metadata record managing a file (size, owner, permissions, data location); a filename is just a label on an inode. ls -i shows inode numbers—matching numbers mean hard links.
Prerequisites: Permissions and ownership
Related: Hard and symbolic links (ln)
ISO image
An image format packing an optical disc into a single file; distributed as Linux install media, written to DVD/USB or mounted directly by a VM to boot.
Prerequisites: Docker image、Filesystem mounting (/etc/fstab)
lv* commands (logical volume operations)
LVM commands for logical volumes (LV): lvcreate carves an LV out of a VG, lvextend/lvresize grow it, and lvdisplay/lvs show LV information.
Prerequisites: LVM (logical volume management)
Octal (permission notation)
A base-8 numbering system using digits 0-7; Linux permissions are written as three octal digits summing r=4, w=2, x=1 (rwxr-xr-- is 754).
Prerequisites: Permissions and ownership
OSS community and ecosystem
The distributed development that sustains OSS: worldwide contributors send patches/pull requests to maintainers (the final gatekeepers). Communication happens on mailing lists (e.g., LKML), forums, and development sites (issue trackers). Distributions integrate upstream projects and deliver them to users.
Prerequisites: Distribution
Process monitoring (top / ps / pstree / uptime)
Commands to inspect running processes and load: top shows live CPU/memory leaders, ps a snapshot (ps aux), pstree the parent-child tree, uptime the uptime and load average.
Prerequisites: Snapshot
Related: Load average
Quoting (single / double / backquote)
Single quotes '…' keep everything literal (no expansion), double quotes "…" expand $variables, and backquotes `…` (= $(…)) perform command substitution, replaced by the output.
Related: Command substitution
Redirection (> / >> / 2>&1)
Re-points stream I/O: > overwrites stdout to a file, >> appends, < feeds a file to stdin. Capture both streams with > file 2>&1 (order matters); discard into /dev/null.
Shell startup files (login / non-login shells)
A login shell (e.g., ssh login) reads /etc/profile then only the first of ~/.bash_profile, ~/.bash_login, ~/.profile; a non-login shell (a new terminal tab) reads /etc/bash.bashrc then ~/.bashrc. Put environment variables in the profile files and aliases/functions in .bashrc; on logout ~/.bash_logout runs.
Prerequisites: Alias / shell builtin、Shell (bash)
Device management (udev/sysfs/D-Bus)
udev detects hot-plug events and dynamically creates/names device files in /dev; sysfs (/sys) is the device tree the kernel exposes, and D-Bus is the IPC that notifies desktops and services of events.
Prerequisites: Kernel
ulimit / TMOUT
ulimit caps resources for the shell and its children (-n open files, -u processes, -c core size). TMOUT is the idle seconds before auto-logout, set in a profile as a defense against unattended terminals.
Prerequisites: Child process、Shell (bash)
Wildcards (globbing)
Shell expansion of filenames by pattern: * matches any run of characters, ? exactly one, [a-c] a set/range. Note the * differs in meaning from a regex *.
Prerequisites: Shell (bash)
Related: Regular expression
Absolute and relative paths
An absolute path starts from / (the full location, /etc/hosts); a relative path is from the current location (./script.sh, ../dir). Check the current directory with pwd.
Related: PATH
at / anacron
at schedules a one-time run (at 23:00, at now + 2 hours; atq lists, atrm cancels; control via at.allow/at.deny). anacron manages daily-or-longer periods by interval and runs jobs missed while powered off after boot (config in /etc/anacrontab).
Prerequisites: Control flow (if / case / for / while)
Participating in the ecosystem (bug reports)
Participation can be graduated: use (itself a form of testing) -> advocacy -> bug reports -> docs/translation/patches. A good bug report includes environment (OS/version), expected vs actual behavior, and reproduction steps, filed on the issue tracker. You can contribute without writing code.
Prerequisites: OSS community and ecosystem
Character encodings and iconv
Ways to represent characters as numbers: ASCII is the 7-bit base for letters/symbols, Unicode assigns numbers to every script with UTF-8 (ASCII-compatible, the Linux default) as its main encoding; ISO-8859 is for European languages, ISO-2022-JP the Japanese email tradition. Convert with iconv -f from -t to (rescuing mojibake).
Command substitution
A notation embedding a command output inline: $(command) or `command` (backquotes), e.g., FILES=$(ls *.log) captures the result into a variable.
cron / crontab (periodic scheduling)
Runs tasks periodically at set times: edit with crontab -e using the format "minute hour day month weekday command". User jobs live in /var/spool/cron/, system ones in /etc/crontab (with a user column), /etc/cron.d/, and cron.{hourly,daily,weekly,monthly}/. Access control via cron.allow/cron.deny (allow wins if present).
docker (container runtime)
A runtime/tool to create, start, and stop containers; docker run launches from an image, docker start / docker stop operate on existing containers.
Prerequisites: Docker image
Shell functions
A reusable part naming a routine: define with name() { … } or function name { … }; inside, $1 refers to the function own argument.
Prerequisites: Shell (bash)
GnuPG (gpg)
A public-key tool to encrypt, decrypt, and sign files. Encrypt with the recipient public key (gpg -e -r recipient) so only they can decrypt with their private key; sign with your own private key. The keyring is ~/.gnupg/, with gpg-agent managing passphrases.
Prerequisites: SSH key generation and management (ssh-keygen / ssh-agent)
Copyleft licenses (GPL/AGPL/LGPL)
Copyleft licenses: GPL is the flagship, extending disclosure to the linked whole; AGPL extends it to network provision (SaaS); LGPL is the library relaxation where mere linking does not propagate.
Prerequisites: Copyleft and permissive
Job control (bg / fg / jobs)
Running commands in the foreground/background from the shell: trailing & backgrounds, Ctrl+Z suspends, bg resumes in the background, fg brings to the foreground, jobs lists them.
Prerequisites: Shell (bash)
Journaling
A mechanism that records write operations before performing them, keeping the filesystem consistent through power loss; provided by ext3/ext4/XFS.
Prerequisites: Filesystems and mkfs
Legacy service management (inetd / xinetd / chkconfig)
Pre-systemd service management: inetd/xinetd are super-servers that spawn services on demand (config in /etc/xinetd.d/); chkconfig/service are the legacy RHEL autostart and start/stop tools. Stopping unused services shrinks the attack surface.
Prerequisites: systemd / systemctl
Load average
A system-load metric averaging the number of runnable/running processes; uptime and top show three values (1/5/15 minutes) that you compare against the CPU core count to judge overload.
Locale (LANG / LC_ALL)
A combination of language, region, and encoding (ja_JP.UTF-8); precedence is LC_ALL (forces all) > LC_* (per category) > LANG (default). When scripts parse command output, pin LANG=C (English, byte order) to remove locale variation. Inspect with locale (-a lists). This is internationalization (i18n) and localization (l10n) configuration.
Prerequisites: Character encodings and iconv
logrotate
Automates rotation, compression, and deletion of text logs; the global /etc/logrotate.conf plus per-package /etc/logrotate.d/ define rules like "weekly, keep 4, compress", run periodically.
Prerequisites: Packages and repositories
man (manual)
Displays a command online manual (man ls); man -k keyword (= apropos) finds related commands by keyword.
Open source (OSS)
Software whose source code is published with guaranteed freedom to use, modify, and redistribute (free as in freedom, not price). Not a waiver of rights—it is a copyrighted work imposing terms via a license, provided without warranty and developed continuously.
Prerequisites: source (dot command)
Account files (/etc/passwd / shadow / group)
Three files holding account data: /etc/passwd has basic user info (world-readable, no real passwords), /etc/shadow the hashed passwords and aging (root-only), /etc/group the groups and members. Verify with id (UID/GID/groups) or getent (via NSS, including LDAP); set passwords with passwd.
Prerequisites: DNS client config (host / dig / resolv.conf)
Permissive licenses (BSD/MIT/Apache/MPL)
Permissive licenses and a middle ground: BSD and MIT allow closing modifications with minimal terms; Apache License 2.0 adds explicit patent grants; MPL is file-level copyleft (only modified files disclosed). The public domain claims no copyright.
Prerequisites: Copyleft and permissive
Package group
A bundle of packages selectable by purpose at install time (e.g., a minimal server set, a desktop environment); can be added later as a unit.
Prerequisites: Packages and repositories
rpm (direct RPM handling)
The query-rich low-level tool beneath yum: -qa list all, -qi info, -qR requires, -ql package->files, -qf file->package, -V verify tampering, --checksig signature. Add -p to inspect an uninstalled rpm file. It resolves no dependencies.
Prerequisites: Packages and repositories
Script debugging (bash -x)
Ways to diagnose a misbehaving script: bash -x prints each executed command after variable expansion (an execution trace), and bash -v echoes lines as read.
Prerequisites: Shell (bash)
SSH key generation and management (ssh-keygen / ssh-agent)
ssh-keygen generates a key pair (-t ed25519 is the current best; RSA/ECDSA/Ed25519). A passphrase encrypts the private key file itself. ssh-agent holds decrypted keys in memory, and ssh-add registers them so the passphrase is entered only once per session.
Notifying users
Mechanisms for communicating with users before or during a session. /etc/issue and /etc/issue.net appear before the login prompt, /etc/motd appears right after login, and wall broadcasts a message to all logged-in users immediately. shutdown warns users before the system goes down.
Prerequisites: Shutdown and reboot commands (shutdown/reboot/halt/poweroff)
virsh
A CLI to manage virtual machines via libvirt; virsh start / virsh shutdown start and stop VMs.
Prerequisites: Shutdown and reboot commands (shutdown/reboot/halt/poweroff)
X management layers (display manager/window manager/desktop environment)
The three X management layers: the display manager (e.g., GDM) provides the graphical login, the window manager handles window frames/movement/stacking, and the desktop environment (GNOME/KDE) bundles the full desktop. startx launches X manually without a display manager.
Prerequisites: Remote GUI (DISPLAY / xauth / X11 forwarding)
yum / dnf (RHEL family)
Repository-based package management on RHEL/CentOS (successor dnf): yum update upgrades packages (index auto-refreshes), plus install/remove/search/info. provides reverse-looks-up the package for a file; yumdownloader only downloads. Repositories are .repo files in /etc/yum.repos.d/, with global settings in /etc/yum.conf.
Prerequisites: Packages and repositories

