# Jak zabic proces?

## Xywa

Jak w temacie - jak zabic proces - np. zawieszony prgogram - w moim przypadku Opera.

Robielm to juz setki razy, wchodzilem w TOP, wciskalem k (kill), podawalem PID procesu, potem yes albo ENTER i bylo OK. Ostatnio mam jednak problem z zabiceim Opery - nie wiem naprawde czemu. Wszystko inne moge zabic - Opery nie.....

Macie jakies sugestie (poza restrartem systemu)?

Aha, probuje to zrobic z konta roota, a Opera odpalona przez zwyklego usera.

Arfrever: Ortografia

----------

## arturx

killall opera

albo: skill -u user opera

----------

## SlashBeast

kill -9 <pid opery> np. kill -9 1234 ew. htop wybrac na liscie proces, F9 i wybrac sigterm albo sigkill jak sigterm nie zadziała.

----------

## arturx

w jakim pakiecie jest htop ?

bo u mnie :

```

localhost ~ # htop

bash: htop: command not found

```

----------

## Diverse

Pewnie w htop

----------

## mentorsct

Ja zawsze używałem np:

skill -9 firefox-bin

----------

## C1REX

Do X-owych aplikacji ja przeważnie używam ctrl-alt-Esc i klikam czaszką na wybraną aplikację.

----------

## SlashBeast

ta caszka do xkill (emerge xkill)

Przy xkillu czasem mam tak, ze o ile okno apliakcji zginie to proces dalej jest i czasem zawala mi znaczną moc procka.

htop jest w.... htop.

----------

## master66

Czemu niektórzy tu używają skilla? Czym on się wyróżnia w stosunku do standardowego killa? Jego manual wręcz odradza jego używanie...

----------

## klatecki

ja używam 

```
killall -9 opera
```

 nie było jeszcze procesu którego nie dało się zabić w ten sposób

----------

## master66

 *klatecki wrote:*   

> ja używam 
> 
> ```
> killall -9 opera
> ```
> ...

 

To chyba nie takie niezwykłe, skoro wszystkie te narzędzia korzystają z wywołania systemowego kill, a sygnału nr 9 (SIGKILL) żaden proces nie może zignorować

----------

## dylon

 *master66 wrote:*   

> 
> 
> To chyba nie takie niezwykłe, skoro wszystkie te narzędzia korzystają z wywołania systemowego kill, a sygnału nr 9 (SIGKILL) żaden proces nie może zignorować

 

Oczywiscie ze procesy moga ignorowac kill -9  :Razz:  (na szczescie niezbyt czesto...)

np. jesli walniety naped nie chce poprawnie odczytac plyty  :Very Happy: 

----------

## master66

 *dylon wrote:*   

>  *master66 wrote:*   
> 
> To chyba nie takie niezwykłe, skoro wszystkie te narzędzia korzystają z wywołania systemowego kill, a sygnału nr 9 (SIGKILL) żaden proces nie może zignorować 
> 
> Oczywiscie ze procesy moga ignorowac kill -9  (na szczescie niezbyt czesto...)
> ...

 

SIGKILL i SIGSTOP są "nieignorowalne" tzn. że nie można żadnego procesu w UNIXach uczynić niewrażliwym na nie, a to że Twój CDROM nie słucha co się do niego mówi, to już jego problem  :Very Happy: 

----------

## Arfrever

Moved from Polskie forum (Polish) to Polish OTW.

----------

## lsdudi

 *master66 wrote:*   

>  *dylon wrote:*    *master66 wrote:*   
> 
> To chyba nie takie niezwykłe, skoro wszystkie te narzędzia korzystają z wywołania systemowego kill, a sygnału nr 9 (SIGKILL) żaden proces nie może zignorować 
> 
> Oczywiscie ze procesy moga ignorowac kill -9  (na szczescie niezbyt czesto...)
> ...

 

jest jeden wyjątek init jego zabić nie można

----------

## lsdudi

 *dylon wrote:*   

>  *master66 wrote:*   
> 
> To chyba nie takie niezwykłe, skoro wszystkie te narzędzia korzystają z wywołania systemowego kill, a sygnału nr 9 (SIGKILL) żaden proces nie może zignorować 
> 
> Oczywiscie ze procesy moga ignorowac kill -9  (na szczescie niezbyt czesto...)
> ...

 

Źle rozumujesz

Za naped odpowiada jądro a nie jakiś proces w userspace więc processu/wątku czytajacego płyte nie da sie zabić mozesz jedynie wywalić moduł cdromu z pamięci.

Killa jedynie init ignoruje a resztę możesz zabijać ile wlezie

----------

## unK

 *lsdudi wrote:*   

> jest jeden wyjątek init jego zabić nie można

 

Próbowałeś? Bo ja nie, ale afaik można. Tyle, że wtedy się dostaje kernel panic.

----------

## Xywa

killall -9 opera pomogło   :Exclamation: 

Zastanawia mnie jednak dlaczego nie mogłem zabić tego z programu top (nawet z poziomu roota)?   :Rolling Eyes: 

Co do zabicia "trupią czaszką" (ctrl-alt-Esc) - owszem zabijało to okienko, ale proces działał cały czas pożerając 99.99% zasobów procesora....

----------

## one_and_only

 *Xywa wrote:*   

> 
> 
> Zastanawia mnie jednak dlaczego nie mogłem zabić tego z programu top (nawet z poziomu roota)?  
> 
> 

 

Bo:

 *man wrote:*   

> 
> 
> kill  wysyła  podany  sygnał  do danego procesu. Jeżeli nie podano numeru sygnału, wysyłany jest sygnał TERM.
> 
>        Sygnał TERM kończy te procesy, które go nie przechwytują. Dla  innych  procesów  niezbędne  może  się  okazać
> ...

 

A ty chyba nie dawałeś -9. Co do killowania to polecam również pkill, można zabijać podając tylko część nazwy procesu.

----------

## master66

Jeszcze taka ciekawostka: gdy wyłącza się system, to init wysyła na moment przed wyłączeniem sygnały do wszystkich procesów żeby je zakończyć: najpierw SIGTERM (po dobroci), a do pozostałych SIGKILL (brutalnie).

Nie dostałem odpowiedzi na moje pierwsze pytanie w czym to jest lepszy ten skill??

----------

## ender74

 *master66 wrote:*   

> Nie dostałem odpowiedzi na moje pierwsze pytanie w czym to jest lepszy ten skill??

 

Choćby w tym że nie musisz znać pid'u procesu(taki kill dla leniwych).

----------

## unK

Przy killall też nie trzeba.

----------

## lsdudi

 *unK wrote:*   

>  *lsdudi wrote:*   jest jeden wyjątek init jego zabić nie można 
> 
> Próbowałeś? Bo ja nie, ale afaik można. Tyle, że wtedy się dostaje kernel panic.

 

Próbowałem. może ty także   spróbuj

```
kill -9 1
```

```
 kill -15 1
```

init nie przyjmuje tych sygnałów 

jedno  ze standardowych pytań dla adminów linuksowych.

Na linuksie po wpisaniu tego nic sie nie stanie na bsd owszem da sie zabić inita

----------

## Zwierzak

 *Quote:*   

> Dzieci pytają się ojca:
> 
> - Tatusiu, tatusiu, co robisz z tą siekierką?
> 
> - Killuje procesy potomne!

 

----------

## red_4

Można też przekazać listę programów do "zabicia" w innym poleceniu stosując odwrócony apostrof np.:

```
kill -9 `ps -A|grep opera`
```

----------

