Если вы уничтожите корневой процесс (родительский процесс), это должно сделать детей-сирот, а не детей-зомби.дети-сироты создаются, когда вы убиваете родителя процесса, а ядро делает init родителем детей-сирот.init должен ждать, пока сирота не умрет, а затем использовать wait, чтобы очистить его.
Дочерние элементы-зомби создаются, когда процесс (не его родитель) заканчивается, и его родитель не получает свой статус выхода из таблицы процессов..
Мне кажется, что вы беспокоитесь о том, чтобы оставить сирот, потому что по определению, когда вы убиваете родительский процесс зомби, сам ребенок-зомби умирает.
Чтобы убить ваших сирот, используйте kill -9, что эквивалентно SIGKILL.
Вот более подробное руководство по уничтожению вещей в linux: http://riccomini.name/posts/linux/2012-09-25-kill-subprocesses-linux-bash/