parvenu ne voit pas mon travail


12

dans 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

Réponses:


15

Votre travail contient probablement une syntaxe non valide, ce qui signifie que Upstart ne le considérera pas. Essayez d'exécuter ce qui suit en tant qu'utilisateur normal ( pas en tant que root):

init-checkconf /etc/init/rs-comm.conf

8
ERROR: failed to ask Upstart to check conf file
xdenser

1
c'est un serveur ubuntu sans interface graphique. voici la sortie d' init-checkconf -d /etc/init/rsyslog.confUpstart ne répond pas via D-Bus
xdenser

7
Résolu. J'ai remarqué dans la sortie de débogage de init-checkconf qu'il demande à Upstart d'écrire la réponse dans le fichier /tmp. J'ai regardé là - les voici - plusieurs fichiers pointant sur une erreur dans mon dossier de travail. J'ai corrigé cette faute de frappe et maintenant mon travail est vu par Upstart. La question se pose toujours de savoir pourquoi init-checkconf ne voit pas les réponses d'Upstart.
xdenser

4
@xdenser Le problème avec init-checkconf est probablement ce problème: bugs.launchpad.net/upstart/+bug/881885
FvD

1
J'essaye ceci dans RHEL 6 et je ne trouve aucune init-checkconfcommande pour tester la syntaxe. J'ai exécuté le même travail parvenu dans Ubuntu sans erreur. yum info upstartrenvoie: 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 le travail se termine par .confet les autorisations de fichier semblent correctes. Faire sudo initctl listmontre tous les fichiers à l' /etc/init/exception du travail en question.
retour le

0

Sur RedHat v6.8 (et probablement d'autres versions et distributions), le nouveau venu ne verra pas le nouveau travail si le nom de fichier n'a pas d'extension .conf. Par exemple, je viens de rencontrer ce problème lorsque j'ai créé un upstart NGiNX en tant que /etc/init/nginx. initctl list | grep nginxrien retourné. initctl status nginxretourné initctl: Unkown job: nginx. J'ai donc renommé le nom de fichier du travail parvenu à /etc/init/nginx.confet il l'a immédiatement reconnu comme un nouveau travail parvenu. Je soupçonne que cela pourrait affecter beaucoup de gens, alors j'ai pensé l'afficher comme une réponse pertinente.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.