我正在学习如何使用 Upstart。我编写了一个简单的作业作为测试(文件是/etc/init/uptest.conf
),使用自定义事件手动触发它:
start on uptest
task
exec touch /tmp/UPTEST
这在运行 Ubuntu 14.04.2 的服务器上运行良好,通过调用
# initctl emit uptest
我的问题是,完全相同的工作在 Xubuntu 14.04 安装上不起作用。两台机器上的 Upstart 版本都是 1.12.1。
到目前为止我还无法指出原因:
init-checkconf
conf文件的语法没问题,如命令所示- 调用
initctl start uptest
显示:“initctl:未知作业:uptest” - 确实这个工作没有列出来
initctl list
- 我尝试重新加载 (
initctl reload-configuration
) 并重新启动,但没有成功 - 我找不到任何有用的登录
/var/log/syslog
或/var/log/upstart
我的想法已经用完了……也许这里有人会有线索?
答案1
也许正在调用会话 init,而不是系统 init。通过取消设置变量来尝试UPSTART_SESSION
env -u UPSTART_SESSION initctl list
env -u UPSTART_SESSION initctl start uptest
ETC。