Zabijanie nieposłusznych procesów – polecenie kill

16 Sierpień 2010 Dodaj komentarz

Witam wszystkich po nieco dłuższej przerwie. Dzisiaj przyszedł czas na poskromienie naszych (czasami nieposłusznych) procesów. Do tego celu bardzo skutecznie nadaje się polecenie kill.

Działanie i używanie polecenia do skomplikowanych nie należy. Polecenie to po prostu wysyła odpowiedni sygnał do działającego (lub nie) procesu z żądaniem jego zamknięcia, zatrzymania. Nie będziemy się skupiali na wszystkich dostępnych sygnałach, a jest ich 64! Zamiast tej nieco przerażającej liczby omówimy sobie jedynie 4.

SIGTERM – powoduje poprawne zamknięcie procesu

SIGKILL – powoduje prawdziwe zabicie procesu

SIGSTOP – zatrzymanie procesu

SIGCONT – wznowienie działania procesu, jeśli wcześniej został zatrzymany

Domyślnie stosowanym sygnałem jest SIGTERM. Co do ostatnich trzech sygnałów to one nie są tak naprawdę przetwarzane przez proces. Sprawę załatwia system operacyjny.

Do pełni szczęści potrzebny będzie nam jeszcze numer PID procesu. Sprawdzić go możemy za pomocą polecenia ps. Jeżeli już posiadamy nasz upragniony PID to możemy spróbować zakończyć wybrany przez nas proces poprzez wydanie następującego polecenia:

kill nr_PID

Nie ma również przeszkód, aby zakończyć wiele procesów naraz:

kill nr_PID1 nr_PID2 nr_PID3

Jeżeli będziemy chcieli zmienić typ sygnału to możemy się posługiwać jego wartością liczbową lub nazwą:

kill -9 nr_PID lub kill -SIGKILL nr_PID

Jeżeli będziemy chcieli poznać listę wszystkich sygnałów to możemy posłużyć się opcją -l polecenia kill lub podręcznikiem man.

Na koniec podam przykład działania sygnału SIGSTOP oraz SIGCONT. Najlepiej jak otworzymy sobie program gedit. Następnie wydamy polecenie:

kill -SIGSTOP nr_PID_gedit

Jeżeli teraz przełączymy się teraz na program gedit to możemy zaobserwować, że stanie się on nieaktywny. Do ponownego działania możemy go przywrócić korzystając z sygnału SIGCONT:

kill -SIGCONT nr_PID_gedit

Numery PID możemy również sprawdzić korzystając np. z Monitora systemu w środowisku GNOME. Tyle, że tam jest on nazwany jako ID.

Na teraz to wszystko i zapraszam ponownie.

Wyświetlamy zalogowanych użytkowników – who

29 Marzec 2010 Dodaj komentarz

Nie raz zachodzi potrzeba sprawdzenia zalogowanych użytkowników w systemie. Czasami wynika to z czystej ciekawości, a czasami możemy chcieć sprawdzić, czy nikt nie autoryzowany nie zalogował się do naszego systemu (próby dostania się do systemu można wyśledzić w logach, ale to nie jest tematem dzisiejszego wpisu). Czytaj dalej…

Pisanie skryptów w BASH – część 1 – podstawy

1 Grudzień 2009 Dodaj komentarz

Skoro mały wstęp do pisania skryptów w BASH mamy już za sobą przejdźmy teraz do nieco mniej przyziemnych rzeczy i zajmijmy się już elementami, które to znajdą się właśnie w naszych skryptach. Warto wspomnieć w ramach wstępu, że w skryptach oprócz np. elementów sterujących używa się poleceń konsolowych. Czytaj dalej…

Tworzenie skrótów do plików i folderów

7 Listopad 2009 1 komentarz

Tworzenie skrótów wydaje się być łatwe i jest, ale w systemie Linux istnieją dwa różne rodzaje skrótów – miękkie i twarde. Wszytko to można wykonać jednym poleceniem ln, ale najpierw wyjaśnijmy sobie dwa wyżej wymienione pojęcia. Czytaj dalej…

Wyświetlanie informacji o systemie – polecenie uname

5 Listopad 2009 Dodaj komentarz

Polecenie uname jest poleceniem o charakterze czysto informacyjnym. Dzięki niemu możemy się dowiedzieć jakiego używamy jądra systemy, czy też jaka jest architektura systemu. Polecenie to przydaje się np. wtedy, gdy chcemy zainstalować jakieś dodatkowe zbiory źródeł i potrzebujemy do tego dokładnych informacji. Czytaj dalej…

Pisanie skryptów w BASH – wstęp

4 Listopad 2009 Dodaj komentarz

Ta część cyklu poświęconemu pisaniu skryptów w systemie Linux będzie najmniej techniczna spośród całego cyklu. Zdecydowałem się postąpić tak, aby pokazać, że na początku pisania skryptów czy programowania nie zwraca się uwagi na pozornie błahe rzeczy, które tak naprawdę są bardzo istotne. Czytaj dalej…

Skróty klawiaturowe w powłoce BASH

4 Listopad 2009 Dodaj komentarz

Praca w konsoli stanie się łatwiejsza, gdy uda się nam stosować w niej skróty klawiaturowe. Pozwalają one na np. przejście na początek, bądź też na koniec linii, wycinanie linii, kasowanie całych słów itp. . Czytaj dalej…