systemctl no reconoce mi servicio: Default-Start no contiene niveles de ejecución, abortando


13

Quiero definir un servicio simple para iniciar en el arranque, estar en el servidor Ubuntu 16.10. Entonces he creado un/etc/init.d/mydaemon

De alguna manera me equivoqué entre el sistema de arranque y systemd: al principio pensé que tenía que configurar un servicio de arranque. Entonces, después de convertir mi archivo a una sintaxis inicial, corrí update-rc.d mydaemon defaults.

Descubrí mi error y ejecuté update-rc.d mydaemon remove, convertí a la sintaxis systemd y ejecuté systemctl enable mydaemon, pero obtuve el error:

mydaemon.service is not a native service, redirecting to systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable mydaemon
update-rc.d: error: mydaemonDefault-Start contains no runlevels, aborting.

Respuestas:


14

Tuve el mismo error al portar un script sysv desde un cuadro de redhat a ubuntu. Necesitaba agregar algunos encabezados al script

### BEGIN INIT INFO
# Provides:          my-service-name
# Required-Start:    $all
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:
# Short-Description: your description here
### END INIT INFO

encontrado en /ubuntu/909523/default-start-contains-no-runlevels-aborting



1
Mi script ya tiene este lector, pero aún muestra exactamente el mismo error .. = [
Luciano Andress Martini

me salvó el día :-) Muchas gracias
Aravinthan K

11

El problema era que la ubicación del archivo, en el servidor Ubuntu en el que lo espera /etc/systemd/system, /etc/init.d/es para archivos heredados.


esta solución solucionó mi servicio
AmirHossein Rezaei

Creo que esta solución no funciona si el script de inicio es un script bash. En lugar de copiar el archivo, los parámetros en los niveles de ejecución deben agregarse como comentarios como Nick Fox publicado en su respuesta.
LaTechneuse

Claro, la pregunta inicial está en un .servicearchivo, no en un script bash init.
CharlesB

7

Solo para agregar a la respuesta de @CharlesB: cuando llegué a este estado pude simplemente mover el archivo desde y volver /etc/init.d/a /etc/systemd/system/ejecutar el comando y funcionó correctamente:

sudo mv /etc/init.d/mydaemon /etc/systemd/system/
sudo systemctl enable mydaemon

1
Esto debería ser un comentario.
Gerald Schneider

Creo que es una respuesta más fácil de seguir, así que la hice.
Cory

0

Tuve el mismo error y lo arreglé poniendo la información de inicio predeterminada, de la siguiente manera:

vi /etc/init.d/greenbone-security-assistant

Cambiar de:

# Default-Start:

a:

# Default-Start: 2 3 4 5

: wq

root @ kali: /etc/init.d# systemctl enable greenbone-security-assistant

Estado de sincronización de greenbone-security-assistant.service con el script de servicio SysV con / lib / systemd / systemd-sysv-install.

Ejecución: / lib / systemd / systemd-sysv-install enable greenbone-security-assistant

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.