Sådan finder du og dræber kørende processer i Linux


Processtyring er et af de vigtige aspekter af systemadministration i Linux, og det inkluderer aflivning af processer ved hjælp af kommandoen kill.

I denne vejledning skal vi se på drab på mindre produktive eller uønskede processer på dit Linux-system.

En proces på et Linux-system kan være en kørende forekomst af et program eller program. Du kan også henvise til processer som opgaver, der udføres i operativsystemet.

Når en proces kører, fortsætter den med at skifte fra en tilstand til en anden, og en proces kan i en af følgende tilstande:

  1. Kører: betyder, at processen enten udføres, eller at den bare er indstillet til at blive udført.
  2. Venter: betyder, at processen venter på en begivenhed eller på en systemressource til at udføre en opgave.

Der er to typer venteprocesser under Linux, nemlig afbrydelig og uafbrydelig.

En venteproces, der kan afbrydes af signaler, kaldes Interruptible, mens en venteproces, der venter direkte på hardwareforhold og ikke kan afbrydes under nogen omstændigheder, kaldes uninterruptible.

  1. Stoppet: betyder, at processen er stoppet ved hjælp af et signal.
  2. Zombie: hvilket betyder, at processen er stoppet brat og er død.

Med denne korte oversigt skal vi nu se på måder at dræbe processer i et Linux-system. Vi har allerede dækket et par artikler om måder at dræbe Linux-kørende processer os ved hjælp af kill, pkill, killall og xkill. Du kan læse dem nedenfor.

  1. En guide til styring af Linux-processer ved hjælp af kommandoer Kill, Pkill og Killall
  2. Sådan dræbes Linux-processer, der ikke svarer ved hjælp af Xkill Command

Ved aflivning af processer bruges kill-kommandoen til at sende et navngivet signal til en navngivet proces eller grupper af processer. Standardsignalet er TERM-signalet.

Husk, at kill-kommandoen kan være en indbygget funktion i mange moderne skaller eller eksternt placeret på/bin/kill.

Sådan finder du proces-PID i Linux

I Linux har hver proces på et system et PID (Process Identification Number), som kan bruges til at dræbe processen.

Du kan identificere PID for enhver proces ved at bruge kommandoen pidof som følger:

$ pidof firefox
$ pidof chrome
$ pidof gimp-2.8

Sådan dræbes processer i Linux

Når du har fundet processen PID, så lad os nu se på, hvordan vi dræber processer. I dette første eksempel skal jeg først hente PID for processen og derefter sende et signal til den.

Jeg vil dræbe gimp-processen, så jeg vil gøre det som følger:

$ pidof gimp-2.8
$ kill 9378

For at bekræfte, at processen er blevet dræbt, skal du køre kommandoen pidof, så vil du ikke kunne se PID.

$ pidof gimp-2.8

Du kan også sende et navngivet signal til processen ved at bruge signalnavnet eller numrene som følger:

$ pidof vlc
$ kill -SIGTERM 9541
$ pidof vlc

Brug af signalnummeret til at dræbe en proces:

$ pidof banshee
$ kill -9 9647
$ pidof banshee

I ovenstående eksempel er tallet 9 signalnummeret for SIGKILL-signalet.

Sådan dræbes flere proces-PID'er i Linux

For at dræbe mere end en proces skal du sende PID (erne) til kill-kommandoen som følger:

$ pidof gimp-2.8
$ pidof vlc
$ pidof banshee
$ kill -9 9734 9747 9762

Resumé

Der er mange andre måder at dræbe processer i Linux, disse få eksempler hjælper bare med at give dig et overblik over drabsprocesser. Fortæl os, hvordan du dræber processer i Linux? og fortæl også andre måder, hvis nogen via kommentarer.