Saltar al contenido

5 sätt att döda ett Linux-program

28 de julio de 2021
GettyImages 922708940 5bd1f0c746e0fb005195bd07

Avsluta icke-responsiva applikationer i Linux – en process som kallas tvångsavslutning – genom en av fem vanliga metoder.

Använd kommandot «kill»

Den första metoden är att använda ps och döda kommandon. Fördelen med att använda denna metod är att den fungerar på alla Linux-system. De döda kommandot behöver veta process-ID för applikationen du behöver döda, och det är där ps kommer in. ps -ef | grep Firefox

type = «code»> ps-kommandot listar alla körprocesser på din dator. De -ef switchar ger en lista över fullformat. Ett annat sätt att få en lista över processer är att köra topp kommando.

Nu när du har process-id kan du köra döda kommando: kill pid

type = «code»> Till exempel: kill 7317

typ = «code»> Om, efter att ha kört döda kommandot, applikationen dör inte, du kan tvinga den genom att använda -9 växla enligt följande: kill -9 1234

typ = «kod»>

Döda Linux-applikationer med ‘xkill’

Ett enklare sätt att döda grafiska applikationer är att använda xkill kommando. Allt du behöver göra är att antingen skriva xkill i ett terminalfönster eller, om din skrivbordsmiljö innehåller en springa kommando, ange xkill in i kommandofönstret. Ett hårkors visas på skärmen. Klicka på fönstret du vill döda.

xkill-fönster

Döda Linux-applikationer med det översta kommandot

Linux-kommandot överst ger en terminaluppgiftshanterare som listar alla körprocesser på datorn. För att döda en process inom det övre gränssnittet, tryck på k och ange process-id bredvid det program du vill stänga. De topp kommando begär en specifik signal att sända; i de flesta fall anger du 15 (för att begära att processen avslutas på ett elegant sätt) eller 9 (för att omedelbart döda processen).

topp med sigkill

Linux stöder signaler som instruerar en process att göra något. Några vanliga signaler som används i en shell-session inkluderar:

  • SIGINT 2: Avbryter processen, motsvarande Ctrl+C.
  • SIGQUIT 3: Avslutar processen graciöst, om möjligt, lämnar en kärndump för att hjälpa till med felsökning. Åberopad med Ctrl+.
  • SIGKILL 9: Dödar processen omedelbart utan att tillåta processen att elegant utföra avstängnings- eller rensningsoperationer.
  • SIGTERM 15: Avslutar en process. Processkraften avslutas, men om den kan rensa graciöst om systemet tillåter det.
  • SIGCONT 16: Fortsätt att köra efter att ha stoppats av SIGSTOP.
  • SIGSTOP 19: Stoppa processen med avsikt att den senare ska återupptas med SIGCONT.
  • SIGTSTP 20: Pausar en process. Vanligtvis initierad av Ctrl+Z.

Processnamnet eller processnumret fungerar med döda kommando för att skicka en specifik signal till en process. Till exempel, döda -9 1234 skickar SIGKILL till process 1234.

Använd ‘pgrep’ och ‘pkill’ för att döda applikationer

De ps-och-döda den metod som använts tidigare fungerar på alla Linux-baserade system. Men många Linux-system erbjuder en genvägsmetod för att utföra samma uppgift med pgrep och pkill.

Pgrep utvärderar namnet på en process och den returnerar process-ID: t. Till exempel: pgrep Firefox

typ = «code»> Ange det returnerade process-ID i pkill enligt följande: pkill 1234

type = «code»> pkill kommandot accepterar också namnet på processen, så du kan skriva: pkill firefox

type = «code»> Det här är bra om du bara har en instans av applikationen men är mindre användbar om du öppnar flera Firefox-fönster och bara vill döda en. Xkill är mycket mer användbart i denna situation.

Döda applikationer med systemmonitor

Skrivbordsmiljön GNOME erbjuder ett systemövervakningsverktyg för att döda program som inte svarar. Bläddra ner i listan över pågående processer och hitta det program du vill stänga. Högerklicka på objektet och välj antingen avsluta process eller döda processen. Dessa alternativ skickar respektive signal till processen.

gnome systemmonitor