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).
ps auxDe 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:
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 -9alleen 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:
killall python # Terminates all processes named 'python'Probeer het zelf
Oefening 1: Maak een lijst van alle processen
Geef een volledige lijst weer van alle actieve processen op het systeem met behulp van de 'aux'-opties.
Toon hint
Gebruik het commando 'ps' gevolgd door de optie 'aux'.
Oplossing beschikbaar na 3 pogingen
Oefening 2: Beëindig een proces met PID
Beëindig het Python-proces met PID 2048 met behulp van het commando 'kill'.
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
Beëindig alle actieve processen die zijn gekoppeld aan het programma 'python' met behulp van de opdracht 'killall'.
Toon hint
Gebruik 'killall' gevolgd door de programmanaam, in dit geval 'python'.
Oplossing beschikbaar na 3 pogingen