12.Linux для Начинающих - Процессы и Память: top, free, ps
Cuprins:
În Linux, o instanță de rulare a unui program se numește proces. Ocazional, atunci când lucrați pe o mașină Linux, poate fi necesar să aflați ce procese se execută în prezent.
Există o serie de comenzi pe care le puteți utiliza pentru a găsi informații despre procesele care rulează,
ps
,
pstree
și
top
sunt cele mai frecvent utilizate.
Acest articol explică modul de utilizare a comenzii
ps
pentru a lista procesele aflate în derulare și pentru a afișa informații despre aceste procese.
Cum se utilizează
ps
Command
Sintaxa generală a comenzii
ps
este următoarea:
ps
Din motive istorice și de compatibilitate, comanda
ps
acceptă mai multe tipuri diferite de opțiuni:
- Opțiuni în stil UNIX, precedate de o singură opțiune în stil dash.BSD, utilizate fără opțiuni dash.GNU lungi, precedate de două liniuțe.
Se pot amesteca diferite tipuri de opțiuni, dar în unele cazuri particulare pot apărea conflicte, așa că este mai bine să rămâneți la un singur tip de opțiune.
Opțiunile BSD și UNIX pot fi grupate.
În cea mai simplă formă, atunci când este folosită fără nicio opțiune,
ps
va imprima patru coloane de informații pentru cel puțin două procese care rulează în shell-ul curent, shell-ul în sine și procesele care se execută în shell atunci când a fost invocată comanda.
ps
Ieșirea include informații despre shell (
bash
) și procesul care rulează în acest shell (
ps
, comanda pe care ați tastat-o):
PID TTY TIME CMD 1809 pts/0 00:00:00 bash 2043 pts/0 00:00:00 ps
Cele patru coloane sunt etichetate
PID
,
TTY
,
TIME
și
CMD
.
-
PID- ID-ul procesului. De obicei, atunci când executați comandaps, cea mai importantă informație pe care o caută utilizatorul este procesul PID. Cunoașterea PID vă permite să omorați un proces care funcționează defectuos.TTY- Numele terminalului de control pentru proces.TIME- Timpul procesual cumulat al procesului, afișat în minute și secunde.CMD- Numele comenzii care a fost folosită pentru a începe procesul.
Rezultatul de mai sus nu este foarte util, deoarece nu conține prea multe informații. Puterea reală a comenzii
ps
vine atunci când este lansată cu opțiuni suplimentare.
Comanda
ps
acceptă un număr mare de opțiuni care pot fi utilizate pentru a afișa un grup specific de procese și informații diferite despre proces, dar este nevoie doar de o mână în utilizarea de zi cu zi.
ps
este cel mai frecvent utilizat cu următoarea combinație de opțiuni:
Formular BSD:
ps aux
- Opțiunea spune
pssă afișeze procesele tuturor utilizatorilor. Nu sunt afișate doar procesele care nu sunt asociate cu un terminal și procesele liderilor de grup.uînseamnă un format orientat către utilizator care oferă informații detaliate despre procese. Opțiuneaxinstruieștepssă enumere procesele fără un terminal de control. Acestea sunt în principal procese care sunt pornite la timpul de pornire și care se execută pe fundal.
Comanda afișează informații în unsprezece coloane etichetate
USER
,
PID
,
%CPU
,
%MEM
,
VSZ
,
RSS
,
STAT
,
START
,
TTY
,
TIME
și
CMD
.
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.8 77616 8604 ? Ss 19:47 0:01 /sbin/init root 2 0.0 0.0 0 0 ? S 19:47 0:00…
Am explicat deja etichetele
PID
,
TTY
,
TIME
și
CMD
. Iată o explicație a altor etichete:
-
USER- Utilizatorul care rulează procesul.%CPU- Utilizarea cpu a procesului.%MEM- Procentul dimensiunii setului rezident al procesului la memoria fizică a aparatului.VSZ- dimensiunea memoriei virtuale a procesului în KiB.RSS- Mărimea memoriei fizice pe care o folosește procesul.STAT- Codul stării procesului, cum ar fiZ(zombie),S(adormit) șiR(rulare).START- Ora la care a început comanda.
Opțiunea
f
spune
ps
să afișeze o vedere arbore a proceselor părinte / copil:
ps auxf
Comanda
ps
vă permite, de asemenea, să sortați ieșirea. De exemplu, pentru a sorta ieșirea pe baza utilizării memoriei, ați utiliza:
ps aux --sort=-%mem
Forma UNIX:
ps -ef
- Opțiunea
-eindicăpssă afișeze toate procesele.-feste o listă cu format complet, care oferă informații detaliate despre procese.
Comanda afișează informații în opt coloane etichetate
UID
,
PID
,
PPID
,
C
,
STIME
,
TIME
și
CMD
.
UID PID PPID C STIME TTY TIME CMD root 1 0 0 19:47 ? 00:00:01 /sbin/init root 2 0 0 19:47 ? 00:00:00…
Etichetele care nu sunt deja explicate au următorul sens:
-
UID- La fel caUSER, utilizatorul care rulează procesul.PPID- ID-ul procesului părinte.C- La fel ca%CPU, utilizarea procesorului de proces.STIME- La fel caSTART, ora la care a început comanda.
Pentru a vizualiza doar procesele care rulează ca un utilizator specific, tastați următoarea comandă, unde
linuxize
este numele utilizatorului:
Format definit de utilizator
Opțiunea
o
vă permite să specificați ce coloane sunt afișate atunci când executați comanda
ps
.
De exemplu, pentru a imprima informații numai despre
PID
și
COMMAND
, ar trebui să executați una dintre următoarele comenzi:
ps -efo pid, comm
Utilizarea
ps
Cu alte comenzi
ps
poate fi utilizat în combinație cu alte comenzi prin conducte.
ps -ef | less
Ieșirea comenzii
ps
poate fi filtrată cu
grep
. De exemplu, pentru a afișa doar procesul aparținând utilizatorului root pe care l-ați rula:
Concluzie
Comanda
ps
este una dintre cele mai des utilizate comenzi atunci când depanarea problemelor pe sistemele Linux. Are multe opțiuni, dar, de obicei, majoritatea utilizatorilor folosesc fie
ps aux
fie
ps -ef
pentru a aduna informații despre procesele de rulare.
Pentru mai multe informații despre
ps
, tastați
man ps
în terminalul dvs.
Utilizați linia de comandă cu comandă
Integrați linia de comandă, interfața grafică și o limbă puternică cu pachetul de instrumente Take Command. > Nu-ți place când vânezi un program pe care trebuie să-l faci, să-l găsești, și apoi să descoperi că face mai mult? Am găsit Command Command (100 $, încercare gratuită de 30 de zile) după ce am fost frustrat de linia de comandă necorespunzătoare din Windows. Am descoperit că mi-a dat ce vroiam și multe lucruri pe care nu știam că le-am vrut - dar acum cu siguranță o fac.
Opt dintre cele mai verzi supercomputere din lume au combinat acceleratori specializați, cum ar fi GPU-uri cu procesoare, pentru a spori performanța și pentru a face supercomputerele mai eficiente din punct de vedere energetic. la lista Green500, care este lansată de două ori pe an. Lista a fost lansată de același grup care compilează lista Top500.
Supercomputerele cu acceleratoare sunt de trei ori mai eficiente din punct de vedere energetic decât omologii lor non-accelerați de pe listă, potrivit lui Wu Feng, profesor asociat de inginerie electrică și informatică la Virginia Institutul Politehnic și Universitatea de Stat de Inginerie
Comanda Ls în linux (listă fișiere și directoare)
Comanda ls este una din comanda de bază pe care ar trebui să o cunoască orice utilizator Linux. Este utilizat pentru a lista informații despre fișiere și directoare din sistemul de fișiere.







