vmstat
Artikel in Arbeit
Dieser Artikel wird momentan von JoernBruns erstellt. Als Fertigstellungsdatum wurde der 30.01.2011 angegeben.
Achtung: Insbesondere heißt das, dass dieser Artikel noch nicht fertig ist und dass wichtige Teile fehlen, oder sogar falsch sein können. Bitte diesen Artikel nicht als Anleitung für Problemlösungen benutzen!
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Es ist oft nicht einfach zu ermitteln, warum ein Computer langsam ist. Ist es eine zu langsame Festplatte, ist der Arbeitsspeicher zu klein oder die CPU zu langsam?
vmstat gibt tabellarisch Auskunft über Prozesse, Arbeitsspeicher, Auslagerung, Festplatten- und Prozessor-Aktivität. vmstat ist ein Hilfsmittel, um die Ursache eines Engpasses ermitteln zu können.
Installation¶
Das Programm vmstat ist in jeder Ubuntu-Installation bereits enthalten und braucht nicht extra installiert werden.
Aufruf¶
Kurze Syntaxbeschreibung für die Verwendung in der Shell:
Zur Ausgabe der durchschnittlichen Werte seit dem letzten Systemstart:
vmstat
Zur fortlaufenden Ausgabe der aktuellen Werte der jeweils letzten 4 Sekunden:
vmstat 4
Beenden¶
Zum Beenden der fortlaufenden Ausgabe ist Strg + C zu drücken.
Erklärung und Beurteilung der ausgegebenen Werte¶
Die Zahlen der ausgegebenen Liste müssen nun noch verstanden und eingeschätzt werden.
Hier eine Beispielausgabe:
root@Ubuntu-PC:~# vmstat 4 -a procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- r b swpd free inact active si so bi bo in cs us sy id wa 0 0 10864 879720 1255140 794940 0 0 1 0 0 1 4 4 92 0 2 0 10864 879588 1255212 795496 0 0 0 292 3181 4515 10 13 77 0 4 0 10864 874460 1256528 797296 0 0 20 903 3564 5011 13 20 65 1 0 0 10864 871992 1259180 798456 0 0 0 1436 3852 2585 3 4 87 6
Die ersten beiden Zeilen der Ausgabe sind Tabellen-Überschriften, deren Bedeutung und Interpretation hier beschrieben wird:
1.Zeile | 2.Zeile | Erklärung | Interpretation |
procs | r | Anzahl der auf Prozessor-Zeit wartenden Prozesse | Wert sollte nicht über längere Zeit höher sein als die Anzahl der CPUs. Wenn doch, Prozesse mit top analysieren und ev. eine schnellere CPU verwenden. |
b | Anzahl der nicht wieder belebaren schlafenden Prozesse | Sollte immer nahe "0" sein | |
memory | swpd | Summe des genutzten virtuellen Arbeitsspeichers | |
free | Summe des ungenutzten Arbeitsspeichers | ||
buff | Summe des als Festplatten-Puffer genutzten Arbeitsspeichers, ohne Option -a | ||
cache | als Cache genutzter Arbeitsspeicher, ohne Option -a | ||
inact | Summe ungenutzter Arbeitsspeicher, nur mit Option -a | ||
active | Summe von aktivem Arbeitsspeicher, nur mit Option -a | ||
swap | si | Summe des von Festplatte in Arbeitsspeicher verlagerten Speichers pro Sekunde | Sind hier Werte häufig größer als "0" ⇒ mehr Arbeitsspeicher notwendig |
so | Summe des von Arbeitsspeicher auf Festplatte verlagerten Speichers pro Sekunde | Sind hier Werte häufig größer als "0" ⇒ mehr Arbeitsspeicher notwendig | |
io | bi | eingehende Daten von Block-Device, meist Festplatte, Blöcke pro Sec. | |
bo | ausgehende Daten von Block-Device, meist Festplatte, Blöcke pro Sec. | ||
system | in | Anzahl der Interrupts pro Sekunde, inklusive der Uhr | |
cs | Anzahl der Kontext-Wechsel pro Sekunde | ||
cpu | us | Zeit-Verbrauch durch User-Prozesse | |
sy | Zeit-Verbrauch durch Kernel-System-Prozesse | ||
id | Ungenutzte Prozessor-Zeit | Sollte nicht über längerem Zeitraum auf 0% stehen, sonst ist schnellere CPU notwendig | |
wa | Zeit-Verbrauch mit warten auf Ein-/Ausgabe (z.B. Festplatte, Netzwerk) | Sollte durchgehend nahe "0" stehen, ansonsten ist IO-System (Festplatten?) zu langsam | |
st | CPU-Zeit, welche von virtuellen Maschinen abgezweigt wurde |
Optionen¶
Sinnvolle Parameter beim Aufruf von vmstat können sein:
vmstat [<Verzögerung>]
-a ⇒ Ausgabe von inaktivem/aktivem Arbeitsspeicher, ist immer zu empfehlen
-d ⇒ Ausgabe von Festplatten-Statistik
-p <Partition> ⇒ Ausgabe von Festplatten-Partitions-Statistik
-s ⇒ Ausgabe einer Arbeitsspeicher-Tabelle
<Verzögerung> ⇒ Die Verzögerungszeit zwischen den Updates in Sekunden.
Für weitere Optionen siehe
vmstat --help