Portál AbcLinuxu, 7. května 2025 07:28
Jak spolehlivě kilnout proces včetně všech jeho potomků ? Tedy tak aby nehrozilo, že něktarý z potomků si vybere za rodiče init a poběží dál. Znám pouze pid toho jediného původního procesu, mám to udělat tak, že pomocí pgrep -P pid
budu vyzobávat ty potomky ze všech vláken nebo to jde nějak snadněji ?
ps --ppid PID
si vypises vsechny jeho potomky a pak uz to staci rekurzivne projet a postrilet.
pkill -P $pid kill $pid
kill -HUP $pid
a procesy které nepostřílí své potomky sami sudo rm -f $(readlink -f /proc/$pid/exe)
Co se budem mazat se špatně napsanýma aplikacema. Kdo má náladu, může to opravit sám přímo ve zdrojáku, protože tam je jediné místo, kde uvedený problém řešit.
while (1) fork();je vyloženě špatně napsaná aplikace, s tou bych se vůbec nemazal
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.