Emporkömmling sieht meinen Job nicht

12

in 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
xdenser
quelle

Antworten:

15

Ihr Job enthält wahrscheinlich eine ungültige Syntax, was bedeutet, dass Upstart diese nicht berücksichtigt. Versuchen Sie, als normaler Benutzer ( nicht als Root) Folgendes auszuführen:

init-checkconf /etc/init/rs-comm.conf
jamesodhunt
quelle
8
ERROR: failed to ask Upstart to check conf file
Xdenser
1
Es ist Ubuntu Server ohne GUI. hier ist die Ausgabe von init-checkconf -d /etc/init/rsyslog.confUpstart antwortet nicht über D-Bus
Xdenser
7
Gelöst Ich habe in der Debug-Ausgabe von init-checkconf festgestellt, dass Upstart aufgefordert wird, die Antwort in die Datei zu schreiben /tmp. Ich habe dort - hier sind sie - mehrere Dateien gesucht, die auf einen Fehler in meiner Jobdatei hinweisen. Ich habe diesen Tippfehler behoben und jetzt wird mein Job von Upstart gesehen. Es bleibt die Frage, warum init-checkconf keine Upstart-Antworten sieht.
Xdenser
4
@xdenser Das Problem mit init-checkconf ist höchstwahrscheinlich das folgende: bugs.launchpad.net/upstart/+bug/881885
FvD
1
Ich versuche dies in RHEL 6 und kann keinen init-checkconfBefehl zum Testen der Syntax finden. Ich habe den gleichen Upstart-Job in Ubuntu ohne Fehler ausgeführt. yum info upstartkehrt zurück: Installed Packages Name : upstart Arch : x86_64 Version : 0.6.5 Release : 12.el6_4.1 Size : 550 k Repo : installed From repo : rhel-x86_64-server-6 Der Job endet mit .confund die Dateiberechtigungen sehen in Ordnung aus. Dabei sudo initctl listwerden alle Dateien mit /etc/init/Ausnahme des betreffenden Auftrags angezeigt.
Rückstunde
0

In RedHat v6.8 (und wahrscheinlich in anderen Versionen und Distributionen) wird der neue Job von Upstart nicht angezeigt, wenn der Dateiname keine .conf-Erweiterung hat. Zum Beispiel habe ich dieses Problem gerade festgestellt, als ich einen NGiNX-Upstart als erstellt habe /etc/init/nginx. initctl list | grep nginxgab nichts zurück. initctl status nginxzurückgekehrt initctl: Unkown job: nginx. Also habe ich den Dateinamen des Upstart-Jobs in umbenannt /etc/init/nginx.confund ihn sofort als neuen Upstart-Job erkannt. Ich vermute, dass dies eine Menge Leute betreffen könnte, daher dachte ich, ich würde es als relevante Antwort posten.

dcarrith
quelle