What is PM2 and How Can You Use It?
In this article, you will learn what PM2 is and how it can be used…
If you manage a Linux server and notice slow performance, high disk usage, or unexplained I/O activity, iotop is the first tool you should reach for. It works like the familiar top command but focuses entirely on disk read and write activity, showing you exactly which process is responsible, in real time.
This guide covers everything you need to get iotop running on your system: installation commands for every major Linux distribution, including Ubuntu, Fedora, Debian, CentOS, Linux Mint, and Arch, followed by usage examples, a full flag reference, and fixes for the most common errors like iotop command not found.
Whether you’re installing iotop for the first time or troubleshooting why it isn’t working, you’ll find the exact command for your distro below.
iotop is a Linux command-line tool that monitors disk I/O (input/output) usage in real time, broken down by process. It works similarly to top, which monitors CPU and memory, but focuses specifically on which processes are reading from and writing to disk.
iotop is essential for diagnosing:
Select your Linux distribution below. iotop is available in the default repositories of all major distros, so no third-party sources are needed.
# Update package list sudo apt update # Install iotop sudo apt install iotop -y
# Update and install
sudo apt update
sudo apt install iotop -y
# Same as Ubuntu (apt-based)
sudo apt update
sudo apt install iotop -y
# Install using DNF sudo dnf install iotop -y # Or the maintained fork sudo dnf install iotop-c -y
# Install using YUM
sudo yum install iotop -y
# Install using DNF
sudo dnf install iotop -y
# Install using pacman
sudo pacman -S iotop
# Install using zypper
sudo zypper install iotop
After installing, confirm iotop is available by checking its version:
iotop --version iotop 0.6
iotop: command not found after installing, see the troubleshooting section below. The most common cause is that the install completed but the shell needs to be refreshed, or iotop was installed as iotop-c on newer Fedora systems.Fedora uses the DNF package manager. iotop is available in Fedora’s default repositories; no extra configuration or EPEL setup needed.
1. Open a terminal and ensure you have sudo privileges or are logged in as root.
2. Install iotop using DNF:

3. Run iotop to confirm it works:

On Fedora 40 and later, you can install either the original iotop or the maintained C rewrite iotop-c. Both are in the default Fedora repositories:

If you’ve searched for iotop on Fedora and seen both iotop and iotop-c as package options, here’s the difference:
| Feature | iotop (original) | iotop-c (fork) |
|---|---|---|
| Language | Python | C |
| Maintenance | No longer active | Actively maintained |
| Performance | Slower (Python overhead) | Faster, lower resource use |
| Commands | iotop |
iotop-c or iotop (aliased) |
| Fedora package | dnf install iotop |
dnf install iotop-c |
| Ubuntu/Debian | apt install iotop |
Not in default apt repos |
| Recommended? | Still works | Yes, on Fedora 36+ |
For Ubuntu and Debian users: stick with apt install iotop. For Fedora users: sudo dnf install iotop-c is the better long-term choice, but either works.
Once installed, iotop is run from the terminal. It requires root privileges to access per-process I/O data from the kernel.
Basic usage

Common usage examples

Interactive keyboard shortcuts
While iotop is running, use these keyboard shortcuts to control the display:
| Key | Action |
|---|---|
| o | Toggle — show only processes with active I/O |
| a | Toggle — switch between current and accumulated I/O |
| r | Reverse sort order |
| ← → | Change the column being sorted |
| i | Change I/O priority of a process |
| u | Filter by user |
| p | Filter by process name |
| q | Quit iotop |
iotop-c on Fedora.Fix Ubuntu/Debian:
sudo apt install iotop -y
Fix Fedora:
# Try iotop-c if iotop is not found sudo dnf install iotop-c -y # Then run with: sudo iotop-c
Fix if installed but still not found: Close and reopen your terminal, or run hash -r to refresh the shell’s command cache.
Cause: iotop was run without root privileges. It needs access to kernel I/O statistics, which requires root access.
Fix: Always run iotop with sudo:
sudo iotop
Cause: iotop requires Linux kernel 2.6.20 or later (with the CONFIG_TASK_IO_ACCOUNTING option enabled). This is present in all modern kernels but may be missing on older or custom-built kernels.
Fix: Check your kernel version with uname -r. If it is below 2.6.20 or is a custom kernel, update your kernel or enable the task I/O accounting option during compilation.
Cause: By default, iotop shows all processes, including idle ones. If disk activity is very low, the list may appear empty or show zeros.
Fix: Use the -o flag to show only processes actively performing I/O:
sudo iotop -o
Cause: sudo uses a restricted PATH that may not include the directory where iotop was installed (commonly /usr/sbin).
Fix: Use the full path:
# Find where iotop is installed which iotop # Run with full path sudo /usr/sbin/iotop
iotop isn’t the only Linux monitoring tool. Here’s how it compares to other popular options so you can choose the right tool for your situation.
| Tool | Primary focus | Disk I/O | CPU / RAM | Network | Per-process | Best for |
|---|---|---|---|---|---|---|
| iotop | Disk I/O only | ✓ Detailed | ✗ | ✗ | ✓ | Diagnosing I/O spikes fast |
| atop | All resources over time | ✓ | ✓ | ✓ | ✓ | Historical analysis & logging |
| btop | All resources (visual) | Basic | ✓ | ✓ | ✓ | General monitoring with graphs |
| top / htop | CPU & memory | ✗ | ✓ Detailed | ✗ | ✓ | CPU/memory troubleshooting |
| iostat | Block device I/O | ✓ | Basic | ✗ | By device only | Disk throughput per device |
Rule of thumb: Use iotop when you need to find which specific process is hammering your disk. Use atop when you need historical logs of what happened. Use btop for a general-purpose visual dashboard.
Related: How to Monitor System Resource Usage Using atop
Explore more hosting insights, tips and industry updates.
In this article, you will learn what PM2 is and how it can be used…
Every domain name comes with a fixed registration period, usually ranging from 1 to 10…
This article will explain to you what is BoxTrapper and how to set up BoxTrapper…