despre compartiment
Aici puteti gasi articole in romana despre instalarea, configurarea si administrarea unor servicii precum si a intregului sistem.
login
articole
19.08.03 22:57Manipularea proceselor in Linux.
Ultima modificare: 01.01.70 02:00


Toate procesele ce ruleaza pe un sistem Linux sunt organizate sub forma unui arbore.
Primul proces este init , parinitele tuturor proceselor urmatoare.
Fiecare proces se executa cu drepturile userului care a startat procesul si are asociat un numar de identificare - PID. Dupa acest PID sistemul stie cine este proprietarul procesului, care sunt procesele fiice.



Fiecare proces reactioneaza la semnalele care i se trimit. Sunt 64 semnale diferite, identificate dupa numere de la 1 la 64 (se folosesc doar cele de la 1 la 32). Pentru fiecare din aceste semnale programul isi poate avea definita semnificatia sa, inafara de semnalul 9 -KILL si 19 -STOP. Lista tuturor semnalelor este disponibila prin comanda kill -l.


comenzi utile:

ps


Prezinta lista proceselor curente.Toate optiunile disponibile ale comenzii pot fi vizualizate prin ps --help sau man ps.
Optiuni principale:
-u - selecteaza dupa uid, suporta si numele userului.
-x - procesele care nu sunt controlate de nici un terminal, sau sunt controlate de un terminal diferit.

pstree


Prezinta lista proceselor in forma de arbore, cu radacina de la un proces anume - indicat prin PID-ul sau, sau daca nu este indicat - de la init.
Avantajul este ca se observa imediat care proces este parintele celorlalte procese.
Optiuni principale:
-u - prezinta uid-ul procesului (adica a userului care a startat procesul).
-p - prezinta PID-ul procesului.

top


Utilizat pentru monitorizarea si controlul proceselor in timp real, dand informatii despre consumul resurselor,timpul cat ruleaza,prioritatea, etc.
top

Optiuni principale (in timpul executarii procesului top):
k - utilizat pentru trimiterea semnalelor unui proces.
M - sorteaza procesele dupa memoria consumata.
P - sorteaza procesele dupa consumul resurselor procesorului.

kill


Utilizat pentru trimiterea semnalelor proceselor.
Daca nu este specificat nici un semnal, este trimis semnalul 15 -TERM.
De exemplu, daca vreti sa terminati procesul cu PID-ul 1243, executati kill 1243.
Optiuni principale:
-l - afiseaza lista semnalelor.
-s - semnalul trimis, poate fi specificat dupa numar sau dupa numele sau (19 sau STOP)

killall


Aceeasi semnificatie ca si kill , insa necesita numele procesului, nu PID-ul.

renice


Fiecare proces ruleaza cu o anumita prioritate, definita de o valoare intre -20 si 20. Valoarea implicita este 0. Astfel prioritatea maxima o are procesul cu valoarea -20 si prioritatea minima de consum a resurselor - 20. Procesele cu prioritate minima (20) vor rula atunci cand resursele sistemului nu sunt consumate de alte procese. Toti userii pot schimba prioritatea proceselor sale intre valorile 0 si 20. Userul root poate schimba prioritatea oricarui proces la oricare valoare.
Optiuni principale:
-p - PID-ul procesului.
-u - uid-ul procesului.
De exemplu, daca vreti sa schimbati prioritatea unui proces cu PID-ul 1234, executati:
renice +15 1234
Sau daca vreti ca toate procesele userului nobody sa aiba prioritate minima, executati
renice +20 -u nobody
La fel, prioritatea unui proces poate fi schimbata si cu ajutorul top.

nice


Este utilizat pentru specificarea initiala a prioritatii unui proces.
Valoarea implicita a prioritatii setata de nice este 20.
-n - prioritatea procesului.
Exemplu: vreti sa rulati programul gimp cu prioritatea 15 , executati:
nice -n 15 gimp
Autor: GRisha
Comentarii: 3

01.09.03 13:09r2u
Cum pot limita numarul proceselor unui user ? Thx.

03.09.03 12:20GRisha
http://www.userlocal.com/security/secpam.php

03.12.06 21:36gr
Learning about Linux Processes -
http://linuxgazette.net/133/saha.html

Adauga Comentariu:
Nume:
E-mail:
Cometariu:
 
counter
Informatia de pe site este prezentata "AS IS" si nimeni NU garanteaza veridicitatea sa
Hosting si intretinerea site-ului - REMSYS © 2003-2007