Linux Overview
Linux is the dominant operating system for servers, cloud, and containers. This section covers fundamentals: the file system hierarchy, boot process, memory management, signals, processes and threads, process lifecycle, and system calls. For containerization, see Docker.
Topics in This Section
Section titled “Topics in This Section”- File System — Hierarchy from
/, key directories, /proc and /sys, how filesystems work, and checking disk usage. - Boot Process — From power-on to login: BIOS/UEFI, bootloader, kernel, and typically systemd (or init on older systems); kernel modules and running a process as a service.
- Memory Management — Virtual memory, paging, swap, OOM, caching, overcommit, and identifying I/O vs CPU bound.
- Signals — What signals are, default for kill (SIGTERM), how the kernel delivers them, and handling without source code.
- Processes and Threads — Difference in memory model, creation, and IDs; tools and memory layout.
- Process Lifecycle — fork, exec, exit; zombie and orphan processes, and why you cannot kill a zombie.
- System Calls — User–kernel interface, how they work, strace, tracing, and troubleshooting application startup.
- Packet Capture — tcpdump and Wireshark: filters, production safety, and pairing with syscall tracing for network issues.
- Bash Scripting — Strict mode, quoting, functions, and glue around CLI tools.
- Application Servers and Proxies — nginx, httpd, and Tomcat roles in a typical stack.
- Network Configuration and Troubleshooting — ip, ss, routing, DNS client, firewalls, ping and traceroute, MTU.