Wyszukiwanie w witrynie

Jak zabić procesy systemu Linux/aplikacje, które nie odpowiadają, za pomocą polecenia „xkill”.


Jak zabić zasób/proces w systemie Linux? Oczywiście znajdujemy PID zasobu, a następnie przekazujemy PID do polecenia kill.

Mówiąc dokładniej, PID zasobu (powiedzmy terminala) możemy znaleźć jako:


ps -A | grep -i terminal

6228 ?        00:00:00 gnome-terminal

W powyższym wyniku liczba „6228” to PID procesu (gnome-terminal). Użyj polecenia kill, aby zakończyć proces, jak pokazano poniżej.


kill 6228

Polecenie kill wysyła sygnał do procesu, którego PID jest przekazywany wraz z poleceniem.

Alternatywnie możemy użyć polecenia pkill, które zabija proces na podstawie nazwy i innych atrybutów procesu. Aby zabić proces, powiedzmy, że nazywa się terminal, musimy wykonać:


pkill terminal

Uwaga: długość nazwy procesu w pkill jest ograniczona do 15 znaków.

pkill wydaje się bardziej przydatny, ponieważ możesz zabić proces bez konieczności sprawdzania jego PID. Ale jeśli chcesz mieć lepszą kontrolę nad swoim systemem, nic nie przebije polecenia „zabij”. Używając kill, będziesz miał lepszy wgląd w to, jaki proces zabijasz.

Omówiliśmy już szczegółowy przewodnik po poleceniach kill, pkill i killall.

Dla tych, którzy korzystają z serwera X, istnieje inne narzędzie o nazwie xkill, które może zabić proces z jego okna X bez podawania nazwy procesu lub jego PID.

Narzędzie xkill zmusza serwer X do zamknięcia komunikacji z klientem, co skutkuje zabiciem klienta przez jego zasób X. xkill, który jest częścią narzędzi X11, jest bardzo przydatny w zabijaniu niepotrzebnych okien.

Obsługuje takie opcje, jak łączenie się z określonym serwerem X (-display nazwa wyświetlana) przy użyciu numeru wyświetlacza, gdy na hoście jednocześnie działa wiele serwerów X Server i zabijanie wszystkich klientów (-all, niezalecane) z oknami najwyższego poziomu na ekranie i uwzględnij ramkę (-frame).

Aby uzyskać listę wszystkich klientów, których możesz uruchomić:


xlsclients
Przykładowe wyjście

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

Jeśli z identyfikatorem nie zostanie przekazany żaden identyfikator zasobu, xkill zamienia wskaźnik myszy w specjalny symbol, podobny do „X”. Po prostu kliknij okno, które chcesz zamknąć, a to zakończy komunikację z serwerem lub poinformuje, że program zostanie zabity.


xkill

Należy zauważyć, że xkill nie gwarantuje, że zamknięcie komunikacji zakończy się pomyślnie/przerwaniem. Większość aplikacji zostanie zabita, gdy komunikacja z serwerem zostanie zamknięta. Jednak kilka z nich może nadal działać.

Punkty, które należy tutaj wymienić:

  1. To narzędzie działa tylko wtedy, gdy uruchomiony jest serwer X11, ponieważ xkill jest częścią narzędzia X11.
  2. Nie mylić z zamknięciem i zabiciem zasobu. Zabijając zasób, możesz spodziewać się, że nie wyjdzie on czysto.
  3. Nie zastępuje to narzędzia kill.
Czy muszę przejść do wiersza poleceń Linuksa, aby wywołać xkill?

Nie, nie musisz uruchamiać xkill z wiersza poleceń Linuksa. Możesz ustawić skrót klawiaturowy i wywołać xkill, po prostu wciskając tę samą kombinację klawiszy.

Oto jak skonfigurować skrót klawiaturowy w typowym środowisku pulpitu gnome3.

Przejdź do Ustawienia –> Wybierz klawiaturę, kliknij „+” i dodaj nazwę oraz polecenie. Kliknij nowy wpis i naciśnij klawisz, którego chcesz użyć jako kombinacji klawiszy skrótu. Zrobiłem Ctrl+Alt+Shift+x.

Następnym razem, gdy będziesz chciał zabić zasób X, po prostu wywołaj kombinację klawiszy (Ctrl+Alt+Shift+x), a zauważysz, że wskaźnik myszy zmienił się na x. Kliknij x zasób, który chcesz zabić i gotowe!