无法启动upstart作业,错误:无法打开输入文件

时间:2018-06-13 15:30:21

标签: linux upstart debian-jessie

我有一个以前工作的upstart配置,现在它显示错误:

  

无法打开输入文件:/var/local/test/run.php

但该文件在那里,我通常可以使用php /var/local/test/run.php命令运行它。

# Events
start on local-filesystems and net-device-up IFACE=eth0
stop on shutdown

# Automatically respawn
respawn
respawn limit 20 5

script
    exec php -f /var/local/test/run.php
end script

我尝试过chmod 777,但没有帮助。

我有什么选择? 请帮忙。谢谢!

更新

添加实例变量:

  

实例$ ID

使它工作,问题是在它使用实例之前,但现在我决定稍微更改脚本,并将其删除。所以我在想,是否有一些我可以删除的缓存或类似内容(不会因重新启动而被删除)?

更新2

我发现脚本在命令末尾添加了一个结束行字符,这就是它无法找到路径的原因。 我试着用引号围绕它:

exec php -f "/var/local/test/run.php"

但是它仍然在php脚本文件路径的末尾以end-line char启动脚本。

我该怎么办?

1 个答案:

答案 0 :(得分:0)

所以,另一种解决方案是在脚本中添加一些参数,因此它会吃掉"吃掉"终点线。

  

exec php -f /var/local/test/run.php 1