In principe zijn er 4 manieren de Matar effectief een procédé en Linux: dood het op naam, door een deel van de naam te specificeren, door PID, wijzend naar het procesvenster met de muiscursor. Laten we een voor een kijken ... |
Kill: dood een proces met behulp van zijn PID
De meest gecompliceerde maar tegelijkertijd meest nauwkeurige manier om een proces te doden, is via zijn PID ("Process Identifier"). Elk van deze 3 varianten kan dienen:
kill -TERM pid kill -SIGTERM pid kill -15 pid
U kunt de naam van het signaal (TERM of SIGTERM) gebruiken dat u naar het proces wilt sturen of het identificatienummer (15). Om een volledige lijst van mogelijke signalen te zien, raad ik aan de kill-handleiding te raadplegen. Om dit te doen, voer je uit:
man doden
Laten we een voorbeeld bekijken van hoe u Firefox kunt doden:
Eerst moet u de PID van het programma achterhalen:
ps -ef | grp Firefox
Dat commando zal iets als dit retourneren:
1986? Sl 7:22 /usr/lib/firefox-3.5.3/firefox
We gebruiken de PID die wordt geretourneerd door het bovenstaande commando om het proces te beëindigen:
kill -9 1986
killall: dood een proces met zijn naam
Deze opdracht is heel eenvoudig
killall procesnaam
Een ding om in gedachten te houden bij het gebruik van deze methode is dat als er meer dan één exemplaar van dat programma wordt uitgevoerd, ze allemaal worden gesloten.
pkill: dood een proces met een deel van zijn naam
Het is mogelijk om een proces te beëindigen door de volledige naam of een deel van de naam op te geven. Dat betekent dat u de proces-PID niet hoeft te onthouden om het signaal te verzenden.
pkill part_process_name
In ruil daarvoor zal deze methode alle processen doden die het ingevoerde woord bevatten. Dat betekent dat als we 2 processen open hebben die een woord in de naam delen, beide worden gesloten.
xkill: dood een proces door het venster met de muis te selecteren
Dit is de eenvoudigste en meest praktische methode. In geval van een ramp, drukt u gewoon op Alt + F2 om het dialoogvenster te openen waarin u opdrachten kunt uitvoeren. Voer vanaf daar de volgende opdracht uit:
xkill
De muiscursor verandert in een kleine schedel. Het enige dat overblijft, is klikken op het venster dat u wilt sluiten en voila. Dag proces.
Enkele laatste opmerkingen
Tot slot wilde ik enkele tips delen die nuttig kunnen zijn. In Linux, zoals in Windows, wanneer een proces vastloopt, kan het betreffende venster over het algemeen worden gesloten door op de knop Sluiten te klikken (die de vorm heeft van een X). Na een paar seconden verschijnt er een venster waarin we worden gevraagd of we het proces echt willen beëindigen, aangezien het niet correct reageert. We zeggen ja en dat is het.
Dit betekent dat de hier beschreven methoden moeten worden gebruikt als er niets gebeurt wanneer u op de knop Sluiten van het betreffende venster klikt.
In geval van een grote calamiteit, vergeet niet dat voordat u op drukt, het mogelijk is om een "veilige" herstart.
Ten slotte kan het erg handig zijn om erachter te komen welke processen momenteel worden uitgevoerd. Hiervoor hebben de verschillende desktopomgevingen (GNOME, KDE, etc.) grafische tools die deze taak vergemakkelijken. Als u er echter geen toegang toe hebt of het gewoon vanaf de terminal wilt doen, kunt u het volgende doen:
top
Als dit niet werkt of als u het bijbehorende pakket niet hebt geïnstalleerd, kunt u altijd het volgende uitvoeren:
ps - A
Dit geeft een lijst van alle lopende processen, samen met hun respectievelijke namen en PID's.
«Ps -ef | "grep firefox" is niet hetzelfde als "pgrep firefox"?
Persoonlijk gebruik ik "pidof" om de PID te krijgen.
Groeten!
wat ik het meest gebruik is:
~ $ boven
toont ons de lijst met actieve processen, en als we op "k" drukken of "kill" schrijven, zal het ons vragen om de pid van het proces te doden (we lezen het van bovenaf) en dan invoeren, om naar boven te gaan, drukken we op "q ".
Zeer goede inzending, maar dit formulier lijkt mij eenvoudiger. Als de terminal niet werkt, proberen we het met ctrl + alt + f [1-6] en doen we het van daaruit.
Wat een genie jongens, bedankt voor het helpen, heeft me een geweldige hand gegeven met dit bericht !!!
Hallo! Zou het kunnen dat het xkill-commando alleen het X-programma laat verdwijnen en open blijft? Omdat het mij altijd overkomt dat wanneer ik naar de taakbeheerder ga, het proces nog steeds leeft en ik het moet doden.
Ik geef het toe, ik ben een heel nieuweling. En de killall- en pkill-commando's zullen me veel helpen. Bedankt voor het uploaden, zeer goede blog.
Groeten!
Ik raad htop aan? Daar is het het beste voor ...
werkt met ncurses
sudo apt-get install htop
pidof is niet voor alle Unixen, bijvoorbeeld Solaris heeft dat commando niet, en dat brengt ons ertoe de krachtige ps te gebruiken.
groeten
htop is meer uitgebreid en gebruiksvriendelijker
In het geval dat je PID gebruikt, is het juiste $ kill PID dat standaard het SIGTERM-signaal verzendt, in het geval dat het proces niet reageert, wordt $ kill -9 PID gebruikt die het SIGKILL-signaal verzendt, de laatste elimineert het proces zonder het is dezelfde sluiting correct (er kan bijvoorbeeld gegevensverlies zijn). SIGTERM vraagt alsjeblieft, SIGKILL geeft hem een bijl 🙂
Heel erg bedankt, ik zal het testen als het mij weer overkomt.
een vraag. Als de desktopomgeving vastloopt in Ubuntu (ik gebruik Unity), kan deze dan opnieuw worden opgestart zonder alle andere processen te beëindigen? Ik ben niet erg gevorderd in linux en het overkomt me soms dat ik aan het werk ben en het loopt vast, het enige wat ik doe is de veilige herstart, maar ik verlies alles waar ik aan werkte.
Ik weet niet of mijn twijfel wordt begrepen.
groeten
Een proces in de zombiestaat kan niet op de traditionele manier worden gedood.
Hier voor meer details: esdebian.org/wiki/matar-proceso-zombie
Voor de meer gevorderden, hoe dood je een proces in de ZOMBIE-staat?
gewoon om een kleine chat te genereren 😀
Heel goed, precies wat ik nodig had ..
De waarheid is dat het kill-commando erg handig is. Het is geweldig om vervelende processen te doden door simpelweg kill aan te roepen. Eindelijk een commando dat iets dient.
Theoretische vraag: het doden van een proces betekent dat het stopt met werken. Dus mijn vraag is andersom: als ik dat proces dat ik heb gedood wil herstarten, hoe doe ik dat dan?
nou je zegt ./ (de naam van het proces) &
Hiermee voer je het opnieuw uit en komt je PID er ook uit 😀
Uitstekend, ik had tijd om op deze manier hulp te zoeken. Het was erg nuttig voor mij. Heel erg bedankt voor het delen.
Groeten uit San Luis Potosí, Mexico.
Hoe kan ik twee processen doden die hun PID kennen in dezelfde opdracht?
Ik denk dat het 'kill [First PID] [Second PID] was
Heel interessant artikel. Deze website is mijn belangrijkste linux-website.
Ik gebruik over het algemeen:
ps bijl | grep process_name (dit om het op het systeem te lokaliseren)
kill -9 process_id
Ik deel een gratis online bash-cursus die rond gaat:
https://aprendemia.com/cursos/curso-de-bash-scripting Hopelijk is het nuttig.
en als ik wilde dat het een profiel in linux was, alleen degene die sluit zoals het zou moeten zijn?
voorbeeld Ik heb 2 firefox-profielen geopend
maar ik wil maar één profiel sluiten
profiel 1
profiel 2
Ik wil dat alleen profiel 2 wordt afgesloten zoals het commando zou moeten zijn
bij voorbaat dank voor het antwoord
hoe kan ik ubuntu-voorgrondprocessen doden met een enkele opdrachtregel