Estoy ejecutando Ubuntu 12.04.3 LTS e instalé varios servicios como Samba, servidor DHCP,...
Recibo la siguiente advertencia cuando ejecuto "halt now", "telinit 6" o similar:
Since the script you are attempting to invoke has been converted
to an Upstart job, you may also use the...
Puedo ver que los servicios afectados intentan detener/iniciar dos veces. Una vez a través del trabajo Upstart y nuevamente a través de los enlaces simbólicos S/K en la carpeta /etc/rcN.d que apuntan al script init.d. Probablemente pueda simplemente eliminar el enlace simbólico en la carpeta /etc/rcN.d.
Flujo de ejemplo:
- Ejecute 'detener ahora' desde el shell
- Upstart detiene Samba (porque hay un archivo de configuración de Upstart para Samba)
- SysV intenta detener Samba nuevamente (porque también hay un enlace simbólico /etc/rc0.d/K20smbd)
No entiendo/quiero el paso 3 porque parece innecesario y muestra una advertencia fea.
¿Por qué existen tanto el script Upstart como los enlaces simbólicos al script init.d para varios demonios? ¿Es la forma correcta de limpiar manualmente los enlaces simbólicos duplicados en cada carpeta /etc/rcN.d?
Respuesta1
Ubuntu tiene init
enlaces de compatibilidad que llaman a sus contrapartes advenedizos cada vez que los ejecuta.
Si llama, por ejemplo, sudo /etc/init.d/apache start
se le vinculará a upstart-job que le presenta un mensaje informativo agradable que debe usar sudo services apache start
y luego ejecuta el comando por sí solo.
ls -l /etc/init.d/network-manager
lrwxrwxrwx 1 root root 21 Sep 18 14:02 /etc/init.d/network-manager -> /lib/init/upstart-job
cat /lib/init/upstart-job
#!/bin/sh -e
# upstart-job
#
# Symlink target for initscripts that have been converted to Upstart.
{ lots of ASCII awesomeness }
Respuesta2
Descubrí que esto es una mala configuración en mis scripts de Puppet.
El atributo de tipo 'servicio' 'habilitar' creó el script de inicio SysV en lugar de reconocer el script Upstart.