{
    "mode": "man",
    "parameter": "IOTOP",
    "section": "8",
    "url": "https://www.chedong.com/phpMan.php/man/IOTOP/8/json",
    "generated": "2026-10-06T10:13:19Z",
    "synopsis": "iotop [OPTIONS]",
    "sections": {
        "NAME": {
            "content": "iotop - simple top-like I/O monitor\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "iotop [OPTIONS]\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "iotop watches I/O usage information output by the Linux kernel (requires 2.6.20 or later) and\ndisplays  a  table  of  current I/O usage by processes or threads on the system. At least the\nCONFIGTASKDELAYACCT, CONFIGTASKIOACCOUNTING, CONFIGTASKSTATS and CONFIGVMEVENTCOUN‐\nTERS options need to be enabled in your Linux kernel build configuration and since Linux ker‐\nnel 5.14, the kernel.taskdelayacct sysctl enabled.\n\niotop displays columns for the I/O bandwidth read and written by each  process/thread  during\nthe  sampling  period. It also displays the percentage of time the thread/process spent while\nswapping in and while waiting on I/O. For each process, its  I/O  priority  (class/level)  is\nshown.\n\nIn addition, the total I/O bandwidth read and written during the sampling period is displayed\nat  the  top  of  the interface.  Total DISK READ and Total DISK WRITE values represent total\nread and write bandwidth between processes and kernel threads on  the  one  side  and  kernel\nblock  device  subsystem  on the other. While Current DISK READ and Current DISK WRITE values\nrepresent corresponding bandwidths for current disk I/O between kernel block device subsystem\nand underlying hardware (HDD, SSD, etc.).  Thus Total and Current values may not be equal  at\nany  given  moment  of time due to data caching and I/O operations reordering that take place\ninside Linux kernel.\n\nUse the left and right arrows to change the sorting, r to reverse the  sorting  order,  o  to\ntoggle  the  --only option, p to toggle the --processes option, a to toggle the --accumulated\noption, q to quit or i to change the priority of a thread or a process's thread(s). Any other\nkey will force a refresh.\n",
            "subsections": []
        },
        "OPTIONS": {
            "content": "",
            "subsections": [
                {
                    "name": "--version",
                    "content": "Show the version number and exit\n",
                    "long": "--version"
                },
                {
                    "name": "-h --help",
                    "content": "Show usage information and exit\n",
                    "flag": "-h",
                    "long": "--help"
                },
                {
                    "name": "-o --only",
                    "content": "Only show processes or threads actually doing I/O, instead of showing all processes or\nthreads. This can be dynamically toggled by pressing o.\n",
                    "flag": "-o",
                    "long": "--only"
                },
                {
                    "name": "-b --batch",
                    "content": "Turn on non-interactive mode.  Useful for logging I/O usage over time.\n",
                    "flag": "-b",
                    "long": "--batch"
                },
                {
                    "name": "-n  --iter",
                    "content": "Set the number of iterations before quitting (never quit by default).   This  is  most\nuseful in non-interactive mode.\n",
                    "flag": "-n",
                    "long": "--iter"
                },
                {
                    "name": "-d  --delay",
                    "content": "Set  the delay between iterations in seconds (1 second by default).  Accepts non-inte‐\nger values such as 1.1 seconds.\n",
                    "flag": "-d",
                    "long": "--delay"
                },
                {
                    "name": "-p  --pid",
                    "content": "A list of processes/threads to monitor (all by default).\n",
                    "flag": "-p",
                    "long": "--pid"
                },
                {
                    "name": "-u  --user",
                    "content": "A list of users to monitor (all by default)\n",
                    "flag": "-u",
                    "long": "--user"
                },
                {
                    "name": "-P --processes",
                    "content": "Only show processes. Normally iotop shows all threads.\n",
                    "flag": "-P",
                    "long": "--processes"
                },
                {
                    "name": "-a --accumulated",
                    "content": "Show accumulated I/O instead of bandwidth. In this mode, iotop shows the amount of I/O\nprocesses have done since iotop started.\n",
                    "flag": "-a",
                    "long": "--accumulated"
                },
                {
                    "name": "-k --kilobytes",
                    "content": "Use kilobytes instead of a human friendly unit. This mode is useful when scripting the\nbatch mode of iotop. Instead of choosing the most appropriate unit iotop will  display\nall sizes in kilobytes.\n",
                    "flag": "-k",
                    "long": "--kilobytes"
                },
                {
                    "name": "-t --time",
                    "content": "Add a timestamp on each line (implies --batch). Each line will be prefixed by the cur‐\nrent time.\n",
                    "flag": "-t",
                    "long": "--time"
                },
                {
                    "name": "-q --quiet",
                    "content": "suppress  some  lines  of header (implies --batch). This option can be specified up to\nthree times to remove header lines.\n",
                    "flag": "-q",
                    "long": "--quiet"
                },
                {
                    "name": "--no-help",
                    "content": "Suppress the keyboard shortcuts help display.\n-q     column names are only printed on the first iteration,\n-qq    column names are never printed,\n-qqq   the I/O summary is never printed.\n",
                    "long": "--no-help"
                }
            ]
        },
        "SEE ALSO": {
            "content": "ionice(1), top(1), vmstat(1), atop(1), htop(1)\n",
            "subsections": []
        },
        "AUTHOR": {
            "content": "iotop was written by Guillaume Chazarain.\n\nThis manual page was started by Paul Wise for the Debian project and is placed in the  public\ndomain.\n\nOctober 1, 2021                                  IOTOP(8)",
            "subsections": []
        }
    },
    "summary": "iotop - simple top-like I/O monitor",
    "flags": [
        {
            "flag": "",
            "long": "--version",
            "arg": null,
            "description": "Show the version number and exit"
        },
        {
            "flag": "-h",
            "long": "--help",
            "arg": null,
            "description": "Show usage information and exit"
        },
        {
            "flag": "-o",
            "long": "--only",
            "arg": null,
            "description": "Only show processes or threads actually doing I/O, instead of showing all processes or threads. This can be dynamically toggled by pressing o."
        },
        {
            "flag": "-b",
            "long": "--batch",
            "arg": null,
            "description": "Turn on non-interactive mode. Useful for logging I/O usage over time."
        },
        {
            "flag": "-n",
            "long": "--iter",
            "arg": null,
            "description": "Set the number of iterations before quitting (never quit by default). This is most useful in non-interactive mode."
        },
        {
            "flag": "-d",
            "long": "--delay",
            "arg": null,
            "description": "Set the delay between iterations in seconds (1 second by default). Accepts non-inte‐ ger values such as 1.1 seconds."
        },
        {
            "flag": "-p",
            "long": "--pid",
            "arg": null,
            "description": "A list of processes/threads to monitor (all by default)."
        },
        {
            "flag": "-u",
            "long": "--user",
            "arg": null,
            "description": "A list of users to monitor (all by default)"
        },
        {
            "flag": "-P",
            "long": "--processes",
            "arg": null,
            "description": "Only show processes. Normally iotop shows all threads."
        },
        {
            "flag": "-a",
            "long": "--accumulated",
            "arg": null,
            "description": "Show accumulated I/O instead of bandwidth. In this mode, iotop shows the amount of I/O processes have done since iotop started."
        },
        {
            "flag": "-k",
            "long": "--kilobytes",
            "arg": null,
            "description": "Use kilobytes instead of a human friendly unit. This mode is useful when scripting the batch mode of iotop. Instead of choosing the most appropriate unit iotop will display all sizes in kilobytes."
        },
        {
            "flag": "-t",
            "long": "--time",
            "arg": null,
            "description": "Add a timestamp on each line (implies --batch). Each line will be prefixed by the cur‐ rent time."
        },
        {
            "flag": "-q",
            "long": "--quiet",
            "arg": null,
            "description": "suppress some lines of header (implies --batch). This option can be specified up to three times to remove header lines."
        },
        {
            "flag": "",
            "long": "--no-help",
            "arg": null,
            "description": "Suppress the keyboard shortcuts help display. -q column names are only printed on the first iteration, -qq column names are never printed, -qqq the I/O summary is never printed."
        }
    ],
    "examples": [],
    "see_also": [
        {
            "name": "ionice",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/ionice/1/json"
        },
        {
            "name": "top",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/top/1/json"
        },
        {
            "name": "vmstat",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/vmstat/1/json"
        },
        {
            "name": "atop",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/atop/1/json"
        },
        {
            "name": "htop",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/htop/1/json"
        }
    ]
}