Skip to content

Linux Overview

First PublishedLast UpdatedByAtif Alam

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.

  • 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.