在Ubuntu 12.10
user@xyz:~$ sudo initctl --version initctl (upstart 1.5) Copyright (C) 2012 Scott James Remnant, Canonical Ltd. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. user@xyz:~$ ls -l /etc/init/rs-comm.conf -rw-r--r-- 1 root root 349 нояб. 15 03:22 /etc/init/rs-comm.conf user@xyz:~$ sudo initctl reload-configuration user@xyz:~$ sudo initctl start rs-comm initctl: Unknown job: rs-comm
你的工作可能包含无效的语法,这意味着Upstart不会考虑它。 尝试以普通用户身份运行以下内容( 而不是以root身份):
init-checkconf /etc/init/rs-comm.conf
在RedHat v6.8(以及其他版本和发行版)上,如果文件名没有扩展名.conf,那么upstart将不会看到新的作业。 例如,我刚刚在/etc/init/nginx创build了一个NGiNX新贵时遇到了这个问题。 initctl list | grep nginx initctl list | grep nginx什么也没有返回。 initctl status nginx返回initctl: Unkown job: nginx 。 所以,我把upstart作业文件名改名为/etc/init/nginx.conf ,并立即将它识别为一个新的新贵作业。 我怀疑这可能会影响很多人,所以我想我会把它作为一个相关的答案。