Linux-Leistungsüberwachung mit Vmstat- und Iostat-Befehlen
Dies ist unsere fortlaufende Reihe von Linux-Befehlen und Linux-Leistungsüberwachung. In diesem Artikel erfahren Sie mehr über die Befehle Vmstat und Iostat, die auf allen wichtigen Unix-Systemen verfügbar sind -ähnliche (Linux/Unix/FreeBSD/Solaris) Betriebssysteme.
Der Befehl vmstat (auch bekannt als Statistiktool für den virtuellen Speicher) zeigt Informationen zu Prozessen, Speicher, Festplatte und CPU-Aktivität unter Linux an, während der Befehl iostat zur Überwachung der CPU-Auslastung verwendet wird , System-Eingabe-/Ausgabestatistiken für alle Festplatten und Partitionen.
Wenn die Befehle vmstat und iostat auf Ihrem Linux-Computer nicht verfügbar sind, installieren Sie bitte das Paket sysstat. Die Befehle vmstat, sar und iostat sind die Paketsammlung, die in sysstat – den Systemüberwachungstools – enthalten ist.
Sie können sysstat mithilfe des Quell-Tarballs über den Link „sysstat“ herunterladen und installieren. Wir empfehlen jedoch die Installation über den Paketmanager.
Installieren Sie Sysstat unter Linux
sudo apt install sysstat [On Debian, Ubuntu and Mint]
sudo yum install sysstat [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
sudo emerge -a app-admin/sysstat [On Gentoo Linux]
sudo pacman -S sysstat [On Arch Linux]
sudo zypper install sysstat [On OpenSUSE]
Lernen Sie Vmstat-Befehlsbeispiele unter Linux kennen
In diesem Abschnitt erfahren Sie mehr über 6 vmstat-Befehlsbeispiele und deren Verwendung anhand von Screenshots.
1. Listen Sie den aktiven und inaktiven Speicher auf
Im folgenden Beispiel gibt es sechs Spalten. Die Bedeutung der Spalten wird auf der Manpage von vmstat ausführlich erläutert. Die wichtigsten Felder sind free unter Memory und si, also unter der Swap-Spalte.
[root@tecmint ~]# vmstat -a
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free inact active si so bi bo in cs us sy id wa st
1 0 0 810420 97380 70628 0 0 115 4 89 79 1 6 90 3 0
- Frei – Anzahl der freien/untätigen Speicherplätze.
- si – Wird jede Sekunde in KiloBytes von der Festplatte eingelagert.
- so – Wird jede Sekunde in KiloBytes auf die Festplatte ausgelagert.
Hinweis: Wenn Sie vmstat ohne Parameter ausführen, wird ein zusammenfassender Bericht seit dem Systemstart angezeigt.
2. Führen Sie vmstat „X“ Sekunden und („Anzahl der Male“) aus.
Mit diesem Befehl wird vmstat alle zwei Sekunden ausgeführt und nach sechs Ausführungsintervallen automatisch gestoppt.
[root@tecmint ~]# vmstat 2 6
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 810420 22064 101368 0 0 56 3 50 57 0 3 95 2 0
0 0 0 810412 22064 101368 0 0 0 0 16 35 0 0 100 0 0
0 0 0 810412 22064 101368 0 0 0 0 14 35 0 0 100 0 0
0 0 0 810412 22064 101368 0 0 0 0 17 38 0 0 100 0 0
0 0 0 810412 22064 101368 0 0 0 0 17 35 0 0 100 0 0
0 0 0 810412 22064 101368 0 0 0 0 18 36 0 1 100 0 0
3. Vmstat mit Zeitstempeln
Der Befehl vmstat mit dem Parameter -t
zeigt Zeitstempel für jede gedruckte Zeile an, wie unten gezeigt.
[tecmint@tecmint ~]$ vmstat -t 1 5
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ ---timestamp---
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 632028 24992 192244 0 0 70 5 55 78 1 3 95 1 0 2012-09-02 14:57:18 IST
1 0 0 632028 24992 192244 0 0 0 0 171 514 1 5 94 0 0 2012-09-02 14:57:19 IST
1 0 0 631904 24992 192244 0 0 0 0 195 600 0 5 95 0 0 2012-09-02 14:57:20 IST
0 0 0 631780 24992 192244 0 0 0 0 156 524 0 5 95 0 0 2012-09-02 14:57:21 IST
1 0 0 631656 24992 192244 0 0 0 0 189 592 0 5 95 0 0 2012-09-02 14:57:22 IST
4. Statistiken verschiedener Zähler
Der Befehl vmstat mit dem Schalter -s
zeigt eine Zusammenfassung verschiedener Ereigniszähler und Speicherstatistiken an.
[tecmint@tecmint ~]$ vmstat -s
1030800 total memory
524656 used memory
277784 active memory
185920 inactive memory
506144 free memory
26864 buffer memory
310104 swap cache
2064376 total swap
0 used swap
2064376 free swap
4539 non-nice user cpu ticks
0 nice user cpu ticks
11569 system cpu ticks
329608 idle cpu ticks
5012 IO-wait cpu ticks
79 IRQ cpu ticks
74 softirq cpu ticks
0 stolen cpu ticks
336038 pages paged in
67945 pages paged out
0 pages swapped in
0 pages swapped out
258526 interrupts
392439 CPU context switches
1346574857 boot time
2309 forks
5. Überwachen Sie die Linux-Festplattenstatistiken
vmstat mit der Option -d
zeigt alle Festplattenstatistiken von Linux an.
[tecmint@tecmint ~]$ vmstat -d
disk- ------------reads------------ ------------writes----------- -----IO------
total merged sectors ms total merged sectors ms cur sec
ram0 0 0 0 0 0 0 0 0 0 0
ram1 0 0 0 0 0 0 0 0 0 0
ram2 0 0 0 0 0 0 0 0 0 0
ram3 0 0 0 0 0 0 0 0 0 0
ram4 0 0 0 0 0 0 0 0 0 0
ram5 0 0 0 0 0 0 0 0 0 0
ram6 0 0 0 0 0 0 0 0 0 0
ram7 0 0 0 0 0 0 0 0 0 0
ram8 0 0 0 0 0 0 0 0 0 0
ram9 0 0 0 0 0 0 0 0 0 0
ram10 0 0 0 0 0 0 0 0 0 0
ram11 0 0 0 0 0 0 0 0 0 0
ram12 0 0 0 0 0 0 0 0 0 0
ram13 0 0 0 0 0 0 0 0 0 0
ram14 0 0 0 0 0 0 0 0 0 0
ram15 0 0 0 0 0 0 0 0 0 0
loop0 0 0 0 0 0 0 0 0 0 0
loop1 0 0 0 0 0 0 0 0 0 0
loop2 0 0 0 0 0 0 0 0 0 0
loop3 0 0 0 0 0 0 0 0 0 0
loop4 0 0 0 0 0 0 0 0 0 0
loop5 0 0 0 0 0 0 0 0 0 0
loop6 0 0 0 0 0 0 0 0 0 0
loop7 0 0 0 0 0 0 0 0 0 0
sr0 0 0 0 0 0 0 0 0 0 0
sda 7712 5145 668732 409619 3282 28884 257402 644566 0 126
dm-0 11578 0 659242 1113017 32163 0 257384 8460026 0 126
dm-1 324 0 2592 3845 0 0 0 0 0 2
6. Statistiken in Megabyte anzeigen
Der vmstat zeigt Speicherstatistiken standardmäßig in Kilobyte an, aber Sie können mit dem Argument -S M
auch Berichte mit Speichergrößen in Megabyte anzeigen. Betrachten Sie das folgende Beispiel.
[root@tecmint ~]# vmstat -S M 1 5
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 346 53 476 0 0 95 8 42 55 0 2 96 2 0
0 0 0 346 53 476 0 0 0 0 12 15 0 0 100 0 0
0 0 0 346 53 476 0 0 0 0 32 62 0 0 100 0 0
0 0 0 346 53 476 0 0 0 0 15 13 0 0 100 0 0
0 0 0 346 53 476 0 0 0 0 34 61 0 1 99 0 0
Lernen Sie Iostat-Befehlsbeispiele unter Linux kennen
In diesem Abschnitt erfahren Sie mehr über 6 iostat-Befehlsbeispiele und deren Verwendung anhand von Screenshots.
7. CPU- und E/A-Statistiken der Festplatten anzeigen
iostat ohne Argumente zeigt CPU- und I/O-Statistiken aller Partitionen an, wie unten gezeigt.
[root@tecmint ~]# iostat
Linux 2.6.32-279.el6.i686 (linux-console.net) 09/03/2012 _i686_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.12 0.01 1.54 2.08 0.00 96.24
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 3.59 161.02 13.48 1086002 90882
dm-0 5.76 159.71 13.47 1077154 90864
dm-1 0.05 0.38 0.00 2576 0
8. Zeigt Linux-CPU-Statistiken an
iostat mit -c
-Argumenten zeigt nur CPU-Statistiken an, wie unten gezeigt.
[root@tecmint ~]# iostat -c
Linux 2.6.32-279.el6.i686 (linux-console.net) 09/03/2012 _i686_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.12 0.01 1.47 1.98 0.00 96.42
9. Zeigt die E/A-Statistiken der Linux-Festplatten an
iostat mit -d
-Argumenten zeigt wie gezeigt nur Festplatten-I/O-Statistiken aller Partitionen an.
[root@tecmint ~]# iostat -d
Linux 2.6.32-279.el6.i686 (linux-console.net) 09/03/2012 _i686_ (1 CPU)
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 3.35 149.81 12.66 1086002 91746
dm-0 5.37 148.59 12.65 1077154 91728
dm-1 0.04 0.36 0.00 2576 0
10. Zeigt die E/A-Statistiken eines bestimmten Geräts an
Standardmäßig werden Statistiken aller Partitionen angezeigt. Mit den Argumenten -p
und Gerätenamen werden nur Festplatten-E/A-Statistiken für bestimmte Geräte angezeigt, wie gezeigt.
[root@tecmint ~]# iostat -p sda
Linux 2.6.32-279.el6.i686 (linux-console.net) 09/03/2012 _i686_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.11 0.01 1.44 1.92 0.00 96.52
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 3.32 148.52 12.55 1086002 91770
sda1 0.07 0.56 0.00 4120 18
sda2 3.22 147.79 12.55 1080650 91752
11. LVM-Statistiken anzeigen
Mit dem Parameter -N
(Großbuchstaben) werden nur die LVM-Statistiken wie gezeigt angezeigt.
[root@tecmint ~]# iostat -N
Linux 2.6.32-279.el6.i686 (linux-console.net) 09/03/2012 _i686_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.11 0.01 1.39 1.85 0.00 96.64
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 3.20 142.84 12.16 1086002 92466
vg_tecmint-lv_root 5.13 141.68 12.16 1077154 92448
vg_tecmint-lv_swap 0.04 0.34 0.00 2576 0
12. Überprüfen Sie die Iostat-Version
Mit -V
(Großbuchstaben) wird die Version von iostat wie gezeigt angezeigt.
[root@tecmint ~]# iostat -V
sysstat version 11.7.3
(C) Sebastien Godard (sysstat orange.fr)
vmstat und iostat enthalten eine Reihe von Spalten und Flags, die möglicherweise nicht im Detail erklärt werden können. Wenn Sie mehr darüber erfahren möchten, können Sie sich die Manpages von vmstat und iostat ansehen.
man vmstat
man iostat
Wenn Sie diesen Artikel für nützlich halten, teilen Sie ihn bitte über unser Kommentarfeld unten mit.