Linux/Unix-procesbeheer: ps, kill, top, df, gratis, leuke opdrachten
Wat is een proces?
Een instantie van een programma wordt een proces genoemd. Simpel gezegd: elke opdracht die u aan uw Linux-machine geeft, start een nieuw proces.
Het is mogelijk om meerdere processen voor hetzelfde programma te hebben.
Soorten processen:
- Voorgrondprocessen: Ze draaien op het scherm en hebben input van de gebruiker nodig. Bijvoorbeeld Office-programma's
- Achtergrondprocessen: Ze draaien op de achtergrond en hebben meestal geen gebruikersinvoer nodig. Bijvoorbeeld Antivirus.
Klik hier als de video niet toegankelijk is
Een voorgrondproces uitvoeren
Om een voorgrondproces te starten, kunt u dit vanaf het dashboard uitvoeren, of vanaf de terminal.
Wanneer u de Terminal gebruikt, moet u wachten totdat het voorgrondproces wordt uitgevoerd.
Een achtergrondproces uitvoeren
Als u een voorgrondprogramma/proces vanaf de terminal start, kunt u niet op de terminal werken totdat het programma actief is.
Bepaalde, data-intensieve taken vergen veel verwerkingskracht en kunnen zelfs uren duren om te voltooien. U wilt niet dat uw terminal zo lang wordt vastgehouden.
Om een dergelijke situatie te voorkomen, kunt u het programma uitvoeren en naar de achtergrond sturen, zodat de terminal voor u beschikbaar blijft. Laten we leren hoe we dit kunnen doen –
Fg
U kunt het commando “fg” gebruiken om een gestopt programma voort te zetten en naar de voorgrond te brengen.
De eenvoudige syntaxis voor dit hulpprogramma is:
fg jobname
Voorbeeld
- Start de 'banshee'-muziekspeler
- Stop het met het commando 'ctrl +z'
- Ga verder met het hulpprogramma 'fg'.
Laten we eens kijken naar andere belangrijke opdrachten om processen te beheren:
Top
Dit hulpprogramma vertelt de gebruiker over alle actieve processen op de Linux-machine.
Druk op 'q' op het toetsenbord om het procesdisplay te verlaten.
De terminologie volgt:
Veld | Beschrijving | Voorbeeld 1 | Voorbeeld 2 |
---|---|---|---|
PID | De proces-ID van elke taak | 1525 | 961 |
Gebruiker | De gebruikersnaam van de taakeigenaar | Home | Root |
PR |
Prioriteit
Kan 20 (hoogste) of -20 (laagste) zijn |
20 | 20 |
NI | De mooie waarde van een taak | 0 | 0 |
GERESPECTEERD | Gebruikt virtueel geheugen (kb) | 1775 | 75972 |
RES | Fysiek geheugen gebruikt (kb) | 100 | 51 |
shr | Gebruikt gedeeld geheugen (kb) | 28 | 7952 |
S |
Status Er zijn vijf soorten: 'D' = ononderbroken slaap 'R' = rennen 'S' = slapen 'T' = getraceerd of gestopt 'Z' = zombie |
S | R |
%CPU | % van CPU-tijd | 1.7 | 1.0 |
%MEM | Fysiek geheugen gebruikt | 10 | 5.1 |
TIJD+ | Totale CPU-tijd | 5:05.34 | 2:23.42 |
commando | Opdrachtnaam | Photoshop.exe | Xorg |
PS
Dit commando staat voor 'Processtatus'. Het is vergelijkbaar met “Taakbeheer” dat pop-ups in een Windows Machine wanneer we Cntrl+Alt+Del gebruiken. Deze opdracht is vergelijkbaar met de 'top'-opdracht, maar de weergegeven informatie is anders.
Om alle processen die onder een gebruiker draaien te controleren, gebruikt u de opdracht –
ps ux
U kunt ook de processtatus van een enkel proces controleren door de syntaxis te gebruiken:
ps PID
Doden
Dit commando beëindigt lopende processen we hebben een Linux-machine.
Om deze hulpprogramma's te gebruiken, moet u de PID (proces-ID) kennen van het proces dat u wilt beëindigen
Syntaxis -
kill PID
Om de PID van een proces te vinden, typt u eenvoudigweg
pidof Process name
Laten we het proberen met een voorbeeld.
NICE
Linux kan veel processen tegelijk uitvoeren, wat de snelheid van sommige processen met hoge prioriteit kan vertragen en tot slechte prestaties kan leiden.
Om dit te voorkomen, kunt u uw machine opdracht geven processen te prioriteren volgens uw vereisten.
Deze prioriteit wordt onder Linux Niceness genoemd en heeft een waarde tussen -20 en 19. Hoe lager de Niceness-index, hoe hoger de prioriteit die aan die taak wordt gegeven.
De standaardwaarde van alle processen is 0.
Om een proces te starten met een niceness-waarde die anders is dan de standaardwaarde, gebruikt u de volgende syntaxis
nice -n 'Nice value' process name
Als er al een proces op het systeem actief is, kunt u de waarde ervan 'reniceren' met behulp van syntaxis.
renice 'nice value' -p 'PID'
Om Niceness te wijzigen, kunt u het 'top'-commando gebruiken om de PID (proces-ID) en de Nice-waarde ervan te bepalen. Later gebruik het renice-commando om de waarde te wijzigen.
Laten we dit aan de hand van een voorbeeld begrijpen.
DF
Dit hulpprogramma rapporteert de vrije schijfruimte (harde schijf) op alle bestandssystemen.
Als u de bovenstaande informatie in een leesbaar formaat wilt hebben, gebruik dan de opdracht
'df -h'
Gratis
Deze opdracht toont het vrije en gebruikte geheugen (RAM) op het Linux-systeem.
Je kunt de argumenten gebruiken
free -m om de uitvoer in MB weer te geven
free -g om de uitvoer in GB weer te geven
Overzicht:
- Elk lopend programma of commando dat aan een Linux-systeem wordt gegeven, wordt een proces genoemd
- Een proces kan op de voorgrond of op de achtergrond worden uitgevoerd
- De prioriteitsindex van een proces wordt in Linux Nice genoemd. De standaardwaarde is 0 en kan variëren tussen 20 en -19
- Hoe lager de Niceness-index, hoe hoger de prioriteit die aan die taak wordt gegeven
commando | Beschrijving |
---|---|
bg | Om een proces naar de achtergrond te sturen |
fg | Om een gestopt proces op de voorgrond uit te voeren |
top | Details over alle actieve processen |
ps | Geef de status van processen die voor een gebruiker worden uitgevoerd |
ps PID | Geeft de status van een bepaald proces weer |
pidof |
Geeft de proces-ID (PID) van een proces |
dood PID | Doodt een proces |
mooi | Start een proces met een bepaalde prioriteit |
nieren | Wijzigt de prioriteit van een reeds lopend proces |
df | Geeft vrije ruimte op de harde schijf van uw systeem |
gratis | Geeft gratis RAM op uw systeem |