Jak ubijać martwe procesy w Linuksie?

A istnieje jakiś skrypt do autostartu co wykrywa i ubija wątki które sie zwiesiły?

Czytam te cudaczne komendy i zastanawiam się po co ?

 

ps aux | grep nazwa_procesu
kill PID_procesu

 

ewentualnie klill z parametrem -9 / -15 itd

 

po co te dziwaczne komplikowanie :slight_smile:

 

pkill -f nazwa

O, coś takiego by się przydało, szczególnie na KDE Plasma 5. Zmieniłam środowisko, przy okazji Terminala usunęłam (przez przypadek), dzisiaj co chwilę klikałam “Zapisz”, “Zapisz”, “Zapisz”. No rozumiem, ale wnerwia mnie to, że po 5 minutach Plasma potrafi zionąć ducha. Dodatkowo instalowałam kde-applications, lecz jakoś serwery padły :/.

Ale pomijając to, dołączam się do pytania. Kiedy Plasma się zwiesi, nie da się nic zrobić. Jedynie przyciskam przez 7 sekund przycisk włączania, by laptop całkowicie się wyłączył.

Pozdrawiam, Neukrate.

 

 

Myslałem aby ktoś pomógł ogarnąć to w skrypt w którym znajduje sie zapętlona na forever istrukcja do killowania watków zombi ???

a potem taki skrypt do autostatu :slight_smile:

Prosty skrypt wykrywający i zabijający zombiee :slight_smile: :

#!/bin/bash

while :;do sleep 5;ps axu | awk '"[Zz]" ~ $8 { system(sprintf("kill -HUP %d", $2)); }';done

Ewentualnie można pobawić się parametrami kill zgodnie z tym:http://how-to.wikia.com/wiki/How_to_display_and_kill_zombie_processes

@fedora24x, @ShadowMan_:

​Poczytajcie najpierw trochę o tym czym są procesy zombie bo straszne głupoty wypisujecie.

Faktycznie zbytnio zasugerowałem się tą wiki przez co gdzieś po drodze wyłączyłem myślenie.

Tak czy inaczej lektura o zombie odrobiona.

Skoro mowa o zombie to można przetestować jego działanie na przykład:

(: & exec sleep 30) &

ps -eo pid,ppid,s | grep -wi z | awk '{print $1 " " $2}'

Poza zombie ciekawe są także “fork-bomby”. czy ktoś wie jak je bezpiecznie przetestować bez ryzyka zwiechy systemu?

https://wiki.archlinux.org/index.php/Fork_Bomb łatwo można się przed nimi zabezpieczyć, działa sprawnie, sam testowałem.

Działa. Przetestowane. Skutek:

bash: fork: Zasoby chwilowo niedostępne
bash: fork: retry: Zasoby chwilowo niedostępne
bash: fork: retry: Zasoby chwilowo niedostępne
bash: fork: retry: Brak procesów potomnych
bash: fork: retry: Brak procesów potomnych
bash: fork: retry: Zasoby chwilowo niedostępne
bash: fork: retry: Zasoby chwilowo niedostępne
bash: fork: Zasoby chwilowo niedostępne
bash: fork: Zasoby chwilowo niedostępne

[1]+ Zakończono : | :

No, tylko żeby w systemach z GUI z masą różnych usług nie robić limitów na 100-200 procesów, tylko trochę większą ilość, bo można sobie zrobić małe s puku.

Warto wcześniej uruchomić kilka aplikacji i poleceniem “top” sprawdzić ile zadań siedzi w tle.

 

Sam się kiedyś w to bawiłem. Nawet przy limicie 1000 procesów działa.

https://youtu.be/3ljBlweFMxs?t=2m35s