System Monitoring
htop, btop, Netdata, Cockpit — what's actually happening on this box.
When you SSH into a box and need to know what's going on right now.
TUI / interactive
- ★ btop — beautiful, mouse-aware, the modern default; replaces htop / glances for many.
- ★ htop — classic; everywhere; still great.
- glances — Python, broader-scope (also network / disk); web mode.
- atop — captures historical data; great for "what was the system doing at 3 AM?"
- bashtop — older btop predecessor.
- gtop — Node-based; nice graphs.
- bottom (
btm) — Rust; modern alternative to btop.
Disk usage
- ★ ncdu — interactive disk usage. The default.
- ★ dust — modern Rust replacement; faster, prettier.
- duf — replaces
df; better tables. df -h,du -sh *— built-in classics.- gdu — Go alternative to ncdu.
I/O
- iotop — what's writing / reading?
- iostat (sysstat) — disk I/O metrics.
- dstat (or dool) — combined CPU / disk / network.
- biotop (BCC) — eBPF I/O analysis.
Process / memory
- ps aux — universal.
- pgrep / pkill — find / signal by name.
- ss — sockets; replaces netstat.
- free / vmstat — memory and VM stats.
- smem — accurate per-process memory (PSS).
- lsof — open files / sockets.
Whole-host dashboards
- ★ Netdata — beautiful per-node real-time + 1-second metrics. Free; cloud option for fleet aggregation. The "install on every box" pick.
- Cockpit (Red Hat) — web UI for managing servers; included with most modern distros.
- Webmin / Virtualmin — older web UI; still around.
- Zabbix / LibreNMS — heavier monitoring platforms.
- Munin — old-school; still works.
Linux performance toolkit
- perf — hardware perf counters; the deepest profiling tool on Linux.
- strace / ltrace — syscall / library call tracing.
- bpftrace / bcc — eBPF magic; see eBPF Tools.
- Brendan Gregg's flamegraph.pl — generate flame graphs from perf samples.
Containers / k8s
- lazydocker — TUI for Docker.
- ctop — top-style container view.
- k9s — see k8s CLI tools.
- kube-state-metrics + node-exporter — for Prometheus.
Hardware / sensors
- lm-sensors — temperature / fan / voltage.
- smartctl (smartmontools) — disk health.
- dmidecode — hardware inventory.
- hwinfo / lshw / lspci / lsblk / lsusb — hardware enumeration.
Patterns to adopt
- ★ Install Netdata on every box. Two minutes; free; gives you 90% of monitoring.
- htop or btop muscle memory. Pick one and learn its keybindings.
- Use atop for after-the-fact triage. "Box was slow at 02:14" — atop has the answer.
- Disk monitoring with smart + zfs/btrfs scrubs scheduled.
- OOM-killer logs in
dmesg— check there before you assume the app crashed itself.
Pick this if…
- Default install on every server: Netdata + htop / btop + ncdu.
- Need historical per-second data: atop.
- Web UI for managing boxes: Cockpit.
- Heavy multi-host monitoring: Zabbix or LibreNMS or Prometheus stack.
- Performance investigation: perf + bpftrace + flamegraph.