Kako ubiti procese Linuxa/neodzivne aplikacije z ukazom xkill


Kako ubiti vir/proces v Linuxu? Očitno najdemo PID vira in ga nato posredujemo ukazu kill.

Če govorimo natančneje, lahko PID vira (recimo terminala) najdemo kot:

$ ps -A | grep -i terminal

6228 ?        00:00:00 gnome-terminal

V zgornjem izhodu je številka '6228' PID procesa (gnome-terminal), za ubijanje procesa uporabite ukaz kill, kot je prikazano spodaj.

$ kill 6228

Ukaz kill pošlje signal procesu, katerega PID se posreduje skupaj z ukazom.

Lahko pa uporabimo ukaz pkill, ki ubije postopek na podlagi imena in drugih atributov procesa. Če želite ubiti postopek, recimo, katerega ime je terminal, moramo izvesti:

$ pkill terminal

Opomba: Dolžina imena procesa v pkill je omejena na 15 znakov.

pkill se zdi bolj priročen, saj lahko postopek ubijete, ne da bi morali ugotoviti njegov PID. Če pa želite imeti boljši nadzor nad svojim sistemom, nič ne premaga ukaza 'kill'. Z uporabo kill boste imeli boljši vpogled v postopek, ki ga ubijate.

Podroben vodnik o ukazih kill, pkill in killall smo že zajeli.

Za tiste, ki uporabljajo strežnik X, obstaja še eno orodje, imenovano xkill, ki lahko ubije postopek iz okna X, ne da bi posredoval ime ali PID.

Pripomoček xkill prisili strežnik X, da zapre komunikacijo s svojim odjemalcem, kar povzroči ubijanje odjemalca s strani X vira. xkill, ki je del pripomočkov X11, je zelo priročen pri ubijanju nepotrebnih oken.

Podpira možnosti, kot je povezava z določenim strežnikom X (-display displayname) z uporabo prikazne številke, ko se na strežniku hkrati izvaja več strežnikov X, in ubije vsega odjemalca (-vso, ni priporočljivo) z okni na vrhu na zaslonu, pa tudi upoštevati okvir (-frame).

Če želite dobiti seznam vseh odjemalcev, ki jih lahko zaženete:

$ xlsclients
'  ' /usr/lib/libreoffice/program/soffice
deb  gnome-shell
deb  Docky
deb  google-chrome-stable
deb  soffice
deb  gnome-settings-daemon
deb  gnome-terminal-server

Če z id-jem ni poslan noben identifikator vira, xkill kazalec miške spremeni v poseben simbol, podoben ‘X’. Preprosto kliknite okno, ki ga želite ubiti, in to bo uničilo njegovo komunikacijo s strežnikom ali recite, da se program ubije.

$ xkill

Pomembno je opozoriti, da xkill ne zagotavlja, da ga bo zapiranje komunikacije uspešno ubilo/prekinilo. Večina aplikacije bo uničena, ko bo komunikacija s strežnikom zaprta. Vendar jih nekaj še vedno deluje.

Tu je treba omeniti točke:

  1. To orodje deluje samo, ko se izvaja strežnik X11, saj je xkill del pripomočka X11.
  2. Ne mešajte z zaprtjem in ubijanjem vira. Medtem ko ubijate vir, lahko pričakujete, da ne bo izstopil čisto.
  3. To ni zamenjava pripomočka kill.

Ne, xkill vam ni treba sprožiti iz ukazne vrstice Linuxa. Bližnjico na tipkovnici lahko nastavite in pokličete xkill tako, da izberete isto kombinacijo tipk.

Tu je opisano, kako nastavite bližnjico na tipkovnici v tipičnem namiznem okolju gnome3.

Pojdite v Nastavitve -> Izberite tipkovnico, kliknite ‘+’ in dodajte ime in ukaz. Kliknite nov vnos in pritisnite tipko, ki jo želite uporabiti kot kombinacijo bližnjic. Naredil sem Ctrl + Alt + Shift + x.

Naslednjič, ko želite ubiti vir X, pokličite kombinacijo tipk (Ctrl + Alt + Shift + x) in opazili boste, da se je kazalec miške spremenil v x. Kliknite x vir, ki ga želite ubiti in vse končano!