Próbowałem zabić wszystkie moje zadania w tle przesłane wcześniej przez KUbuntu przez
kill -9 $(jobs -p)
Chociaż polecenie to natychmiast nadało komunikat podobny
[1] Zabił myjob1
[2] Zabił myjob2
Nadal widzę, że ich procesy zawieszają się na wyjściu top, a użycie procesora i pamięci nie ulega zmianie na wyjściu uptime i jest bezpłatne.
Więc chyba nie zabiłem ich odpowiednio. Czy ktoś może wyjaśnić, co się ze mną dzieje i co mam zrobić?
Odkryłem, że na górze, jeśli wpisz k i wprowadź PID, mogę zabijać procesy jeden po drugim. Czy to różni się od polecenia kill?
Znalazłem też gdzieś w Internecie http://www.ruhr.de/home/smallo/award.html informację o niezalecaniu zabicia -9
Bezużyteczne użycie formularza Kill -9
(Cytat ohyda)
Nie nie nie. Nie używaj kill -9.
Nie daje to procesowi możliwości czystego:
1) zamknij połączenia gniazd
2) wyczyść pliki tymczasowe
3) poinformować dzieci, że wyjeżdża
4) zresetować charakterystykę terminala
i tak dalej i tak dalej i tak dalej.
Ogólnie rzecz biorąc, wyślij 15 i poczekaj sekundę lub dwie, a jeśli to nie zadziała, wyślij 2, a jeśli to nie zadziała, wyślij 1. Jeśli to nie zadziała, USUŃ BINARNY, ponieważ program źle się zachowuje!
Nie używaj kill -9. Nie wyjmuj kombajnu tylko po to, by posprzątać doniczkę.
Czy to prawda? Co to znaczy „wyślij 15”, „wyślij 2” i „wyślij 1”? Czy sami sobie nakazują, czy „zabij -15 PID”, „zabij -2 PID” i „zabij -1 PID”?
Dziękuję i pozdrawiam!