Informatie over de processen verkrijgen
Het niet-reagerende proces krijgen is de eerste stap om het te doden. We kunnen de procesinformatie krijgen door twee commando's te gebruiken, i.e., top en ps. Om een lijst van uw actieve processen te zien, typt u top vanaf de opdrachtregel:
$ topOf
$ ps
U vindt enkele relevante details op de terminal. Stel je bijvoorbeeld een situatie voor waarin het "Applicatie"-gerelateerde proces niet meer reageert. In ons geval zijn er vier exemplaren van toepassingen die worden uitgevoerd met proces-ID's (PID) 5441, 3870, 5062 en 3637, 4233, 770, 3787, volgens onze bovenste opdrachtweergave.
Hoewel de bovenkant uiterst nuttig is, is het niet altijd de meest efficiënte manier om informatie te verkrijgen. Laten we nu zeggen dat u de aanvraagprocessen moet beëindigen, maar dat u niet de realtime informatie van het topcommando wilt krijgen. in dit scenario kun je de opdracht ps gebruiken. Verder kunnen we de uitvoer filteren met het grep-commando. We zijn alleen geïnteresseerd in het opsommen van de applicatiegerelateerde processen. Gebruik de onderstaande opdracht om de applicatiegerelateerde processen te zien:
$ ps aux | grep-toepassingTerwijl,
a = Toon alle gebruikersgerelateerde processen
u = Toon het proces is de eigenaar/gebruiker.
x = Toon alle processen die niet terminal gerelateerd zijn
De grep drukt lijnen af die overeenkomen met een patroon, terwijl ps een momentopname van een huidig proces retourneert. De reden om grep te gebruiken om ps te filteren is eenvoudig: als je ps zelf uitvoert, krijg je een momentopname van alle lopende processen.
Lijst met signalen weergeven:
Typ kill -l om de lijst met alle signalen weer te geven. We kunnen verschillende signalen sturen met het kill-commando.
We kunnen elk signaal kiezen uit de lijst met gegeven signalen.
$ kill -l
Er zijn enkele veelvoorkomende kill-signalen:
Signaalnaam Signaalwaarde Effect
SIGHUP 1 Hang opSIGINT 2 Onderbreken vanaf het toetsenbord
SIGKILL 9 Kill-signaal
SIGTERM 15 Beëindigingssignaal
SIGSTOP 17, 19, 23 Stop proces
Processen doden op ID:
Laten we dus het kill-commando gebruiken om onze applicatie te beëindigen. De syntaxis zou als volgt zijn:
Dood signaal PIDStuur het kill-signaal om 4129-processen te doden:
Dood -9 4124
Stuur het signaal om de 5427 processen op te hangen:
Dood -1 5427
Stuur het signaal om het proces 5250 te onderbreken vanaf het toetsenbord:
Dood -2 5250
Dood proces op naam:
Als u alle processen die in de toepassing worden uitgevoerd wilt beëindigen. Gebruik het killall-commando:
$ killall -9 applicatie
Alle processen die in een toepassing worden uitgevoerd, zijn met succes beëindigd.
Conclusie:
Voordat we Linux-processen doden, moeten we eerst de lijst met alle lopende processen zien om de proces-ID te krijgen. We kunnen meerdere signalen gebruiken met het kill-commando, terwijl elk signaal voor een specifiek doel wordt gebruikt.