LinuxAlternative

Linux · System Tools

nmon

nmon is a lightweight console tool that monitors CPU, memory, disk, network, and processes on Linux systems.

Open sourceFree
Be the first to rate
License
GPL-2.0
Latest version
16s

What is nmon?

nmon, short for "Nigel's performance Monitor", first appeared in 2009 as a shell script for AIX and later ported to Linux. Over the years it has become a staple for system administrators who need quick, real‑time insight into resource usage without a graphical interface.

The tool is aimed at power users and sysadmins who prefer terminal workflows. It runs inside a terminal session, displaying data in a grid that updates every few seconds, and can log data to a file for later analysis.

Compared to Windows Process Explorer, nmon feels more utilitarian: no mouse interaction, no fancy UI, but it delivers the same core metrics—CPU, memory, processes, I/O—directly in the console, which many Linux users find more efficient for remote or headless servers.

Best for: System administrators and power users who need lightweight, terminal‑based performance monitoring.

Key features of nmon

  • Real‑time CPU, memory, disk, network, and process stats
  • Configurable refresh rate
  • Supports logging to CSV for post‑analysis
  • Displays I/O per device and per process
  • Keyboard shortcuts for navigation
  • Can run as a background daemon
  • Supports multiple output formats (CSV, JSON)

Pros

  • Runs in any terminal, no GUI required
  • Very low resource footprint
  • Highly configurable and scriptable
  • Long history of stable releases

Cons

  • No graphical interface, steep learning curve for beginners
  • Limited to text output, no interactive charts
  • Requires manual key presses for navigation
  • Lacks advanced filtering compared to modern tools

Windows programs nmon replaces

How to install nmon on Linux

Ubuntu / Mintsudo apt install nmon
Debiansudo apt install nmon
Fedorasudo dnf install nmon
Arch / Manjarosudo pacman -S nmon
openSUSEsudo zypper install nmon

Tips for Windows users

If you come from Process Explorer, expect to use keyboard shortcuts (e.g., F1 for help, F2 to toggle views) instead of mouse clicks. nmon outputs data in CSV, which can be imported into spreadsheets for analysis. Unlike Process Explorer’s hierarchical view, nmon lists processes in a flat table; you’ll need to sort by PID or CPU to find what you need. Workflow changes: use the command line to start nmon (nmon -f -s 5 -c 60 to log every 5 seconds for 60 cycles) and then open the log file with awk or csvkit for deeper inspection.

nmon: frequently asked questions

How do I start nmon in logging mode?

Run nmon -f -s 5 -c 60 to log every 5 seconds for 60 cycles. The log file will be named nmon_YYYYMMDD_HHMMSS.csv.

Can I view network statistics with nmon?

Yes, press n while nmon is running to toggle the network view, which shows per‑interface throughput.

Is nmon available on all major distributions?

It is packaged in Arch, Debian, Fedora, openSUSE, and Ubuntu; you can also install it from source if needed.

Does nmon support multi‑core CPU monitoring?

Yes, it displays per‑CPU usage and aggregates totals, making it suitable for multi‑core systems.

Updated