我是systemd的新手,我的同事给我的脚本有问题。 这个脚本在Debian 7中用作后台进程,但不在Debian 8中。我决定把它重写到systemd。
我有chunk8.service (位于/etc/systemd/system ):
[Unit] Description=Chunk-search Daemon Requires=mysql.service apache2.service [Service] PIDFile=/var/run/chunkrm8.pid ExecStart=/usr/bin/php /var/www/chunkrm8/task_pool.php > /dev/null 2>/dev/null Type=forking KillMode=process [Install] WantedBy=multi-user.target
当我重新启动系统(或运行systemctl start chunk8.service )时,我得到:
● chunk8.service - Chunk-search Daemon Loaded: loaded (/etc/systemd/system/chunk8.service; enabled) Active: failed (Result: timeout) since Tue 2016-04-19 16:21:20 MSK; 1min 1s ago
我做错了什么? 提前致谢。
您指定了Type=forking但是在超时期限内您从未开始分配的程序,因此systemd认为它没有正确启动,将其杀死并将服务标记为失败。
你确定你的程序是守护程序吗? 对于PHP脚本来说,这是非常不寻常的。 也许你应该使用Type=simple来代替。