Jak zabić wszystkie procesy dla użytkownika w Linux

Jak zabić wszystkie procesy dla użytkownika w Linux
Nie ma nic bardziej frustrującego niż zalogowanie się do systemu Linux tylko po to, aby wiele procesów spowolniło komputer. Chociaż Linux jest bardzo dobry w zarządzaniu procesami, może być konieczne rozwiązanie niektórych procesów ręcznie.

W tym samouczku omówimy, jak znaleźć i zabić procesy od konkretnego użytkownika. Będziemy używać narzędzi takich jak Pkill i Killall.

NOTATKA: Upewnij się, że masz dostęp do konta administracyjnego lub konta głównego, ponieważ zwykli użytkownicy mogą zabić tylko swoje procesy, a nie procesy należące do innych użytkowników. Z drugiej strony użytkownik root może zabić wszystkie procesy.

Zacznijmy.

Zrozumienie sygnałów systemowych

Aby zabić określony proces, polecenie wysyła sygnał do procesu. Domyślnie komendy zabij takie jak Killall, wysyłają termin, który wdzięcznie powstrzymuje określony proces.

Zanim przystąpimy do zabicia dowództwa, weźmy krótki przegląd sygnałów procesowych.

Wspólne rodzaje sygnałów zabijania obejmują:

  • Wzdychanie - Ten sygnał przeładowuje proces. Ma wartość liczbową 1.
  • Sigint - Przerwać z klawiatury, takiej jak ctrl + c. Ma wartość liczbową 2.
  • Sigkill - Zabij proces. Ma wartość liczb całkowitą 9.
  • Sigterm - Jest to sygnał zakończenia, który, jak wspomniano, wdzięcznie zatrzymuje proces. Ma wartość liczb całkowitą 15.
  • Sigstop - Zatrzymuje proces. Ma wartość liczbową wynoszącą 17, 19 lub 23.

NOTATKA: Podczas zakończenia procesów dobrze jest zacząć od najmniej agresywnego sygnału, takiego jak termin. Korzystanie z sygnału takiego jak termin pozwoli programowi prawidłowe wyłączyć i użyć miar ustawionych, gdy program odbiera termin sygnał.

Pomocny może być również sygnał zabójstwa, zwłaszcza jeśli proces napotkał błąd, nie wyjdzie lub nie reaguje na sygnał INT.

Aby wyświetlić wszystkie dostępne sygnały, użyj polecenia takiego jak zabójstwo -l

Metoda nr 1 - polecenie Killall

Pierwszym poleceniem, którego możesz użyć do zabicia procesów Linuksa, jest polecenie Killall. W tym celu potrzebujesz wartości PID lub nazwy procesu, który chcesz zakończyć.

Możesz użyć narzędzia takiego jak PGREP, aby uzyskać PID z określonego procesu.

Na przykład:

$ pgrep bash
2500

Po uzyskaniu wartości PID procesu możesz zakończyć za pomocą polecenia Kill jako:

$ Killall -15 2500
# Lub
$ Killall -15 Bash

Powyższe polecenie wyśle ​​wdzięczny sygnał zakończenia.

Aby wysłać sygnał zabójstwa, użyj liczby całkowitej -9 jako:

$ Kill -9 2500
# Lub
$ KILLALL -9 BASH

Jak zabić wszystkie procesy użytkowników za pomocą Killall

Killall Command umożliwia zakończenie wszystkich procesów należących do konkretnego użytkownika. Aby to zrobić, użyj flagi -u.

Na przykład, aby zakończyć wszystkie procesy odrodzone przez użytkownika Ubuntu.

$ sudo killall -u ubuntu

OSTROŻNOŚĆ: W zależności od użytkownika określonego w poleceniu, zakończenie procesów może spowodować awarię systemu lub zatrzymanie krytycznych procesów systemowych. Dlatego przed zastosowaniem tego polecenia upewnij się, że dany użytkownik nie uruchamia procesów, których nie chcesz zakończyć.

Metoda nr 2: polecenie PKILL

Kolejnym świetnym narzędziem, którego możesz użyć do zakończenia procesów Linux, jest polecenie Pkill. To polecenie działa podobnie jak Killall.

Na przykład, aby zakończyć proces Bash za pomocą Pkill, użyj polecenia:

$ pkill -15 bash
# Lub
$ PKILL -15 2500

Aby zabić wszystkie procesy należące do użytkownika Ubuntu, możemy użyć polecenia:

sudo pkill -9 -U Ubuntu

Wniosek

To wszystko dla tego.

W tym przewodniku szybko omówiliśmy sposoby zakończenia procesów w Linux i różnych rodzajach sygnałów zabijania. Jak widać, zabicie jednego procesu lub wielu procesów należących do określonego użytkownika Linuksa jest łatwe.