0
Я хочу убить цепочку процессов, например.pkill не убивает процессы после непосредственных потомков данного процесса
PID PPID
100 XXX
101 100
102 101
При использовании pkill -P 100
PID 100 и 101 умирают, как ожидалось, но 102 дается инициализации, как это PPID.
Как я могу заставить pkill продолжать убивать прикованные процессы мимо непосредственных потомков процесса?
Нет, вы не можете принуждать 'pkill' делать то, что хотите. Каждый процесс имеет процедуру обработки сигналов. Некоторые программы предназначены для распространения сигнала, полученного для их дочернего процесса, в то время как другие предназначены для фильтрации сигналов. Веб-сервис - это пример, когда демон supervisor порождает дочерние процессы. Не рекомендуется, чтобы демон супервизора распространял сигнал на детей, потому что, если демон-супервизор умирает, тогда веб-службы с ним справляются. База данных является примером, где желательно распространять сигнал, позволяя клиентским процессам умереть, когда умирает журнал записи. – alvits