advenedizo no ve mi trabajo

12

en 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
fuente

Respuestas:

15

Su trabajo probablemente contiene una sintaxis no válida, lo que significa que Upstart no lo tendrá en cuenta. Intente ejecutar lo siguiente como usuario normal ( no como root):

init-checkconf /etc/init/rs-comm.conf
jamesodhunt
fuente
8
ERROR: failed to ask Upstart to check conf file
xdenser
1
es un servidor ubuntu sin GUI. aquí está la salida de init-checkconf -d /etc/init/rsyslog.confUpstart no responde a través de D-Bus
xdenser
77
Resuelto He notado en la salida de depuración de init-checkconf que le pide a Upstart que escriba la respuesta en el archivo /tmp. Miré allí, aquí están, varios archivos que apuntan por error en mi archivo de trabajo. He arreglado ese error tipográfico y ahora Upstart ve mi trabajo. Todavía hay dudas de por qué init-checkconf no ve las respuestas de Upstart.
xdenser
44
@xdenser El problema con init-checkconf es probablemente este problema: bugs.launchpad.net/upstart/+bug/881885
FvD
1
Estoy intentando esto en RHEL 6 y no puedo encontrar ningún init-checkconfcomando para probar la sintaxis. Ejecuté el mismo trabajo inicial en Ubuntu sin un error. yum info upstartdevuelve: 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 El trabajo termina con .confy los permisos de archivo se ven bien. Hacer sudo initctl listmuestra todos los archivos /etc/init/excepto el trabajo en cuestión.
regreso
0

En RedHat v6.8 (y probablemente en otras versiones y distribuciones), el upstart no verá el nuevo trabajo si el nombre de archivo no tiene una extensión .conf. Por ejemplo, acabo de encontrar este problema cuando creé un advenedizo NGiNX como /etc/init/nginx. initctl list | grep nginxNo devolvió nada. initctl status nginxdevuelto initctl: Unkown job: nginx. Entonces, cambié el nombre del nombre de archivo del trabajo inicial /etc/init/nginx.confy lo reconoció de inmediato como un nuevo trabajo inicial. Sospecho que esto podría afectar a muchas personas, así que pensé en publicarlo como una respuesta relevante.

dcarrith
fuente