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としてnot):
init-checkconf /etc/init/rs-comm.conf
RedHat v6.8(およびおそらく他のバージョンとディストリビューション)では、ファイル名に.conf拡張子がない場合、upstartは新しいジョブを認識しません。たとえば、NGiNXアップスタートを/etc/init/nginx
として作成したときにこの問題が発生しました。 initctl list | grep nginx
は何も返しませんでした。 initctl status nginx
はinitctl: Unkown job: nginx
を返しました。そこで、アップスタートジョブのファイル名を/etc/init/nginx.conf
に変更すると、すぐに新しいアップスタートジョブとして認識されました。これは多くの人に影響するのではないかと思うので、関連する回答として投稿したいと思いました。