Process
Från Unix.se, den fria unixresursen.
Program som körs i ett UNIX-system representeras av en eller flera processer. Den första processen som startas i ett system är Init, och den får därför Process ID (PID) 1.
Olika typer av processer: | |
---|---|
* förälderprocess | (eng. parent process) En process som startar en annan process |
* barnprocess | (eng. child process) En process startad av en förälderprocess |
* föräldralös process | (eng. orphan) En process vars förälderprocess har avslutats innan processen blev klar |
* zombie | En process som avslutats (på egen hand eller av någon annan) men vars förälder inte "väntar" på den. |
Om du vill avsluta en process kan du följa de här instruktionerna:
För att på ett enkelt sätt döda en process:
# pkill process
Man kan även använda kommandot kill. Ta reda på processens id-nummer med top eller som här, med ps:
# ps auxww | grep process
Döda därefter processen m.h.a. kill:
# kill pid
Dör inte processen kan du skicka med flaggan '-9' ("KILL - non-catchable, non-ignorable kill"):
# kill -9 pid
Ibland kan en del processer vägra dö, eftersom de hamnat i sömnläge. Detta kan inträffa när man t.ex. använder verktyget dd. En lösning är att starta om maskinen. En annan är att loopa kill-kommandot till processen, i hopp om att signalen kommer fram precis när den sovande processen försöker återgå till det den borde utföra. Kör då följande:
# while true; do kill -9 <pid>; done