Bądź: Wyszukaj na stronie z użyciem Google
reklama:

poniedziałek, 28 września 2009

Podstawy: Zamykanie procesów w Linuksie

Autor: , 09:00, poniedziałek, 28 września 2009


Ogólnie wiadomo, że Linux systemem jest mniej awaryjnym niż Windows. Nie zmienia to jednak faktu, że nawet Unix potrafi się zawiesić. Ten wpis będzie poświęcony procesom i ich zamykaniu (zwanym też zabijaniem) przez środowiska graficzne i konsole.

System zawiesza się na przykład podczas pracy z różnymi programami (zasobożernymi). Mamy szczęście gdy jeszcze rusza nam się kursor, a zablokowane jest tylko okienko z danym programem. Zdarzają się jednak i takie przypadki, gdy musimy wejść do konsoli i wpisać parę zaklęć by nasz system znowu działał.

Jeśli zawiesił się tylko jeden program to bez problemu możemy "ubić" odpowiadający za niego proces. Wystarczy wejść w System=>Administracja=>Monitor systemu:

Otworzy nam się okienko (jak na fotce wyżej), klikamy zakładkę 'Procesy', wybieramy dany proces i klikamy “Zakończ proces”. W tym przypadki wszystko jest fajnie, jednakże jak wspomniałem wcześniej nie zawsze działa kursor i czasem nie możemy swobodnie poruszać się po systemie w środowisku graficznym.

Jak sobie z tym poradzić? Musimy wejść w tryb konsoli (Ctrl+Alt+F1). Kolejno, wypadałoby wyświetlić listę procesów - posłuży nam do tego polecenie PS. Interesują nas tylko wybrane opcje z komendy PS, są to : a, u, x. Wklepujemy :
ps -aux
Dla ładniejszego wylistowania procesów możemy również użyć polecenia pstree. Ujrzymy wtedy ładne drzewko, tak jak na zdjęciu poniżej:

Na naszym ekranie wyświetli się długa lista procesów, nas interesują konkretny. Dużo szukania, pomóżmy sobie “grep“:
ps -aux | grep szukana_fraza

Nasze wyniki się zawęziły. Procesy są opisane przez kolumny, m.in USER i PID. Te będą nas przynajmniej najbardziej interesowały. USER określa do jakiego użytkownika należy proces, a PID jest skrótem od process identification.

Skoro już umiemy odnaleźć proces, wypadałoby go ubić. Do zabijania procesu służy komenda kill. Do zabijanego procesu możemy wysłać jeszcze sygnał, który określi jak ma być zabity proces. Ogólna składnia ubijania procesu wygląda tak :
kill [-s sygnał /-p] [-a] pid
Przykład:
kill -8 1221
lub
kill -SIGFPE 1221

Gdzie 1221, to numer PID danego procesu. Oba polecenia zrobią to samo, wartość liczbową sygnału możemy zastępować jego nazwą. Możemy użyć też komendy kill, bez parametru sygnału. Warto wspomnieć, że niektóre sygnały mają skróty klawiszowe, np. klawisz Delete, wyśle sygnał SIGINT. Sygnały stosuje się by określić jak ma zakończyć się dany proces, zaleca się stosowanie miękkiego zakańczania.

Umiemy już znaleźć proces, odpowiednio go ubić, po wszystkim wystarczy wrócić w tryb graficzny (alt+F7).

źródło: mijagi.boo.pl, korekta/skład: UbuCentrum.net
blog comments powered by Disqus

Prześlij komentarz


Popularne posty

Etykiety