În sistemele de operare bazate pe Linux și Unix, o instanță de comandă care rulează este cunoscută ca proces. Puteți identifica fiecare proces printr-un ID unic de proces. Linux oferă instrumente de linie de comandă pentru a enumera, gestiona și monitoriza eficient aceste procese.

Puteți folosi aceste instrumente pentru a prioritiza fiecare proces sau le puteți pune în fundal sau în prim-plan pentru a gestiona eficient resursele sistemului.

Acest ghid pentru gestionarea proceselor în Linux include instrumente precum ps, kill, renice și alte comenzi care ajută administratorii de sistem în gestionarea și listarea proceselor.

Listarea proceselor cu comanda ps

Cel mai vechi și cel mai frecvent utilizat utilitar de linie de comandă pentru a enumera procesele care rulează în prezent pe Linux este ps. Chiar dacă comanda de sus este un alt mod interactiv și orientat spre ecran de a gestiona și lista procesele sistemului, ps afișează și informații suplimentare, cum ar fi resursele pe care fiecare proces le consumă.

instagram viewer

Datorită unui mediu multiutilizator, fiecare proces în Linux este asociat cu un cont separat de utilizator și de grup. Prin urmare, informațiile despre cont cu detaliile procesului vă ajută să accesați resursele de sistem pe care le poate folosi un proces.

De exemplu, procesele care rulează cu privilegii de superutilizator pot accesa mai multe resurse de sistem decât un utilizator obișnuit și aici ps ajută administratorii de sistem.

Următoarea ieșire este un exemplu de listare a proceselor cu nume de utilizator, timpul scurs și memoria asociată și consumul CPU:

De asemenea, puteți observa coloana STAT care arată starea procesului în derulare. R reprezintă procesul rulează în prezent și S este un proces de adormire cu un semn plus care indică operațiunile din prim-plan.

Puteți enumera toate procesele utilizatorului curent, după cum urmează:

ps ux | Mai puțin

Pentru a lista procesele pentru toți utilizatorii:

ps aux | Mai puțin

Gestionarea proceselor cu System Monitor

System Monitor oferă o modalitate grafică de afișare și gestionare a proceselor. Pentru a lansa System Monitor, accesați Aplicații > Monitor sistem. Comutați la Procese fila pentru a vizualiza toate procesele care rulează.

În mod implicit, afișează procesele în ordine alfabetică pentru utilizatorul curent. Puteți reordona lista de proces făcând clic pe orice titlu de coloană. În plus, puteți face clic pe %PROCESOR și Memorie titluri pentru a vizualiza procesele care consumă mai multă putere de procesare și memorie.

System Monitor vă permite să gestionați procesele în diferite moduri, ceea ce înseamnă că puteți opri, ucide, continua, încheia și modifica prioritatea procesului prin simplul clic dreapta pe numele unui proces.

Este cel mai bun instrument de utilizare pentru utilizatorii Linux începători care nu știu cum să lucreze cu utilitare de linie de comandă.

Legate de: Cum să afișați rezultatele proceselor de top și să sortați după memorie

Lucrul cu procese de fundal/prim-plan

Vine un moment când trebuie să accesați un sistem Linux printr-o rețea folosind doar o linie de comandă. Acest lucru limitează gestionarea eficientă a mai multor programe active. Dar un shell vă permite să gestionați programe prin comutarea lor în fundal și în prim-plan.

Cum să începeți un proces de fundal

Pentru a porni un program în timp ce continuați să lucrați în shell, executați comanda, opriți-l și plasați-l în fundal folosind Ctrl + Z. Pentru a rula un program direct în fundal, adăugați un ampersand (&) la sfârșitul comenzii, după cum urmează:

găsiți /usr > /tmp/allusrfiles &

Notați numărul lucrării și ID-ul procesului. Rețineți că nu puteți rula comenzi care necesită intrarea terminalului în fundal.

Puteți folosi locuri de munca comandă pentru a afișa toate programele/comenzile care rulează în fundal sau pe cele pe care le-ați oprit (folosind Ctrl + Z).

locuri de munca

Cum să reluați procesele din prim-plan și din fundal

Pentru a continua o muncă pe care ați pus-o în fundal, utilizați fg comanda și va aduce comanda în prim-plan.

fg %

În mod similar, dacă ați oprit rularea unei comenzi în fundal, o puteți reporni din nou în fundal folosind comanda bg, după cum urmează:

bg %

Uciderea proceselor pe Linux

Așa cum un instrument grafic precum System Monitor vă permite să ucideți, să opriți și să continuați un proces, puteți utiliza și instrumente de linie de comandă precum ucide și omoara-i pe toti pentru a trimite un semnal unui proces care rulează.

În afară de simpla ucidere a unui proces, comanda kill ajută și la trimiterea de semnale diferite pentru a gestiona comportamentele procesului.

Puteți folosi fie nume, fie numere pentru a utiliza un semnal.

kill -semnalnumber 
kill -nume semnal

De exemplu, următoarele comenzi trimit semnalul SIGKILL unui proces cu PID 1987:

ucide -9 1987
ucide -SIGKILL 1987

Cele mai frecvent utilizate semnale de proces sunt:

Opțiune Descriere
SIGKILL (9) Omoara procesul imediat
SIGTERM (15) Încheie procesul
SIGSTOP (28/19/25) Opreste procesul
SIGCONT (28/19/25) Continuă procesul după ce se oprește
ÎNREGISTRARE (1) Spune procesului să citească fișierul de configurare

Rețineți că diferitele procese răspund diferit la aceste semnale, dar nu pot opri semnalele SIGSTOP și SIGKILL. Tastați următoarea comandă pentru a citi mai multe despre aceste semnale:

om 7 semnal

Aflați mai multe: Cum să opriți procesele care nu răspund în Linux cu kill și pkill

Renicing procese pe Linux

Nucleul Linux prioritizează procesele care rulează și atribuie resurse de sistem luând în considerare privilegiile contului de utilizator. Nucleul ia în considerare și un alt factor, care este valoarea „frumoasă” a fiecărui proces care rulează.

Valoarea simpatică implicită a unui proces este zero, dar puteți seta intervalul între -20 și 19. Câteva fapte despre setare prioritatea procesului cu nice și renice valorile sunt:

  • Un proces cu valoare scăzută are mai mult acces la resursele CPU
  • Un utilizator obișnuit poate doar să-și re-prioritizeze procesele
  • Un utilizator obișnuit poate seta doar valori între -20 și 19 și poate seta doar o valoare mai mare
  • Un superutilizator poate seta procesele oricui la orice valoare, mare sau scăzută

Managementul proceselor pe Linux este ușor

Un mediu multiutilizator are mai multe procese care necesită cunoștințe suficiente despre managementul resurselor sistemului pentru a preveni blocajele și constrângerile sistemului. O parte a sarcinii include gestionarea proceselor prin rularea lor în fundal/prim-plan, uciderea sau renicing-ul.

De asemenea, puteți afla despre utilitarul de comandă superior pentru afișarea și sortarea proceselor și să învățați să opriți procesele care nu răspund pe Linux.

7 moduri de a ucide programele care nu răspund în Linux

Când o aplicație Linux nu răspunde și se blochează, cum o puteți omorâ? Încercați unul dintre aceste trucuri pentru a forța părăsirea unui program în Linux.

Citiți în continuare

AcțiuneTweetE-mail
Subiecte asemănătoare
  • Linux
  • Procesor de calculator
  • Comenzi Linux
  • Linux elementar
Despre autor
Rumaisa Niazi (13 articole publicate)

Rumaisa este un scriitor independent la MUO. Ea a purtat multe pălării, de la un matematician la un pasionat de securitate a informațiilor, iar acum lucrează ca analist SOC. Interesele ei includ citirea și scrierea despre noile tehnologii, distribuțiile Linux și orice despre securitatea informațiilor.

Mai multe de la Rumaisa Niazi

Aboneaza-te la newsletter-ul nostru

Alăturați-vă buletinului nostru informativ pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!

Click aici pentru a te abona