为pear的“system_daemon”编写的脚本拒绝分叉以形成新进程。这在我的旧服务器上运行良好,但我的新服务器没有它。守护程序脚本在shell中运行得很好,并且一直运行直到我杀死它们。作为临时解决方法,我让守护进程在一个独立的tmux shell中运行,但这显然不是一个长期的解决方案。
是否存在阻止其分叉的已知问题?
我有PHP 5
PHP 5.3.10-1ubuntu3.2 with Suhosin-Patch (cli) (built: Jun 13 2012 17:19:58)
这里列出的和pcntl加载了ini的
/etc/php5/cli/conf.d/pcntl.ini,
并在php -i output
中进一步向下pcntl
pcntl support => enabled
和梨
PEAR Version: 1.9.4
和Pear的system_daemon
pear/System_Daemon 1.0.0 1.0.0 Turn PHP scripts into Linux daemons
任何想法在这里出了什么问题?
遗憾的是,我无法发布消息来源,但我可以说所有(包括文档中的示例)system_daemon脚本都拒绝分叉。
根据cweiske的建议,我尝试了pcntl示例,它运行正常
我还尝试卸载system_daemon,使用aptitude清除我的pear安装,重新启动,重新安装pear,然后重新安装system_daemon。这也没有效果。
我可以在其他Ubuntu框11.04 +
上复制此问题答案 0 :(得分:2)
问题已解决。
1)我的appName属性中有一个大写字母,较新版本的system_daemon会抱怨
2)我在安装pcntl之前安装了pear和system_daemon。从源头来看,这似乎不会导致问题,但我重新安装两者都是安全的。