Główna » jak » Jak zabić aplikację komputerową lub proces w tle w systemie Linux

    Jak zabić aplikację komputerową lub proces w tle w systemie Linux

    Windows ma Ctrl + Alt + Delete, a Mac ma Command + Option + Escape, aby wymusić zamknięcie zamrożonych aplikacji. Linux ma swoje własne sposoby "zabijania" tych źle działających procesów, niezależnie od tego, czy są to okna graficzne, czy procesy działające w tle.

    Dokładne narzędzia graficzne, których możesz użyć, będą zależeć od twojego środowiska graficznego, ponieważ każde środowisko pulpitu oferuje różne narzędzia do stołu. Ale większość z nich jest bardzo podobna.

    Z graficznego pulpitu

    Współczesne komputery stacjonarne z Linuksem radzą sobie z tym całkiem dobrze i mogą być zaskakująco automatyczne. Jeśli aplikacja nie odpowiada, pulpit z menedżerem CompositionG będzie często wyszarzał całe okno, aby pokazać, że nie odpowiada.

    Kliknij przycisk X na pasku tytułowym okna, a menedżer okien często informuje Cię, że okno nie odpowiada. Możesz dać mu trochę czasu na odpowiedź lub kliknij opcję "Wymuś zakończenie", aby zamknąć aplikację.

    W systemie Linux menedżer okien, który maluje paski tytułu, jest oddzielny od samej aplikacji, więc zazwyczaj odpowiada, nawet jeśli okno nie. Niektóre okna jednak malują własne interfejsy, więc to nie zawsze działa.

    Aplikacja "Xkill" może szybko zabić każde okno graficzne na twoim pulpicie.

    W zależności od środowiska graficznego i jego konfiguracji, możesz włączyć ten skrót, naciskając Ctrl + Alt + Esc. Możesz także uruchomić komendę xkill - możesz otworzyć okno Terminala, wpisz xkill bez cudzysłowów i naciśnij Enter. Możesz też nacisnąć skrót podobny do Alt + F2, który otwiera okno dialogowe "Uruchom polecenie" na pulpicie Unity w systemie Ubuntu i wiele innych. Rodzaj xkill w oknie dialogowym i naciśnij Enter.

    Twój kursor zmieni się na X. Kliknij okno, a narzędzie Xkill określi, który proces jest powiązany z tym oknem, a następnie natychmiast zabije ten proces. Okno natychmiast zniknie i zamknie się.

    Twój pulpit Linux prawdopodobnie ma narzędzie, które działa podobnie do Menedżera zadań w systemie Windows. Na komputerze desktop Ubuntu Unity, GNOME i innych pulpitach opartych na GNOME jest to narzędzie Monitora systemu. Otwórz narzędzie Monitor systemu, aby wyświetlić listę uruchomionych produktów - w tym te działające w tle. Można także przymusowo zabijać procesy, jeśli źle się zachowują.

    Z terminalu

    Powiedzmy, że chcesz zrobić to wszystko z terminala. Omówiliśmy wiele narzędzi, których można użyć do tego, gdy przyjrzeliśmy się komendom do zarządzania procesami w systemie Linux.

    Załóżmy, że Firefox działa w tle i chcemy go zabić z terminala. Standardowe polecenie kill ma numer identyfikacyjny procesu, więc musisz go najpierw znaleźć.

    Na przykład możesz uruchomić polecenie takie jak:

    ps aux | grep firefox

    Które wyświetliłoby wszystkie procesy i potok z tą listą do komendy grep, która ją odfiltruje i wydrukuje tylko linie zawierające Firefoksa. (Druga linia, którą zobaczysz, to sam proces grep.) Możesz również uzyskać identyfikator procesu z górnego polecenia i wielu innych miejsc.

    Podaj numer identyfikacyjny procesu z procesu Firefoksa - po prawej stronie nazwy użytkownika - i przekaż go komendzie "zabij". Oznacza to, że uruchom polecenie tak:

    zabij ####

    Jeśli proces działa jako inny użytkownik, musisz najpierw zostać użytkownikiem root - lub przynajmniej uruchomić komendę kill za pomocą polecenia sudo, jak na przykład:

    sudo kill ####

    To podstawowa metoda, ale nie jest to najszybsza metoda. Komendy pgrep i pkill pomagają to usprawnić. Na przykład, uruchom "pgrep firefox", aby zobaczyć identyfikator procesu uruchomionego procesu Firefoksa. Następnie możesz podać tę liczbę do komendy kill.

    Lub pomiń to wszystko i uruchom "pkill firefox", aby zabić proces Firefoxa bez znajomości jego numeru. pkill wykonuje podstawowe dopasowywanie wzorców - spróbuje znaleźć procesy z nazwami zawierającymi firefox.

    Komenda killall jest jak pkill, ale nieco bardziej precyzyjna. Zabije wszystkie uruchomione procesy pod określoną nazwą. Tak więc uruchomienie "killall firefox" zabije wszystkie działające procesy o nazwie "firefox", ale nie ma żadnych procesów, które mają po prostu firefox w swoich nazwach.


    Są to dalekie od jedynych poleceń zawartych w systemie Linux do zarządzania procesami. Jeśli używasz jakiegoś oprogramowania do administrowania serwerem, może to również być pomocne w zabijaniu i ponownym uruchamianiu procesów.

    Usługi systemowe działają inaczej niż procesy - aby zmniejszyć, uruchomić lub uruchomić usługi, musisz użyć określonych komend. Te konkretne polecenia mogą być różne w różnych dystrybucjach Linuksa.

    Image Credit: Lee on Flickr