Command-line Based System Monitor for Ubuntu Linux – nmon

The system monitoring utility that comes with Ubuntu is a GUI tool and it is pretty good too. But if you’re a system administrator or a user who usually hangs around the Terminal or the command-line, then wouldn’t it be nice to type a command from same command-line window and open a system monitor without having to “switch over” to the mouse?

If that’s so then you should check out this one called “nmon” (stands for Nigel’s Monitor). From real time system monitoring to saving the data for later analysis (can be useful for measuring the average system loads, power consumptions etc) it is a pretty powerful tool that’s worth checking out.

Main features…

*. It uses the “ncurses” for creating those GUI windows inside of your command-line window.


*. Fetches data from hardware devices such as: CPU load (system/user) and processor’s wait and idle seconds, Memory related data (RAM usage, full capacity, Swap file usages etc), Kernel status (system load, runtime etc), long-term CPU data (graphs with previous CPU usages), Disk status (read/write, transfer rate), various network related data (packets sent/received, bandwidth monitoring, transfer rate, etc), advanced CPU data fetching (manufacture, cache sizes, instructions etc), see running “top-processes” (which is quite handful while trying to find some of those hung-up apps) … these are only some of its main features to mention!.


*. Change the data update rate using keyboard (+/-).

*. Minimal Mode: Which only displays “busy” processes and their disk bandwidth usages.

*. A “Black & White” mode (it uses few colors by default for creating graphs).

*. As said before, you can save the collected system data to CSV files for later analysis.

nmon only showing Disk related data …

You can install nmon in Ubuntu 12.04 Precise Pangolin, 11.10 Oneiric Ocelot, 11.04 Natty Narwhal, 10.10 and 10.04 (might also work is older versions too) by simply typing the below command your Terminal window.

sudo apt-get install nmon

And whenever you want to launch it just type in its name in the command line (as shown below) which should open it inside of your command-line window.


It’s extremely easy to use actually. For instance once opened, it’ll show you the shortcut keys that activates different types of system monitoring (only single keys are associated for ease of use).

So if I wanted it to only monitor the CPU, then I’d use the keyboard shortcut “c” (pressing it again will disable it). If you want to monitor more hardware, then press the appropriate shortcut keys and they’ll be automatically added to the window.

Some of the shortcuts. If you want the full list, then enter “h” key …

As said above this might not be that tempting to the average users but when considering its features (certainly better than the default one in Ubuntu), as a system administrator “nmon” is most certainly a handy tool. Not for the fainthearted though 🙂 (kidding!).

An RHCE, 'Linux' user with 14+ years of experience. Extreme lover of Linux and FOSS. He is passionate to test every Linux distribution & compare with the previous release to write in-depth articles to help the FOSS community.

4 thoughts on “Command-line Based System Monitor for Ubuntu Linux – nmon”

  1. nice right up, I’ve normally used htop, but now I’m using nmon i like it, lots more useful detail than htop in the same screen real estate.

  2. hi. thanks for such a knowledgeable information. for example if i measure power usage by a process & it comes out to be say 3 watts. is there some tool by which i can view the breakup of this 3 watts under different heads such as memory, cpu, etc. as in how much was consumed in which component???


Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.