Frage

Wenn ich „top“ ich kann sehen, welche CPU beschäftigt ist und welcher Prozess alle meine CPU verwendet wird.

Wenn ich „iostat -x“ kann ich sehen, was Laufwerk belegt ist.

Aber wie sehe ich, was Prozess alle Antriebs Durchsatz verwendet?

War es hilfreich?

Lösung

Sie suchen nach iotop (vorausgesetzt, Sie kernel> 2.6.20 und Python 2.5 haben). Gelingt das nicht, Sie suchen in in das Dateisystem Einhaken. Ich empfehle die ehemalige.

Andere Tipps

Um herauszufinden, welche im Zustand verarbeitet ‚D‘ (für Disk-Antwort zu warten) werden derzeit ausgeführt wird:

while true; do date; ps aux | awk '{if($8=="D") print $0;}'; sleep 1; done

oder

watch -n1 -d "ps axu | awk '{if (\$8==\"D\") {print \$0}}'"

Wed Aug 29 13:00:46 CLT 2012
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:00:47 CLT 2012
Wed Aug 29 13:00:48 CLT 2012
Wed Aug 29 13:00:49 CLT 2012
Wed Aug 29 13:00:50 CLT 2012
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:00:51 CLT 2012
Wed Aug 29 13:00:52 CLT 2012
Wed Aug 29 13:00:53 CLT 2012
Wed Aug 29 13:00:55 CLT 2012
Wed Aug 29 13:00:56 CLT 2012
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:00:57 CLT 2012
root       302  0.0  0.0      0     0 ?        D    May28   3:07  \_ [kdmflush]
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:00:58 CLT 2012
root       302  0.0  0.0      0     0 ?        D    May28   3:07  \_ [kdmflush]
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:00:59 CLT 2012
root       302  0.0  0.0      0     0 ?        D    May28   3:07  \_ [kdmflush]
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:01:00 CLT 2012
root       302  0.0  0.0      0     0 ?        D    May28   3:07  \_ [kdmflush]
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:01:01 CLT 2012
root       302  0.0  0.0      0     0 ?        D    May28   3:07  \_ [kdmflush]
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]
Wed Aug 29 13:01:02 CLT 2012
Wed Aug 29 13:01:03 CLT 2012
root       321  0.0  0.0      0     0 ?        D    May28   4:25  \_ [jbd2/dm-0-8]

Wie Sie aus dem Ergebnis sehen können, die jdb2 / dm-0-8 (ext4 Zeitschrift Prozess) und kdmflush sind Ihre Linux ständig blockieren.

Für weitere Details dieser URL könnte hilfreich sein: Linux Wait-IO Problem

oben auf auch gut funktioniert und lässt sich leicht installieren auch auf älteren CentOS 5.x-Systeme, die iotop nicht ausführen können . Hit d zu zeigen Platten Details, ? um Hilfe.

ATOP - mybox                           2014/09/08  15:26:00                           ------                            10s elapsed
PRC |  sys    0.33s |  user   1.08s |                | #proc    161  |  #zombie    0 |  clones    31 |                | #exit         16  |
CPU |  sys   4% |  user     11% |  irq       0%  | idle    306%  |  wait     79% |               |  steal     1%  | guest     0%  |
cpu |  sys   2% |  user      8% |  irq       0%  | idle     11%  |  cpu000 w 78% |               |  steal     0%  | guest     0%  |
cpu |  sys   1% |  user      1% |  irq       0%  | idle     98%  |  cpu001 w  0% |               |  steal     0%  | guest     0%  |
cpu |  sys   1% |  user      1% |  irq       0%  | idle     99%  |  cpu003 w  0% |               |  steal     0%  | guest     0%  |
cpu |  sys   0% |  user      1% |  irq       0%  | idle     99%  |  cpu002 w  0% |               |  steal     0%  | guest     0%  |
CPL |  avg1    2.09 |  avg5    2.09 |  avg15   2.09  |               |  csw    54184 |  intr   33581 |                | numcpu     4  |
MEM |  tot     8.0G |  free   81.9M |  cache   2.9G  | dirty   0.8M  |  buff  174.7M |  slab  305.0M |                |               |
SWP |  tot     2.0G |  free    2.0G |                |               |               |               |  vmcom   8.4G  | vmlim   6.0G  |
LVM |  Group00-root |  busy     85% |  read       0  | write  30658  |  KiB/w      4 |  MBr/s   0.00 |  MBw/s  11.98  | avio 0.28 ms  |
DSK |          xvdb |  busy     85% |  read       0  | write  23706  |  KiB/w      5 |  MBr/s   0.00 |  MBw/s  11.97  | avio 0.36 ms  |
NET |  transport    |  tcpi    2705 |  tcpo    2008  | udpi      36  |  udpo      43 |  tcpao     14 |  tcppo     45  | tcprs      1  |
NET |  network      |  ipi     2788 |  ipo     2072  | ipfrw      0  |  deliv   2768 |               |  icmpi      7  | icmpo     20  |
NET |  eth0    ---- |  pcki    2344 |  pcko    1623  | si 1455 Kbps  |  so  781 Kbps |  erri       0 |  erro       0  | drpo       0  |
NET |  lo      ---- |  pcki     423 |  pcko     423  | si   88 Kbps  |  so   88 Kbps |  erri           0 |  erro       0  | drpo       0  |
NET |  eth1    ---- |  pcki  22 |  pcko      26  | si    3 Kbps  |  so    5 Kbps |  erri       0 |  erro       0  | drpo       0  |

  PID                   RDDSK                    WRDSK                   WCANCL                    DSK                   CMD        1/1
 9862                      0K                   53124K                       0K                    98%                   java
  358                      0K                     636K                       0K                     1%                   jbd2/dm-0-8
13893                      0K                     192K                      72K                     0%                   java
 1699                      0K                      60K                       0K                     0%                   syslogd
 4668                      0K                      24K                       0K                     0%                   zabbix_agentd

Dies zeigt deutlich, java pid 9862 ist der Schuldige.

TL; DR

Wenn Sie iotop verwenden können, tun dies. Else könnte dies helfen.


Verwenden top, dann diese Verknüpfungen verwenden:

d 1 = set refresh time from 3 to 1 second

1   = show stats for each cpu, not cumulated

Dies hat Werte > 1.0 wa für mindestens einen Kern zeigen - wenn es keine diskwaits sind, gibt einfach keine IO-Last ist und keine Notwendigkeit, weiter zu suchen. Signifikante Belastungen in der Regel > 15.0 wa starten.

x       = highlight current sort column 
< and > = change sort column
R       = reverse sort order

Wählen Sie 'S', der Prozess-Status-Spalte. Umkehren der Reihenfolge, um so die ‚R‘ (Laufen) Prozesse oben dargestellt sind. Wenn Sie Prozesse ‚D‘ können vor Ort (für Disk wartet), haben Sie einen Indikator, was Ihre Ursache sein könnte.

Für KDE-Benutzer können Sie 'ctrl-esc' verwenden oben ein System actrivity Monitor aufrufen und es gibt E / A-Aktivitäten Diagramme mit Prozess-ID und Name.

Ich habe keine Berechtigung, Bild hochladen, aufgrund ‚neuen Benutzerstatus‘, aber Sie können unter das Bild sehen. Es hat eine Spalte für IO lesen und schreiben.

Haben Sie lsof (Liste geöffnete Dateien) in Betracht gezogen?

iotop mit dem Flag -a:

-a, --accumulated     show accumulated I/O instead of bandwidth
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top