Direct naar de hoofdinhoud
Module 5 · Les 1 van 210/11 in de cursus~12 min
Modulelessen (1/2)

Processen beheren (ps en kill)

In Linux wordt elk actief programma een proces genoemd. Aan elk proces wordt een unieke numerieke identificatie toegewezen, een zogenaamde PID (Process ID). Begrijpen hoe u deze processen kunt monitoren en beheren, is essentieel om het systeem stabiel en presterend te houden.


Bewakingsprocessen: ps

De opdracht ps (processtatus) geeft een momentopname weer van de huidige processen. Standaard worden alleen processen weergegeven die zijn gekoppeld aan de huidige gebruiker en het huidige terminalvenster.

Voor een volledig overzicht van alle processen die op het systeem draaien, wordt vaak de BSD-optiecombinatie aux gebruikt:

  • a: toont processen voor alle gebruikers.
  • u: toont de proceseigenaar en het CPU-/geheugenbrongebruik.
  • x: geeft een overzicht van processen die niet aan een terminal zijn gekoppeld (zoals achtergrondservices).
Bash
ps aux

De uitvoer van ps aux is een gestructureerde tabel met belangrijke kolommen zoals USER, PID, %CPU, %MEM en COMMAND (de opdracht waarmee het proces is gestart).


Processen beëindigen: kill en killall

Als een proces niet meer reageert of te veel bronnen verbruikt, kunnen we het beëindigen door een signaal te sturen.

Het kill commando

Het kill commando stuurt een signaal naar een proces gespecificeerd door zijn PID:

Bash
kill 2048       # Sends the SIGTERM (15) signal, requesting a clean shutdown
kill -9 2048    # Sends the SIGKILL (9) signal, forcing immediate termination

[!WAARSCHUWING] Gebruik kill -9 alleen als laatste redmiddel, omdat het programma hierdoor geen gegevens kan opslaan of geopende bestanden netjes kan sluiten.

De opdracht killall

Als u de PID niet kent of alle processen van een programma op naam wilt beëindigen, kunt u killall gebruiken:

Bash
killall python  # Terminates all processes named 'python'

Probeer het zelf

Oefening 1: Maak een lijst van alle processen

Oefening#linux.m5.l1.e1
Pogingen: 0Laden…

Geef een volledige lijst weer van alle actieve processen op het systeem met behulp van de 'aux'-opties.

Editor laden…
Toon hint

Gebruik het commando 'ps' gevolgd door de optie 'aux'.

Oplossing beschikbaar na 3 pogingen

Oefening 2: Beëindig een proces met PID

Oefening#linux.m5.l1.e2
Pogingen: 0Laden…

Beëindig het Python-proces met PID 2048 met behulp van het commando 'kill'.

Editor laden…
Toon hint

Gebruik 'kill' gevolgd door de PID van het proces (2048).

Oplossing beschikbaar na 3 pogingen

Oefening 3: Beëindig alle processen op naam

Oefening#linux.m5.l1.e3
Pogingen: 0Laden…

Beëindig alle actieve processen die zijn gekoppeld aan het programma 'python' met behulp van de opdracht 'killall'.

Editor laden…
Toon hint

Gebruik 'killall' gevolgd door de programmanaam, in dit geval 'python'.

Oplossing beschikbaar na 3 pogingen