Tengo un trabajo inicial personalizado con esta estructura básica:
description "ulfs_bar_example"
author "Ulf"
# Only run at runlevel 2 (Default multiuser)
start on runlevel 2
stop on runlevel [!2]
# Keep it alive
respawn
chdir /storage/_foo/bar
exec sudo -u the_user /storage/_foo/venv/bin/python /storage/_foo/bar/the_app.py
Esto se ejecuta en una Ubuntu 14.04.5 LTS
instancia en VirtualBox 5.0.26
.
/storage/_foo/
existe en el disco invitado
bar/
existe en el sistema host (también Ubuntu 14.04.5 LTS
) y se monta a través deAdiciones de invitadosy algunos enlaces simbólicos en/storage/_foo/
$ cd /storage/_foo
$ ls -alF
...
lrwxrwxrwx 1 the_user code 43 aug 18 14:23 bar -> /mnt/bar_at_host
...
El trabajo se puede iniciar sin problemas después de iniciar el invitado de esta manera:
$ sudo start ulfs_bar_example
Pero como se indica en el archivo de configuración, quiero que el trabajo comience cuando se ingresa al nivel de ejecución 2 durante el arranque normal. Pero parece haber algún problema con el montaje ya que el trabajo no comienza. En dmesg
me sale esto:
[ 8.793493] init: Failed to spawn ulfs_bar_example main process: unable to change working directory: No such file or directory
Sin éxito he intentado cambiar:
start on runlevel 2
a varias cosas similares a esta:
start on (local-filesystems and runlevel 2)
¿Qué estoy haciendo mal? ¿Cómo puedo arreglar esto?
Respuesta1
¿Está seguro de que su sistema está ingresando al nivel de ejecución 2 y no a otro nivel de ejecución? Has probado start on runlevel [2345]
?