Как убить процесс зомби или найти его родительский процесс на Mac с помощью терминала?
osx-lion
terminal.app
eFrane
источник
источник
kill
сигналов не работает для зомби IIRC. У меня было это раньше.Ответы:
Hack Saw говорит:
Было бы очень плохой идеей убить
launchd
, но вы можете сказать это HUP.Пытаться
sudo kill -s HUP 1
Это приведет
launchd
к повторной инициализации без перезапуска. Это работало для меня в прошлом (в отношении удаления записей зомби).источник
К сожалению , похоже, что убийство зомби - это убийство родителя , и если родителем является / sbin / launchd, вы можете убить его только с перезагрузкой.
Я получаю зомби от использования Xcode и останавливаю симулятор, и он передает зомби моему личному / sbin / launchd, который не исчез, когда я вышел из системы.
Команда ps -xo pid, ppid, stat, покажет вам ваши процессы с их родительским идентификатором во втором столбце.
источник
процессы зомби уже мертвы и не могут быть убиты. Они должны быть удалены из таблицы процессов автоматически, когда родительский процесс умирает.
Они не замедляют работу вашей машины, и вы можете оставить их там (это просто записи в таблице процессов).
Существует максимальное количество процессов (вы можете проверить это с помощью
sysctl kern.maxproc
), и процессы-зомби уменьшат его (по мере их подсчета).Если вы достигнете этого предела, вы не сможете создавать новые процессы и будете вынуждены перезагрузиться.
источник