Hoe Linux-processen/niet-reagerende applicaties te beëindigen met het ‘xkill’-commando

Hoe kunnen we een resource/proces in Linux beëindigen? Uiteraard vinden we de PID van de resource en geven deze door aan het kill-commando.

Nauwkeuriger gezegd kunnen we de PID van een resource (bijvoorbeeld een terminal) vinden als volgt:

$ ps -A | grep -i terminal

6228 ?        00:00:00 gnome-terminal

In de bovenstaande output is het nummer ‘6228‘ de PID van het proces (gnome-terminal), gebruik het kill-commando om het proces te beëindigen zoals hieronder weergegeven.

$ kill 6228

Het kill-commando stuurt een signaal naar een proces waarvan de PID wordt doorgegeven met het commando.

Als alternatief kunnen we het pkill-commando gebruiken, dat een proces beëindigt op basis van de naam en andere kenmerken van een proces. Om een proces te beëindigen waarvan de naam bijvoorbeeld terminal is, moeten we het volgende uitvoeren:

$ pkill terminal

Opmerking: De lengte van de procesnaam in pkill is beperkt tot 15 tekens.

pkill lijkt handiger omdat je een proces kunt beëindigen zonder de PID te hoeven opzoeken. Maar als je meer controle over je systeem wilt hebben, gaat er niets boven het ‘kill‘-commando. Met kill heb je een beter inzicht in het proces dat je beëindigt.

We hebben al een gedetailleerde gids behandeld over kill-, pkill- en killall-commando’s.

Voor degenen die X server gebruiken, is er nog een ander hulpprogramma genaamd xkill waarmee je een proces vanuit het X-venster kunt beëindigen zonder de procesnaam of de PID door te geven.

Het hulpprogramma xkill dwingt de X-server om de communicatie met zijn client te verbreken, wat resulteert in het beëindigen van de client door zijn X-bron. xkill, dat een onderdeel is van de X11-hulpprogramma’s, is erg handig om onnodige vensters te sluiten.

Het ondersteunt opties zoals verbinding maken met een specifieke X-server (-display displaynaam) met behulp van het weergavenummer wanneer er meerdere X-servers tegelijk op een host worden uitgevoerd en alle clients (-all, niet aanbevolen) met vensters op het scherm, evenals het meenemen van het kader (-frame) in overweging.

Om een lijst van alle clients te krijgen, kunt u het volgende uitvoeren:

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

Als er geen bronidentificatie wordt doorgegeven met id, verandert xkill de muiscursor in een speciaal symbool, vergelijkbaar met ‘X’. Klik gewoon op het venster dat u wilt sluiten en dit zal de communicatie met de server verbreken of het programma beëindigen.

$ xkill
Kill Process Using xkill

Het is belangrijk op te merken dat xkill niet garandeert dat het sluiten van de communicatie het succesvol zal beëindigen/afbreken. De meeste toepassingen worden beëindigd wanneer hun communicatie met de server wordt verbroken. Er kunnen echter nog enkele toepassingen actief zijn.

Punten die hier vermeld moeten worden:

  1. Deze tool werkt alleen wanneer de X11-server actief is, aangezien xkill een onderdeel is van het X11-hulpprogramma.
  2. Verwar het sluiten en beëindigen van een bron niet met elkaar. Bij het beëindigen van een bron kunt u verwachten dat deze niet netjes wordt afgesloten.
  3. Dit is geen vervanging voor het kill-hulpprogramma.
Moet ik naar de Linux-opdrachtregel gaan om xkill te starten?

Nee, je hoeft xkill niet vanaf de Linux-opdrachtregel uit te voeren. Je kunt een sneltoets instellen en xkill oproepen door dezelfde toetscombinatie in te drukken.

Zo stel je een sneltoets in op een typische gnome3 bureaubladomgeving.

Ga naar Instellingen -> Selecteer Toetsenbord, klik op ‘+’ en voeg een naam en opdracht toe. Klik op de nieuwe invoer en druk op de toets die je als sneltoetscombinatie wilt gebruiken. Ik heb Ctrl+Alt+Shift+x gekozen.

Gnome Settings
Add Shortcut Key

De volgende keer dat je een X-bron wilt beëindigen, roep je de toetscombinatie op (Ctrl+Alt+Shift+x) en je zult merken dat je muisaanwijzer verandert in x. Klik op de bron x die je wilt beëindigen en klaar!

Source:
https://www.tecmint.com/kill-processes-unresponsive-programs-in-ubuntu/