Provided by: iotop-c_1.21-1_amd64 bug

NAME

       iotop - simple top-like I/O monitor

SYNOPSIS

       iotop [OPTIONS]

DESCRIPTION

       iotop watches I/O usage information available in the Linux kernel (requires 2.6.20 or later) and displays
       a  table of current I/O usage by processes or threads on the system. At least the CONFIG_TASK_DELAY_ACCT,
       CONFIG_TASK_IO_ACCOUNTING, CONFIG_TASKSTATS and CONFIG_VM_EVENT_COUNTERS options need to  be  enabled  in
       your Linux kernel build configuration.

       Running iotop as non-root user is possible by adding the NET_ADMIN capability. This can be done by e.g.:

              $ sudo setcap 'cap_net_admin+eip' <path-to>/iotop

       Be  warned  that  this  will also allow other users to run it and get access to information that normally
       should not be available to them.

       iotop displays columns for the I/O bandwidth read and written by each process/thread during the  sampling
       period.  It  also  displays  the  percentage of time the thread/process spent while swapping in and while
       waiting on I/O.  For each process, its I/O priority (class/level) is shown.

       In addition, the total I/O bandwidth read and written during the sampling period are displayed at the top
       of the interface.  Total DISK READ and Total DISK WRITE values represent total read and  write  bandwidth
       between  processes  and  kernel threads on one side and kernel block device subsystem on the other. While
       Current DISK READ and Current DISK WRITE values represent corresponding bandwidths for current  disk  I/O
       between  the  kernel  block device subsystem and the underlying hardware (HDD, SSD, etc.). Thus Total and
       Current values may not be equal at any given moment of time  due  to  data  caching  and  I/O  operations
       reordering that take place inside the Linux kernel.

       Use  the  left  and right arrows to select the sort column, r or space to reverse the sorting order, o to
       toggle the --only option (this uses the visible values from the GRAPH column or the IO column in case the
       GRAPH column is hidden), p to toggle the --processes option, a to toggle the --accumulated option,  i  to
       change the priority of a thread or a process's thread, f to change filtering by UID/PID (--user and --pid
       options),  1-9  to toggle the visibility of the respective column, 0 to show all columns, up/down arrows,
       page-up/page-down/home/end keys to scroll and q to quit. Any unrecognized key will be ignored.

       All processes or threads that have exited are displayed grayed for the same time as  is  visible  in  the
       GRAPH  column  or 3 seconds when it is hidden. The invalid data points in the GRAPHS column are displayed
       inverse or with letter x (see option --dead-x  and  x  shortcut).  When  using  unicode  characters  each
       position contains two datapoints and only the positions with two invalid data points are reversed.

       It is possible for threads of a process to have different priority from their main process. This is shown
       with ! in the PRIO column of the main process as e.g. !be/4.

       Threads activity is always aggregated with and shown inside the main process.

       When  showing  threads, they always appear below their main process and are sorted in the same way as the
       processes.

       There are two ways to change the IO priority of a process or thread - press i and use  arrows  to  select
       the  process  or thread from the visible ones on screen or press i and type its TID (PID and TID have the
       same value for the main process). Then use tab and arrows to change the priority value and  confirm  with
       enter. Shortcuts esc or q will cancel this mode.

       To  change  the  UID  and  PID filters, press f and use tab to select the UID or PID field, then type the
       numerical id or n to remove the filter and confirm with enter. Filtering is always done by TID because it
       is unique. Note that for the main process PID is the same as TID. Shortcuts esc or  q  will  cancel  this
       mode.

       Starting  with  Linux  kernel 5.14.x task_delayacct is configurable at runtime and set to off by default.
       This setting can be changed in interactive mode by the Ctrl-T  shortcut.  In  batch  mode  a  warning  is
       printed when the setting is OFF. From the command line this can be enabled by:

              $ sudo sysctl kernel.task_delayacct=1

       and disabled again by:

              $ sudo sysctl kernel.task_delayacct=0

       It  is  advisable  to keep this option off when not using this or another monitoring program because when
       enabled it has some effect on system performance.

OPTIONS

       -v, --version
              Show the version number and exit

       -h, --help
              Show usage information and exit

       -H, --help-type=TYPE
              Set the type of interactive help shown. Accepted values for TYPE are none, win and inline.

       -o, --only
              Only show processes or threads actually doing I/O, instead of showing all  processes  or  threads.
              This can be dynamically toggled by pressing o

       -b, --batch
              Turn on non-interactive mode.  Useful for logging I/O usage over time

       -n NUM, --iter=NUM
              Set  the  number  of  iterations  before quitting (never quit by default).  This is most useful in
              non-interactive mode

       -d SEC, --delay=SEC
              Set the delay between iterations in seconds (1 second by  default).   Accepts  non-integer  values
              such as 1.1 seconds

       -p PID, --pid=PID
              A process/thread id to monitor (all by default)

       -u USER, --user=USER
              A  user  id  to  monitor  (all  by default).  The value will always be resolved first unless it is
              prefixed by + in which case it is treated as numeric only. Values that do not resolve  but  appear
              to be numeric are used as numeric

       -P, --processes
              Only show processes. Normally iotop shows processes and all threads

       -a, --accumulated
              Show  accumulated  I/O instead of bandwidth. In this mode, iotop shows the amount of I/O processes
              have done since iotop started

       -k, --kilobytes
              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

       -t, --time
              Add a timestamp on each line (implies --batch). Each line will be prefixed by the current time

       -c, --fullcmdline
              Show processes' full file path and parameters

       -1, --hide-pid
              Hide PID/TID column

       -2, --hide-prio
              Hide PRIO column

       -3, --hide-user
              Hide USER column

       -4, --hide-read
              Hide DISK READ column

       -5, --hide-write
              Hide DISK WRITE column

       -6, --hide-swapin
              Hide SWAPIN column

       -7, --hide-io
              Hide IO column

       -8, --hide-graph
              Hide GRAPH column

       -9, --hide-command
              Hide COMMAND column

       -g TYPE, --grtype=TYPE
              Set GRAPH column data source. Accepted values for TYPE are io, r, w, rw and sw.

       -q, --quiet
              Suppress some lines of header (implies --batch). This option can be specified up to three times to
              remove header lines
              -q     column names are only printed on the first iteration,
              -qq    column names are never printed,
              -qqq   the I/O summary is never printed

       -x, --dead-x
              Show dead processes/threads with letter x instead of inverse background

KEYBOARD SHORTCUTS

       q, Q   Exit

       <space>, r, R
              Toggle sort order

       <home> Scroll to the top of the list

       <end>  Scroll to the bottom of the list

       <page-up>
              Scroll one screen up

       <page-down>
              Scroll one screen down

       <up>   Scroll one line up

       <down> Scroll one line down

       <right>
              Sort by next column

       <left> Sort by previous column

       <esc>  Cancel ionice or filter selection. In case only the help window is open then close it

       o, O   Toggle showing only processes with IO activity

       p, P   Toggle showing processes/threads

       a, A   Toggle showing accumulated/current values

       ?, h, H
              Toggle showing shortcut help

       c, C   Toggle showing full command line

       1, 2, 3, 4, 5, 6, 7, 8, 9
              Toggle showing the column (column number corresponds to the shortcut)

       0      Show all columns

       g, G   Cycle GRAPH source (IO=IO, R=DISK READ , W=DISK WRITE, R+W=DISK READ+DISK WRITE, SW=SWAPIN). Using
              g will cycle forward and G will cycle backward.

       i, I   IOnice a process/thread (depends on process/thread display mode)

       f, F   Change UID and PID filters

       u, U   Toggle using Unicode/ASCII characters for pseudo graph

       x, X   Toggle the display mode of exited processes/threads between letter x and inverse background

       s, S   Toggle freeze of data collection

       Ctrl-T Toggle task_delayacct kernel sysctl

SEE ALSO

       ionice(1), top(1), vmstat(1), atop(1), htop(1)

AUTHOR

       The original Python iotop implementation was written by Guillaume  Chazarain.   This  rewrite  in  C  was
       started  in  2014  by  Vyacheslav Trushkin and reworked to include all missing features from the original
       Python code and several new ones in 2020 and 2021 by Boian Bonev.

       This manual page was started by Paul Wise for the Debian project and is placed in the public domain.

                                                January 28, 2021                                        IOTOP(8)