В debian lenny при запуске /etc/init.d/tomcat5.5 start он запускает jsvc и ожидает, что он демонизирует себя.
В простой оболочке bash все работает нормально.
Однако из скрипта это полностью застревает:
Например, следующее работает как брелок:
#!/usr/bin/perl
my $cmd = '/etc/init.d/tomcat5.5 start';
system($cmd);
Однако следующее, поскольку jsvc не демонизируется, застревает:
#!/usr/bin/perl
my $cmd = '/etc/init.d/tomcat5.5 start';
`$cmd`;
Он также зависает при запуске с использованием обратных галочек в bash:
#!/bin/bash
CMD='/etc/init.d/tomcat5.5 start'
`$CMD`
Это ошибка в jsvc? Любая идея, почему это работает в оболочке или с помощью system (), но не с помощью обратных галочек? Из-за этой проблемы я на самом деле получаю несуществующие / зомби-процессы.