Μάθημα 1Ανάλυση μνήμης: free -m, /proc/meminfo, slabtop, smem—ερμηνεία χρησιμοποιούμενης έναντι διαθέσιμης μνήμης και συμπεριφοράς swapΕδώ θα αναλύσετε τη συμπεριφορά μνήμης χρησιμοποιώντας free, /proc/meminfo, slabtop και smem. Η ενότητα εξηγεί την κρυπτογράφηση Linux, buffers και reclaim, πώς να ερμηνεύετε τη χρήση swap και πώς να ανιχνεύετε διαρροές μνήμης, θραύση και λανθασμένα όρια.
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 risksΜάθημα 2Χρήση δικτύου και μπουλοντιά: iftop, nload, ss, netstat, ip -s link, tc, tcpdump—εντοπισμός κορεσμού δικτύου και προβληματικών συνδέσεωνΑυτή η ενότητα καλύπτει τη διάγνωση χρήσης δικτύου και μπουλοντιών χρησιμοποιώντας iftop, nload, ss, ip, tc και tcpdump. Θα μάθετε να εντοπίζετε κορεσμό, θορυβώδεις γείτονες, καταστάσεις συνδέσεων και προβλήματα επιπέδου πακέτων που συμβάλλουν σε αργές εφαρμογές.
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 tcpdumpΜάθημα 3Καθυστέρηση αποθήκευσης και βαθύτερο I/O: blktrace, bpftrace (βασικά scripts), fio για δοκιμές—πώς να μετράτε και ερμηνεύετε καθυστέρηση και απόδοσηΑυτή η ενότητα καλύπτει καθυστέρηση αποθήκευσης και βαθύτερη ανάλυση I/O χρησιμοποιώντας blktrace, βασικά scripts bpftrace και benchmarks fio. Θα μάθετε πώς να μετράτε καθυστέρηση και απόδοση, να ερμηνεύετε βάθος ουράς και να διακρίνετε όρια συσκευής από προβλήματα φόρτου εργασίας.
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 bottlenecksΜάθημα 4Έρευνα διεργασιών: ps, φίλτρα top/htop, pgrep, pidstat, nice/renice—πώς να βρίσκετε διεργασίες βαριές σε CPU και μνήμηΘα μάθετε να ερευνάτε διεργασίες με ps, φίλτρα top ή htop, pgrep, pidstat και nice ή renice. Η ενότητα δείχνει πώς να εντοπίζετε εργασίες βαριές σε CPU και μνήμη, να παρακολουθείτε I/O ανά διεργασία και να προσαρμόζετε προτεραιότητες για μείωση ανταγωνισμού.
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 reniceΜάθημα 5Γενική επισκόπηση πόρων συστήματος: top, htop, vmstat, mpstat, dstat—τι δείχνει το καθένα και αναμενόμενα πρότυπα εξόδουΕδώ θα μάθετε να διαβάζετε στιγμιότυπα πόρων συστήματος χρησιμοποιώντας εργαλεία όπως top, htop, vmstat, mpstat και dstat. Η ενότητα εστιάζει στην κατανόηση μετρήσεων CPU, μνήμης και φόρτου, και στην αναγνώριση κανονικών έναντι παθολογικών προτύπων χρήσης.
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 timelinesΜάθημα 6I/O δίσκου και έλεγχοι συστήματος αρχείων: iostat, iotop, sar -d, lsblk, df -h, du -sh, tune2fs, xfs_info—ανίχνευση μπουλοντιών I/O και χαμηλού χώρουΑυτή η ενότητα εστιάζει σε I/O δίσκου και ελέγχους συστήματος αρχείων χρησιμοποιώντας iostat, iotop, sar -d, lsblk, df, du, tune2fs και xfs_info. Θα μάθετε να ανιχνεύετε κορεσμό, συσσώρευση ουράς, σφάλματα συστήματος αρχείων και συνθήκες χαμηλού χώρου που υποβαθμίζουν την απόδοση.
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 checksΜάθημα 7Αρχεία καταγραφής συστήματος και journaling: journalctl (systemd), /var/log/messages, /var/log/syslog, auth logs—τι να ψάχνετε και γιατίΑυτή η ενότητα εξηγεί πώς να χρησιμοποιείτε systemd journalctl και κλασικά αρχεία καταγραφής όπως /var/log/messages, /var/log/syslog και αρχεία auth. Θα μάθετε ποια πρότυπα να ψάχνετε, πώς να φιλτράρετε θόρυβο και πώς τα αρχεία καταγραφής υποστηρίζουν ανάλυση ρίζας αιτίας.
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 incidentsΜάθημα 8Παρακολούθηση βασισμένη σε χρόνο και ιστορική: sar, sysstat, collectl—συλλογή και διάβασμα ιστορικών μετρήσεων για σύνδεση γεγονότωνΘα μάθετε πώς να συλλέγετε και ερμηνεύετε ιστορικές μετρήσεις χρησιμοποιώντας sar, sysstat και collectl. Η ενότητα εξηγεί πώς να προγραμματίζετε συλλογή δεδομένων, να διαβάζετε αναφορές χρονοσειρών και να συνδέετε ανωμαλίες απόδοσης με αλλαγές ρυθμίσεων ή αναπτύξεις.
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 windowsΜάθημα 9Πληροφορίες kernel και scheduler: dmesg, sysctl -a, παράμετροι /proc/sys/vm—τι αποκαλύπτουν μηνύματα kernel και ρυθμιζόμενες παράμετροιΕδώ θα εξερευνήσετε πληροφορίες kernel και scheduler χρησιμοποιώντας dmesg, sysctl και παραμέτρους /proc/sys/vm. Η ενότητα εξηγεί πώς μηνύματα kernel, ρυθμιζόμενες παράμετροι και συμπεριφορά scheduler αποκαλύπτουν προβλήματα υλικού, λανθασμένες ρυθμίσεις και επιλογές ρύθμισης.
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 changesΜάθημα 10Προσέγγιση προσδιορισμού ρίζας αιτίας: δέντρο αποφάσεων βήμα-βήμα για ταξινόμηση προβλημάτων ως CPU, RAM, I/O δίσκου ή δίκτυοΑυτή η ενότητα παρουσιάζει ένα πρακτικό δέντρο αποφάσεων για ανάλυση ρίζας αιτίας. Θα μάθετε πώς να ταξινομείτε περιστατικά ως δεμένα σε CPU, μνήμη, I/O δίσκου ή δίκτυο, ποια εργαλεία να εκτελείτε σε κάθε κλάδο και πώς να βελτιώνετε υποθέσεις επαναληπτικά με συλλεγμένα στοιχεία.
Initial triage and problem statementClassifying CPU versus I/O bound symptomsDistinguishing memory pressure from leaksIdentifying network versus local bottlenecksIterative hypothesis testing with metrics