
De sar commando laat je prestatiestatistieken zien voor verschillende elementen van je Linux-computer, voor zowel realtime als historische gegevens. We laten u zien hoe u deze geweldige bron kunt gebruiken.
Het sar-commando
De sar commando, of System Activity Reporter, maakt deel uit van de sysstat pakket. Het legt een reeks statistische informatie vast, zoals CPU-belasting, geheugenpaging, geheugengebruik, swapgebruik, netwerk-I/O en nog veel meer. Het maakt deze gegevens voor u toegankelijk in realtime snapshots – die u laten zien wat er op dit moment op uw computer gebeurt – en in historische rapporten.
Het draait op de achtergrond als een daemon en verzamelt elke tien minuten een set gegevens. De gegevens voor de huidige dag worden naar een tekstbestand geschreven. Het wordt geconverteerd naar een binair bestand als middernacht verstrijkt. De bestanden worden elke maand overschreven, zodat ze niet gestaag de capaciteit van uw harde schijf opslokken.
De sar commando laat je het systeem ondervragen en de statistieken bekijken. Maar eerst moet je de sysstat pakket.
Het sysstat-pakket installeren
Installeren sysstat is heel eenvoudig. We gebruiken de pakketbeheerder van uw Linux-systeem om het te installeren en gebruiken vervolgens systemd om de achtergronddaemon in te schakelen en te starten.
Installeren sysstat op Ubuntu gebruiken we apt:
sudo apt install sysstat

Installeren sysstat typ op Fedora:
sudo dnf install sysstat

En om sysstat op Manjaro te installeren, gebruiken we pacman:
sudo pacman -S sysstat

Met sysstat geïnstalleerd, moeten we het inschakelen zodat het als een daemon kan worden uitgevoerd – een achtergrondproces – elke keer dat u uw computer opstart, en we moeten het nu starten zodat we het meteen kunnen gebruiken. We gebruiken systemctldeel van de systemd familie van hulpprogramma’s, om daemons in te schakelen en te starten.
sudo systemctl enable sysstat

sudo systemctl start sysstat

Om te zien welke versie van sar je gebruikt, en om er zeker van te zijn dat het reageert, kun je de -V (versie) optie:
sar -V

Realtime statistieken met sar
Je kunt gebruiken sar om te zien wat er op dit moment in uw computer gebeurt. En omdat een momentopname precies dat is – de stand van zaken op een bepaald moment – en soms een… trend is nuttiger, kunt u vragen sar om meerdere snapshots weer te geven met een bepaald aantal seconden ertussen.
CPU-statistieken
Om drie sets CPU-statistieken te zien met twee seconden ertussen, zouden we deze opdracht gebruiken, die de -u (CPU) optie. Merk op dat het interval eerst komt. Dus deze opdracht luidt: “toon de CPU-statistieken in stappen van twee seconden, voor drie sets gegevens.”
sar -u 2 3

Als u uw terminalvenster uitrekt, wordt de tabel netjes uitgelijnd, zodat het gemakkelijker te lezen is.
De kop van de eerste kolom is het tijdstip waarop de opdracht is uitgevoerd. De waarden in de kolom zijn de tijd waarop elke set gegevens is verzameld. De andere kolommen zijn:
-
processor: Het nummer van de CPU-kern, of
ALLvoor het gemiddelde van alle kernen. - %Gebruiker: Het percentage tijd besteed aan het uitvoeren van applicaties op gebruikersniveau, “in userland”.
- %Leuk: Het percentage van de tijd besteed aan het uitvoeren van applicaties op gebruikersniveau, met mooie prioriteit.
- %systeem: Het percentage tijd besteed aan het uitvoeren van processen op systeemniveau, in de kernel.
- %iowait: het percentage van de tijd dat de CPU inactief was met een wachtend schijf-I/O-verzoek.
- %stelen: In een virtuele machine is dit het percentage van de tijd dat de virtuele CPU inactief was omdat de CPU van de hardwarehost een andere virtuele machine aan het onderhouden was.
- %inactief: Het percentage van de tijd dat de CPU inactief was zonder in behandeling zijnde schijf-I/O-verzoeken.
De laatste regel is het gemiddelde van de voorgaande regels.
Gebruik de om de statistieken voor een specifieke kern te zien -P (per processor) optie. Dit wordt gevolgd door het nummer van een CPU-kern, of een lijst of reeks kernnummers, zoals: 0,1,4 of 4-8.
Deze opdracht kijkt naar drie sets gegevens met één seconde ertussen, voor kern 1. Onthoud dat kernen vanaf nul worden genummerd.
sar -P 1 1 3

Statistieken voor geheugenoproep
De -B (paging) optie oorzaken sar om statistieken weer te geven met betrekking tot het oproepen van geheugen naar de harde schijf. We gaan om twee sets informatie vragen, met vijf seconden ertussen.
sar -B 5 2

De kolommen bevatten de volgende informatie.
- pgpgin/s: Totaal aantal kilobytes dat het systeem heeft ingefluisterd (opgehaald) van de harde schijf per seconde.
- pgpgout/s: Totaal aantal kilobytes dat het systeem heeft uitgepagineerd per seconde naar de harde schijf.
- fout/s: Aantal paginafouten, zowel kleine als grote, gemaakt door het systeem per seconde.
- majflt/s: Aantal grote fouten die het systeem per seconde heeft gemaakt, waarbij een geheugenpagina van schijf moest worden geladen.
- pgfree/s: Aantal pagina’s dat per seconde door het systeem op de vrije lijst wordt geplaatst.
-
pgscank/s: aantal pagina’s gescand door het geheugenbeheersysteem
kswapddaemon per seconde. - pgscand/s: Aantal direct gescande pagina’s per seconde.
- pgsteal/s: aantal pagina’s dat het systeem per seconde uit de cache heeft opgehaald.
-
%vmeff: Berekend als
pgsteal/pgscandit is een indicatie van de efficiëntie van paginareclaims.
I/O-overdrachtsnelheden
Om de I/O- en overdrachtssnelheidsstatistieken te zien, gebruikt u de -b (let op, kleine letter “b”) optie. We vragen om drie sets gegevens met vier seconden ertussen.
sar -b 4 3

Dit is wat de kolommen bevatten.
- tps: Totaal aantal overdrachtsverzoeken per seconde dat is gedaan naar fysieke apparaten. Let op: dit is een telling van verzoeken. Ze zijn misschien niet allemaal succesvol geweest.
- rtps: Totaal aantal leesverzoeken per seconde uitgegeven aan fysieke apparaten.
- wtps: Totaal aantal schrijfverzoeken per seconde uitgegeven aan fysieke apparaten.
- dtps: Totaal aantal verwijderingsverzoeken per seconde dat is afgegeven aan fysieke apparaten.
- brood/zo: Totale hoeveelheid gegevens gelezen van fysieke apparaten. Het cijfer wordt gegeven in blokken van 512 bytes per seconde.
- bwrtn/s: totale hoeveelheid gegevens die naar fysieke apparaten wordt geschreven in blokken per seconde.
- bdscd/s: Totale hoeveelheid verwijderde gegevens in blokken per seconde.
Er zijn nog veel meer categorieën informatie die u kunt selecteren om te bekijken. Ze worden allemaal op dezelfde manier gebruikt. U kunt ook de -A (alle) optie om een volledige dump van alles te zien sar naar je kan gooien.
Bekijk de sar man-pagina voor de volledige lijst.
Historische statistieken Met sar
Om een van de historische gegevens te bekijken, hoeft u alleen maar de -s (begin) en -e (eind)opties tijd tot een van de gebruikelijke sar commando’s. De tijden worden uitgedrukt in de 24-uurs klok.
Om te zien hoe de CPU-belasting was tussen 06:30 en 07:15 vandaaggebruiken we deze opdracht.
sar -u -s 06:30:00 -e 07:15:00

Gebruik een getal als optievlag om te zien hoe de situatie de vorige dag was. Het nummer geeft aan op welke dag er gerapporteerd moet worden. De -1 optie zou gisteren betekenen, de -2 optie zou betekenen twee dagen geleden, enzovoort.
Laten we een rapport genereren tussen 13:00 en 13:00 uur, gebruikmakend van de gegevens van gisteren.
sar -u -1 -s 13:00:00 -e 13:30:00

Een andere manier om de dag te specificeren waarover u wilt rapporteren, is door de naam van het gegevensbestand van die dag op de opdrachtregel te gebruiken. Dit doen we met de -f (bestandsnaam) optie.
De dagelijkse bestanden worden “saXX” genoemd, waarbij de XX wordt vervangen door de dag van de maand. Ze worden aangemaakt in de logmap van je Linux-computer. De sar log-map heet waarschijnlijk “/var/log/sa/” of “/var/log/sysstat/.”
Op Ubuntu is dit “/var/log/sysstat/”, dus het formaat van ons commando om het CPU-gebruik tussen 14:00 en 14:30 voor de 21e dag van deze maand te zien, ziet er als volgt uit:
sar -u -s 14:00:00 -e 14:30:00 -f /var/log/sysstat/sa21

Informatie is macht
En sar geeft u zeker voldoende informatie om weloverwogen beslissingen te nemen over de prestaties van uw computer.
Als je een ondersteunende rol hebt – of je bent de technische ondersteuning voor je vrienden en familie – is het kunnen bekijken van historische gegevens een geweldige manier om te beginnen met het onderzoeken van een probleem dat vandaag aan je wordt gemeld, maar dat zich gisteren heeft voorgedaan. Of vorige week.