У меня есть возможная теория для этого.
Когда вы запускаете приложение как
$ rake resque:work QUEUE='*' & [1] 13031
Приложение внутренне делает fork+exit
, чтобы работать в фоновом режиме.
C
кодовый эквивалент этого будет:
if(fork()) exit(0);
Таким образом, процесс с PID==13031
порождает дочерний процесс и завершается сам. Ребенок будет продолжать работать в фоновом режиме и будет унаследован процессом init (PID == 1).
Вы можете увидеть, если это так, нажмите другую enterклавишу после запуска rake
команды. Вы видите такие отпечатки?
[1]+ Done rake resque:work QUEUE='*'
Попробуйте запустить ps
в терминале. Это должно показать PID дочернего процесса. Если kill
это так, демон должен выйти.