polecenie kill w systemie Linux (znajdujące się w /bin/kill) to wbudowane polecenie używane do ręcznego kończenia procesów. zabić polecenie wysyła sygnał do procesu, który kończy proces. Jeśli użytkownik nie określi żadnego sygnału, który ma zostać wysłany wraz z poleceniem kill, to domyślny TERMIN wysyłany jest sygnał kończący proces.
Podstawowa składnia polecenia kill w systemie Linux
Podstawowa składnia polecenia `kill` jest następująca:
Składnia:
kill [signal] PID>
Tutaj,
- PID = Komenda `kill` wymaga identyfikatora procesu (PID) procesu, który chcemy zakończyć.
- [sygnał] = Musimy określić sygnał, a jeśli nie określimy sygnału, sygnał domyślny ` TERMIN` jest wysyłany w celu zakończenia procesu
Sygnały można określić na trzy sposoby:
Sygnały można określić na trzy sposoby; są one następujące:
1. Według numeru:
Sygnał możemy określić za pomocą liczby. Na przykład mamy PID ` 1212 ` i chcesz wysłać sygnał `SIGKILL`, aby zabić ten PID. SIGKILL ma numer sygnału ` 9 ` (Aby znaleźć numery sygnałów, uruchom polecenie `kill -l`).
Składnia:
kill -9 1212>
2. Z prefiksem SIG (np./ -SIGkill)
Sygnał możemy również określić za pomocą prefiksu SIG. Na przykład musimy wysłać sygnał ` TERMIN `, a PID to ` 1432 `. Aby po prostu sprawdzić numer sygnału `SIGTERM`, możemy użyć polecenia `kill -l`.
Składnia:
kill -SIGTERM 1432>
3. Bez prefiksu SIG:
Sygnały możemy również określić bez użycia prefiksu SIG. Na przykład, jeśli chcesz wysłać sygnał ` TERMIN` i PID` 1234 `. Aby po prostu sprawdzić numer sygnału `TERM`, możemy użyć polecenia `kill -l`.
Składnia:
kill -TERM 1234>
Niektóre typowe sygnały w poleceniu zabicia
Poniższa tabela przedstawia niektóre typowe sygnały i odpowiadające im numery.
| Nazwa sygnału | Numer sygnału | Opis |
|---|---|---|
| WYTRZYMAJ | 1 | Wykryto zawieszenie na terminalach sterujących lub śmierć procesu sterującego. |
| SIGINT | 2 | Przerywa z klawiatury. |
| SIGKILL | 9 | Zabija sygnał. |
| TERMIN | piętnaście | Kończy sygnał. |
Aby sprawdzić nazwę i numer sygnału, możemy użyć ` zabić -l `polecenie.
Opcje i przykłady polecenia kill w systemie Linux
zabić -l Opcja
Aby wyświetlić wszystkie dostępne sygnały, możesz użyć poniższej opcji polecenia:
Składnia:
kill -l>
zabić -l
Notatka:
- Ujemne wartości PID służą do wskazania identyfikatora grupy procesów. Jeśli przekażesz identyfikator grupy procesów, cały proces w tej grupie otrzyma sygnał.
- PID równy -1 jest bardzo wyjątkowy, ponieważ wskazuje wszystkie procesy z wyjątkiem kill i init, które są procesem nadrzędnym wszystkich procesów w systemie.
- Aby wyświetlić listę uruchomionych procesów, użyj polecenia ps a to pokaże działające procesy z ich numerem PID. Aby określić, który proces powinien otrzymać sygnał zabicia, musimy podać PID.
Składnia:
ps>
ps
zabij PID Opcja
Ta opcja określa identyfikator procesu, który ma zostać zabity.
najpiękniejszy uśmiech na świecie
Składnia:
kill pid>
zabić -s Opcja
Opcja ta określa sygnał, który ma być wysłany do procesu.
Składnia:
kill -signal pid>
kill Command w systemie Linux - często zadawane pytania
Jak zabić proces z wiersza poleceń systemu Linux?
Aby zabić proces z wiersza poleceń systemu Linux, możesz użyć metody
kill>polecenie, po którym następuje identyfikator procesu (PID) procesu docelowego. Na przykład, aby zakończyć proces z PID 1234, należy użyć następującego polecenia:kill 1234>Domyślnie
kill>polecenie wysyła sygnał SIGTERM, umożliwiając procesowi wykonanie operacji czyszczących przed zakończeniem. Jeśli proces nie odpowiada na SIGTERM lub jeśli wymagane jest natychmiastowe zakończenie, możesz użyć sygnału SIGKILL z-9>opcja:kill -9 1234>Należy pamiętać, że wymuszone zakończenie procesu za pomocą SIGKILL może spowodować utratę lub uszkodzenie danych, dlatego zaleca się najpierw wypróbować SIGTERM i skorzystać z SIGKILL tylko w razie potrzeby.
Jak zabić wiele procesów na raz?
Możemy użyć polecenia kill, aby zabić wiele procesów jednocześnie. Musimy tylko podać wiele identyfikatorów PID oddzielonych spacjami lub możemy również użyć polecenia „killall”, aby zabić wszystkie procesy o określonej nazwie.
Na przykład:
Jeśli chcemy zabić procesy o identyfikatorach PID, takich jak 1234, 4321 i 2342, możemy użyć następującego polecenia:
kill 1234 4321 2342>Jeśli chcemy zabić wszystkie procesy o nazwie Firefox. Możemy użyć następującego polecenia.
killall firefox>
Czy można bezpiecznie zabić procesy systemowe?
Nie, należy pamiętać, że zabijanie tylko procesów, o których wiemy, że można je bezpiecznie zabić, a zabijanie procesów systemowych może spowodować niestabilność systemu. Zawsze lepiej jest skorzystać z innych metod, takich jak ponowne uruchomienie systemu lub identyfikacja pierwotnej przyczyny problemu i jej naprawienie.
Jaka jest różnica między SIGTERM i SIGKILL w poleceniu „kill” w systemie Linux?
SIGTERM, wysyła sygnał zakończenia do procesu, który pomaga w bezpiecznym wyjściu. Natomiast SIGKILL wysyła do procesu sygnał „zabicia”, który natychmiast i stanowczo kończy procesy.
Na przykład:
Aby wysłać sygnał `SIGTERM` i PID `4321` możemy użyć następującego polecenia.
kill -15 4321>Aby wysłać sygnał `SIGKILL` i PID `4321`, możemy użyć następującego polecenia.
kill -9 4321>
Jak znaleźć identyfikator procesu (PID) określonego programu w systemie Linux?
Aby znaleźć PID konkretnego programu, możesz użyć
pgrep>polecenie, po którym następuje nazwa programu. Na przykład, aby znaleźć PID procesu Firefoksa, należy wpisać:pgrep firefox>
Jaki jest celpkill>polecenie i czym różni się ono od poleceniakill>Komenda?
The
pkill>polecenie służy do wysyłania sygnałów do procesów na podstawie ich nazw, zapewniając wygodniejszy sposób kończenia procesów. Różni się odkill>polecenie, umożliwiając użytkownikom określanie procesów według nazwy, a nie PID.
Jak mogę sprawdzić wykorzystanie zasobów (procesor, pamięć) określonego procesu w systemie Linux?
Aby sprawdzić wykorzystanie zasobów konkretnego procesu, możesz użyć metody
top>polecenie wraz z identyfikatorem procesu (PID). Na przykład, aby monitorować wykorzystanie zasobów procesu z PID 1234, możesz uruchomić:top -p 1234>
Wniosek
Polecenie `kill` w systemie Linux jest bardzo potężnym narzędziem do zarządzania procesami. Rozumieliśmy różne sposoby określania sygnałów i dostępnych opcji w poleceniu kill, co może nam pomóc w efektywnym zarządzaniu zasobami systemowymi oraz szybkim i skutecznym rozwiązywaniu problemów.
zabić -s