27Aug

Hvordan drepe en stasjonær applikasjon eller bakgrunnsprosess på Linux

click fraud protection

Windows har Ctrl + Alt + Slett og Mac har Command + Option + Escape for å tvinge frosne applikasjoner til å lukke. Linux har sine egne måter å "drepe" de misbehavende prosessene, uansett om de er grafiske vinduer eller bakgrunnsprosesser.

De nøyaktige grafiske verktøyene du kan bruke vil avhenge av skrivebordsmiljøet ditt, da hvert skrivebordsmiljø gir forskjellige verktøy til bordet. Men de fleste er ganske like.

Fra et grafisk skrivebord

Moderne Linux-desktops håndterer dette ganske bra, og det kan være overraskende automatisk. Hvis en applikasjon ikke svarer, vil et skrivebord med en sammensetningssjef ofte gråte hele vinduet for å vise at det ikke svarer.

Klikk på X-knappen på vinduets tittellinje, og vindushåndteringen vil ofte informere deg om at vinduet ikke svarer. Du kan enten gi det litt tid til å svare eller klikke på et alternativ som "Force Quit" for å forgjøre å lukke programmet.

På Linux, er vindushåndteringen som maler tittelstengene skilt fra selve applikasjonen, så det reagerer vanligvis, selv om vinduet ikke vil. Noen vinduer maler imidlertid sine egne grensesnitt, men dette kan ikke alltid fungere.

instagram viewer

Med "xkill" -programmet kan du raskt drepe et grafisk vindu på skrivebordet ditt.

Avhengig av skrivebordsmiljøet og konfigurasjonen kan du muligens aktivere denne snarveien ved å trykke Ctrl + Alt + Esc. Du kan også bare kjøre xkill-kommandoen - du kan åpne et Terminal-vindu, skriv xkill uten anførselstegn, og trykk Enter. Eller du kan trykke en snarvei som Alt + F2, som åpner dialogboksen "Run Command" på Ubuntu's Unity-skrivebordet og mange andre. Skriv xkill i dialogboksen og trykk Enter.

Markøren din vil skifte til en X. Klikk på et vindu, og xkill-verktøyet vil avgjøre hvilken prosess som er tilknyttet vinduet, og så drep umiddelbart den prosessen. Vinduet vil umiddelbart forsvinne og lukke.

Linux-skrivebordet har sannsynligvis et verktøy som fungerer på samme måte som oppgavebehandling på Windows. På Ubuntu's Unity-skrivebordet, GNOME og andre GNOME-baserte skrivebord, er dette System Monitor-verktøyet.Åpne System Monitor verktøyet for å se en liste over løpende prosesser - inkludert bakgrunnen. Du kan også tvinge prosesser fra her hvis de misforstår.

Fra terminalen

La oss si at du vil gjøre alt dette fra terminalen i stedet. Vi dekket mange verktøy du kan bruke til dette når vi så på kommandoer for å administrere prosesser på Linux.

La oss si at Firefox kjører i bakgrunnen, og vi vil drepe det fra terminalen. Standard kill-kommandoen tar et prosess ID-nummer, så du må finne den først.

For eksempel kan du kjøre en kommando som:

ps aux |grep firefox

Som vil liste alle prosesser og rør som listes til grep-kommandoen, som vil filtrere den og skrive ut bare linjer som inneholder Firefox.(Den andre linjen du vil se er grep-prosessen selv.) Du kan også få prosess-ID fra toppkommandoen og mange andre steder.

Ta prosess ID-nummer fra Firefox-prosessen - bare til høyre for brukernavnet - og gi det til kill-kommandoen. Det vil si, kjør kommandoen slik:

drep ####

Hvis prosessen kjører som en annen bruker, må du først bli rotbrukeren - eller i det minste kjøre kill-kommandoen med sudo-kommandoen, slik som:

sudo kill ####

Det er en grunnleggende metode, men det er ikke ganske raskest. Pgrep- og pkill-kommandoene bidrar til å strømlinjeforme dette. For eksempel, kjør "pgrep firefox" for å se prosess-IDen til den kjørende Firefox-prosessen. Du kan da mate det nummeret til kill-kommandoen.

Eller hopp over alt det og kjør "pkill firefox" for å drepe Firefox-prosessen uten å vite nummeret sitt.pkill utfører noen grunnleggende mønster-matching - det vil prøve å finne prosesser med navn som inneholder firefox.

Killall kommandoen er som pkill, men litt mer presis. Det vil drepe alle løpende prosesser med et bestemt navn. Så kjører "killall firefox" vil drepe alle løpende prosesser kalt "firefox", men ikke noen prosesser som bare har firefox i navnene sine.

Disse er langt fra de eneste kommandoene som er inkludert på Linux for å administrere prosesser. Hvis du bruker noen form for serveradministrasjonsprogramvare, kan det også ha nyttige måter å drepe og starte prosesser på.

Systemtjenester fungerer forskjellig fra prosesser - du må bruke bestemte kommandoer for å få ned, starte på nytt eller hente opp tjenester. Disse spesifikke kommandoene kan være forskjellige på forskjellige Linux-distribusjoner.

Image Credit: Lee på Flickr