Lesson 1Memory analysis: free -m, /proc/meminfo, slabtop, smem—interpreting used vs available memory and swap behaviorIn this lesson, participants will examine memory usage with tools like free, /proc/meminfo, slabtop, and smem. It covers Linux memory caching, buffers, and recovery processes, interpreting swap activity, and spotting memory leaks, fragmentation, or incorrect limit settings, adapted for local system needs in Eritrea.
Reading free -m and understanding cached memoryKey fields in /proc/meminfo for diagnosisUsing slabtop to inspect kernel slab usageUsing smem to attribute memory per processRecognizing swap thrashing and OOM risksLesson 2Network usage and bottlenecks: iftop, nload, ss, netstat, ip -s link, tc, tcpdump—identifying network saturation and problematic connectionsThis part discusses diagnosing network consumption and obstructions using iftop, nload, ss, ip, tc, and tcpdump. Learners will identify overloads, interfering users, connection statuses, and packet problems that slow down applications, with examples useful for Eritrean network setups.
Monitoring live bandwidth with iftop and nloadInspecting sockets and states with ssUsing ip -s link to view interface errorsBasics of tc for shaping and rate limitingTargeted packet capture with tcpdumpLesson 3Storage latency and deeper I/O: blktrace, bpftrace (basic scripts), fio for tests—how to measure and interpret latency and throughputHere, we explore storage delays and advanced input/output analysis with blktrace, simple bpftrace scripts, and fio tests. Participants learn to gauge latency and throughput, understand queue depths, and separate device constraints from workload problems, applicable to storage in Eritrean data centers.
Understanding latency, IOPS, and throughputUsing blktrace to inspect block I/O patternsIntroductory bpftrace scripts for disk latencyDesigning fio workloads that mimic productionReading fio reports and spotting bottlenecksLesson 4Process investigation: ps, top/htop filters, pgrep, pidstat, nice/renice—how to find CPU- and memory-heavy processesLearners will investigate running processes using ps, top or htop filters, pgrep, pidstat, and nice or renice commands. The lesson demonstrates finding high CPU and memory tasks, monitoring per-process input/output, and setting priorities to lessen conflicts, tailored for Eritrean server management.
Listing and filtering processes with psUsing pgrep and pkill safely and preciselyUsing pidstat for per process CPU and I/OFiltering top and htop by user or resourceAdjusting priorities with nice and reniceLesson 5System resource overview: top, htop, vmstat, mpstat, dstat—what each shows and expected output patternsThis lesson teaches reading overall system resource views with top, htop, vmstat, mpstat, and dstat. It emphasizes comprehending CPU, memory, and load indicators, and identifying normal from abnormal patterns, with practical tips for Eritrean computing environments.
Key CPU, load, and memory fields in topUsing htop for interactive process analysisvmstat for run queue, swap, and I/O insightmpstat for per-CPU utilization and steal timedstat for combined multi-resource timelinesLesson 6Disk I/O and filesystem checks: iostat, iotop, sar -d, lsblk, df -h, du -sh, tune2fs, xfs_info—detecting I/O bottlenecks and low spaceFocuses on disk input/output and filesystem wellness using iostat, iotop, sar -d, lsblk, df, du, tune2fs, and xfs_info. Learners detect overloads, queue accumulations, filesystem faults, and space shortages that harm performance, relevant for Eritrean storage systems.
Using iostat to spot busy and slow devicesUsing iotop to find I/O heavy processessar -d for historical disk utilization trendsChecking layout and types with lsblk and dfFinding space hogs with du and inode checksLesson 7System logs and journaling: journalctl (systemd), /var/log/messages, /var/log/syslog, auth logs—what to search for and whyExplains using systemd journalctl and traditional logs like /var/log/messages, /var/log/syslog, and auth logs. Learners identify search patterns, filter irrelevant data, and use logs for root cause investigation, adapted for logging in Eritrean infrastructures.
journalctl basics and useful filtering optionsReading /var/log/messages and /var/log/syslogFinding errors, warnings, and rate-limited eventsAnalyzing authentication and sudo related logsCorrelating log timestamps with incidentsLesson 8Time-based and historical monitoring: sar, sysstat, collectl—collecting and reading historical metrics to correlate eventsTeaches collecting and analyzing past metrics with sar, sysstat, and collectl. Covers scheduling data gathering, reading time-based reports, and linking performance irregularities to changes or updates, useful for historical analysis in Eritrea.
Enabling and configuring sysstat collectionUsing sar for CPU, memory, and I/O historyReading sar network and load average trendsUsing collectl for multi-resource timelinesCorrelating metrics with change windowsLesson 9Kernel and scheduler insights: dmesg, sysctl -a, /proc/sys/vm parameters—what kernel messages and tunables revealExplores kernel and scheduler details using dmesg, sysctl, and /proc/sys/vm settings. Discusses how kernel logs, adjustable parameters, and scheduler actions uncover hardware faults, wrong setups, and optimization choices for Eritrean systems.
Reading dmesg for hardware and driver issuesListing and querying sysctl tunable valuesKey /proc/sys/vm parameters for memoryScheduler related kernel parameters overviewSafely persisting kernel tuning changesLesson 10Approach to root cause determination: step-by-step decision tree to classify issues as CPU, RAM, disk I/O, or networkPresents a practical guide for finding root causes. Learners classify problems as CPU, memory, disk input/output, or network related, select appropriate tools per category, and refine ideas using evidence, suited for troubleshooting in Eritrea.
Initial triage and problem statementClassifying CPU versus I/O bound symptomsDistinguishing memory pressure from leaksIdentifying network versus local bottlenecksIterative hypothesis testing with metrics