Cum să utilizați comanda sar pe Linux

Publicat: 2022-06-16
Un terminal Linux pe ecranul unui laptop.
fatmawati achmad zaenuri/Shutterstock.com

Comanda sar vă permite să vedeți statistici de performanță pentru diferite elemente ale computerului dvs. Linux, atât pentru date în timp real, cât și pentru date istorice. Vă arătăm cum să utilizați această resursă grozavă.

LEGE: Cum să vizualizați statisticile de performanță a sistemului pe Chromebook

Comandamentul sar

Comanda sar , sau System Activity Reporter, face parte din pachetul sysstat . Captează un set de informații statistice, cum ar fi încărcarea procesorului, paginarea memoriei, utilizarea memoriei, utilizarea swap, I/O în rețea și multe altele. Vă face ca aceste date să fie accesibile în instantanee în timp real - care vă arată ce se întâmplă pe computerul dvs. chiar acum - și în rapoartele istorice.

Înțelegerea mediei de încărcare pe Linux și alte sisteme asemănătoare Unix
LEGATE Înțelegerea mediei de încărcare pe Linux și alte sisteme asemănătoare Unix

Se rulează în fundal ca un demon, adunând un set de date la fiecare zece minute. Datele pentru ziua curentă sunt scrise într-un fișier text. Este convertit într-un fișier binar pe măsură ce trece miezul nopții. Fișierele sunt suprascrise în fiecare lună, astfel încât să nu consume în mod constant capacitatea hard diskului.

Comanda sar vă permite să interogați sistemul și să vedeți statisticile. Dar mai întâi, va trebui să instalați pachetul sysstat .

Instalarea pachetului sysstat

Instalarea sysstat este foarte simplă. Folosim managerul de pachete al sistemului dumneavoastră Linux pentru a-l instala și apoi folosim systemd pentru a activa și a porni demonul de fundal.

Pentru a instala sysstat pe Ubuntu folosim apt:

 sudo apt install sysstat 

Instalarea sysstat cu apt pe Ubuntu

Pentru a instala sysstat pe Fedora, tastați:

 sudo dnf install sysstat 

Instalarea systat cu dnf pe Fedora

Și pentru a instala sysstat pe Manjaro, folosim pacman:

 sudo pacman -S sysstat 

Instalarea systat cu pacman pe Manjaro

Publicitate

Cu sysstat instalat, trebuie să-l activăm astfel încât să poată rula ca un daemon - un proces de fundal - de fiecare dată când porniți computerul și trebuie să-l pornim acum, astfel încât să îl putem folosi imediat. Folosim systemctl , parte a familiei de utilitare systemd , pentru a activa și a porni demonii.

 sudo systemctl enable sysstat 

Activarea demonului sysstat

 sudo systemctl start sysstat 

pornind demonul sysstat

Pentru a vedea ce versiune de sar utilizați și pentru a vă asigura că răspunde, puteți utiliza opțiunea -V (versiune):

 sar -V 

Verificarea versiunii de sar

Statistici în timp real cu sar

Puteți folosi sar pentru a vedea ce se întâmplă în interiorul computerului dvs. chiar acum. Și pentru că un instantaneu este doar asta - starea de joc la un anumit moment în timp - și uneori o tendință este mai utilă, puteți cere sar să afișeze mai multe instantanee cu un anumit număr de secunde între ele.

Statistici CPU

Pentru a vedea trei seturi de statistici CPU cu două secunde între ele, am folosi această comandă, care folosește opțiunea -u (CPU). Rețineți că intervalul este primul. Deci, această comandă arată „afișați statisticile CPU în pași de două secunde, pentru trei seturi de date”.

 sar -u 2 3 

Afișează trei seturi de statistici CPU

Întinderea ferestrei terminalului face ca masa să fie aliniată ordonat, astfel încât să fie mai ușor de citit.

Antetul pentru prima coloană este momentul în care a fost executată comanda. Valorile din coloană reprezintă momentul la care fiecare set de date a fost colectat. Celelalte coloane sunt:

  • CPU : numărul nucleului procesorului sau ALL pentru media tuturor nucleelor.
  • %Utilizator : procentul de timp petrecut rulând aplicații la nivel de utilizator, „în țara utilizatorilor”.
  • %Nice : procentul de timp petrecut rulând aplicații la nivel de utilizator, cu prioritate bună.
  • %system : procentul de timp petrecut executând procese la nivel de sistem, în nucleu.
  • %iowait : procentul de timp în care CPU a fost inactiv cu o solicitare I/O pe disc în așteptare.
  • %steal : Într-o mașină virtuală, acesta este procentul de timp în care CPU virtual a fost inactiv, deoarece CPU-ul gazdei hardware a deservit o altă mașină virtuală.
  • %idle : procentul de timp în care CPU a fost inactiv fără nicio solicitare de I/O pe disc în așteptare.
Publicitate

Linia finală este media liniilor precedente.

Pentru a vedea statisticile pentru un anumit nucleu, utilizați opțiunea -P (per-procesor). Acesta este urmat de numărul unui nucleu al procesorului sau de o listă sau de un interval de numere de nuclee, cum ar fi 0,1,4 sau 4-8 .

Această comandă analizează trei seturi de date cu o secundă între ele, pentru miezul 1. Amintiți-vă, nucleele sunt numerotate de la zero.

 sar -P 1 1 3 

Se afișează statisticile CPU pentru un singur nucleu

Statistici de paginare în memorie

Opțiunea -B (paging) face ca sar să afișeze statistici legate de paginarea memoriei pe hard disk. Vom cere două seturi de informații, cu cinci secunde între ele.

 sar -B 5 2 

Se afișează statisticile de paginare în memorie

Coloanele conțin următoarele informații.

  • pgpgin/s : numărul total de kiloocteți pe care i-a paginat sistemul (recuperați) de pe hard disk pe secundă.
  • pgpgout/s : Numărul total de kiloocteți pe care sistemul i-a paginat pe hard disk pe secundă.
  • eroare/e : numărul de erori de pagină, atât minore, cât și majore, făcute de sistem pe secundă.
  • majflt/s : Numărul de erori majore pe care sistemul le-a făcut pe secundă, care au necesitat încărcarea unei pagini de memorie de pe disc.
  • pgfree/s : Numărul de pagini plasate pe lista liberă de către sistem pe secundă.
  • pgscank/s : Numărul de pagini scanate de sistemul de management al memoriei kswapd daemon pe secundă.
  • pgscand/s : numărul de pagini scanate direct pe secundă.
  • pgsteal/s : numărul de pagini pe care sistemul le-a recuperat din cache pe secundă.
  • %vmeff : Calculat ca pgsteal / pgscan , acesta este o indicație a eficienței revendicărilor paginii.

Rate de transfer I/O

Pentru a vedea statisticile I/O și rata de transfer, utilizați opțiunea -b (notă, literă „b”). Solicităm trei seturi de date cu patru secunde între ele.

 sar -b 4 3 

Se afișează statisticile de transfer I/O

Aceasta este ceea ce susțin coloanele.

  • tps : numărul total de solicitări de transfer pe secundă care au fost făcute către dispozitive fizice. Rețineți că acesta este un număr de solicitări . Poate că nu toți au avut succes.
  • rtps : numărul total de solicitări de citire pe secundă emise dispozitivelor fizice.
  • wtps : numărul total de solicitări de scriere pe secundă emise dispozitivelor fizice.
  • dtps : numărul total de solicitări de eliminare pe secundă emise dispozitivelor fizice.
  • bread/s : cantitatea totală de date citite de pe dispozitivele fizice. Cifra este dată în blocuri de 512 octeți, pe secundă.
  • bwrtn/s : cantitatea totală de date scrise pe dispozitivele fizice în blocuri pe secundă.
  • bdscd/s : cantitatea totală de date aruncată în blocuri pe secundă.

Există multe mai multe categorii de informații pe care le puteți selecta pentru a le revizui. Toate sunt folosite în același mod. Puteți utiliza, de asemenea, opțiunea -A (toate) pentru a vedea o descărcare completă a tot ce vă poate arunca sar .

Consultați pagina de manual sar pentru lista completă.

LEGATE: Ce sunt vitezele de citire/scriere și de ce contează?

Statistici istorice Cu sar

Pentru a revizui oricare dintre datele istorice este pur și simplu un caz de adăugare a opțiunilor -s (start) și -e (end) la oricare dintre comenzile sar obișnuite. Orele sunt exprimate în ceasul de 24 de ore.

Publicitate

Pentru a vedea cum a fost încărcarea procesorului între 06:30 și 07:15 astăzi , vom folosi această comandă.

 sar -u -s 06:30:00 -e 07:15:00 

Se afișează date istorice de mai devreme astăzi

Pentru a vedea cum a fost situația într-o zi anterioară, utilizați un număr ca indicator de opțiune. Numărul indică ziua în care să raportați. Opțiunea -1 ar însemna ieri, opțiunea -2 ar însemna acum două zile și așa mai departe.

Să generăm un raport între orele 13:00 și 13:00, folosind datele de ieri.

 sar -u -1 -s 13:00:00 -e 13:30:00 

Se afișează informații istorice de ieri

O altă modalitate de a specifica ziua pentru care doriți să raportați este să utilizați numele fișierului de date din ziua respectivă pe linia de comandă. Facem acest lucru cu opțiunea -f (nume fișier).

Fișierele zilnice se numesc „saXX”, unde XX este înlocuit cu ziua lunii. Sunt create în folderul jurnal al computerului dvs. Linux. Dosarul jurnal sar se numește probabil „/var/log/sa/” sau „/var/log/sysstat/”.

Publicitate

Pe Ubuntu este „/var/log/sysstat/”, astfel încât formatul comenzii noastre pentru a vedea utilizarea CPU între 14:00 și 14:30 pentru a 21-a zi a acestei luni ar arăta astfel:

 sar -u -s 14:00:00 -e 14:30:00 -f /var/log/sysstat/sa21 

Afișarea datelor istorice dintr-un anumit fișier de date

Informația este putere

Și sar cu siguranță vă oferă suficiente informații pentru a lua decizii informate cu privire la performanța computerului dvs.

Dacă aveți un rol de asistență – sau sunteți suportul tehnologic pentru prietenii și familia dvs. – posibilitatea de a revizui datele istorice este o modalitate excelentă de a începe să cercetați o problemă care vă este raportată astăzi, dar care s-a întâmplat de fapt ieri. Sau săptămâna trecută.

LEGATE: Sistem lent? Cum să vezi dacă Linux este legat de memorie, procesor sau IO