несуществующие процессы и их родительские процессы

Я столкнулся с этим сообщением SO:

https://stackoverflow.com/questions/356722/killing-a-defunct-process-on-unix-system

" Вы убили процесс, но мертвый процесс не исчезает из таблицы процессов, пока его родительский процесс не выполнит задачу, называемую «пожинать» (по существу, вызывая wait (3) для этого процесса, чтобы прочитать его статус выхода).

Вот мой несуществующий процесс:

 ps aux | grep ruby
1000     11958 16.3  0.0      0     0 pts/3    Z    Jul11 1065:28 [ruby] <defunct>

Это то, что он должен был делать:

RAILS_ENV=production bundle exec ruby lib/daemons/db_service_ctl start% 

В основном он запускает процесс демонов Rails.Я хотел перезапустить его, чтобы попытаться его убить, но он отказался умереть, и теперь у меня есть несуществующий процесс.

Вот его родительский процесс: [ ! d7]

ps -f 11958            
UID        PID  PPID  C STIME TTY      STAT   TIME CMD
1000     11958 11957 16 Jul11 pts/3    Z    1065:28 [ruby] <defunct>

Родительский процесс равен 11957. Строка proc cmd выглядит так:

 /proc/11957 $ cat cmdline
/bin/sh./script/db_service.sh%   

Это похоже на тот же сценарий оболочки, который я выполнил как процесс демонов! [!d9 ]

Итак, как это может быть и родительский процесс?

1
задан 23 May 2017 в 15:39

0 ответов

Другие вопросы по тегам:

Похожие вопросы: