Summary
Nmon is an indispensable Swiss army knife type of utility. It does the work of at least six tools.
Its main strength is that with just a few keys you can have a single terminal displaying everything *you* want to monitor.
We’ve not described everything about nmon. Don’t forget its powerful capture mode (we’ll cover this in a future article). There’s also other real-time monitoring functionality that we’ve not included for space reasons such as NFS reporting.
Website: nmon.sourceforge.net
Support:
Developer: Nigel Griffiths
License: GNU General Public License v3 or any later version
nmon is written in C. Learn C with our recommended free books and free tutorials.
Pages in this article:
Page 1 – Introduction / Installation
Page 2 – In Operation
Page 3 – CPU Stats
Page 4 – Memory Stats
Page 5 – Disk Stats
Page 6 – Kernel Internal Stats
Page 7 – Virtual Memory Stats
Page 8 – Network Stats
Page 9 – Top-processes
Page 10 – Resources
Page 11 – Summary
Other tools in this series:
| Essential System Tools | |
|---|---|
| Alacritty | Innovative, hardware-accelerated terminal emulator |
| BleachBit | System cleaning software. Quick and easy way to service your computer |
| bottom | Process/system monitor for the terminal |
| btop++ | Monitor usage and stats for CPU, memory, disks, network and processes |
| catfish | Versatile file searching software |
| Clonezilla | Partition and disk cloning software |
| CPU-X | System profiler with both a GUI and text-based |
| Czkawka | Find duplicate files, big files, empty files, similar images, and much more |
| ddrescue | Data recovery tool, retrieving data from failing drives as safely as possible |
| dust | More intuitive version of du written in Rust |
| f3 | Detect and fix counterfeit flash storage |
| Fail2ban | Ban hosts that cause multiple authentication errors |
| fdupes | Find or delete duplicate files |
| Firejail | Restrict the running environment of untrusted applications |
| Glances | Cross-platform system monitoring tool written in Python |
| GParted | Resize, copy, and move partitions without data |
| GreenWithEnvy | NVIDIA graphics card utility |
| gtop | System monitoring dashboard |
| gWakeOnLAN | Turn machines on through Wake On LAN |
| hyperfine | Command-line benchmarking tool |
| HyFetch | System information tool written in Python |
| inxi | Command-line system information tool that's a time-saver for everyone |
| journalctl | Query and display messages from the journal |
| kmon | Manage Linux kernel modules with this text-based tool |
| Krusader | Advanced, twin-panel (commander-style) file manager |
| Nmap | Network security tool that builds a "map" of the network |
| nmon | Systems administrator, tuner, and benchmark tool |
| nnn | Portable terminal file manager that's amazingly frugal |
| pet | Simple command-line snippet manager |
| Pingnoo | Graphical representation for traceroute and ping output |
| ps_mem | Accurate reporting of software's memory consumption |
| SMC | Multi-featured system monitor written in Python |
| Timeshift | Reliable system restore tool |
| QDirStat | Qt-based directory statistics |
| QJournalctl | Graphical User Interface for systemd’s journalctl |
| TLP | Must-have tool for anyone running Linux on a notebook |
| Unison | Console and graphical file synchronization software |
| VeraCrypt | Strong disk encryption software |
| Ventoy | Create bootable USB drive for ISO, WIM, IMG, VHD(x), EFI files |
| WTF | Personal information dashboard for your terminal |

Please read our Comment Policy before commenting.
What terminal/window settings do I use in PuTTY when running nmon to get the correct line drawing?