Come posso fare in modo che daemontools esegua un servizio semplice senza chiamare manualmente supervisione?


3

Sulla base di varie guide di avvio sul Web, la sequenza di passaggi che sto usando per passare da nessun demoneols installato ad avere un semplice servizio in esecuzione automaticamente è la seguente (su Ubuntu 14.04):

$ sudo apt-get install daemontools
$ sudo apt-get install daemontools-run # not clear if this is necessary
$ sudo apt-get install csh             # unsure why csh would be needed to run dt
$ sudo mkdir /service
$ sudo mkdir /service/test
$ sudo chmod 1755 /service/test
$ vi /service/test/run                 # see below
$ vi /etc/rc.local                     # see below
$ # tried power cycling here too
$ sudo svstat /service/test            # Why is supervise not running here?
/service/test/: supervise not running
$ sudo supervise /service/test/ > /dev/null &
[1] 2747
$ sudo svstat /service/test/
/service/test/: up (pid 2758) 1 seconds

#########################################################

# contents of /service/test/run:
#!/bin/sh
echo Running service
exec echo hello

#########################################################

# contents of /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
csh -cf '/usr/bin/svscanboot &'
exit 0

Inoltre, l'esecuzione svscanbootmanuale sembra terminare immediatamente (non appare nell'output ps aux se corro anche in background). Quali passi di impostazione mi mancano o cosa sto facendo di sbagliato?

Risposte:


1

So che questa è una vecchia domanda ma ho avuto lo stesso problema durante l'installazione degli strumenti daemon dal sorgente.

Ho quindi installato il pacchetto daemontools-run e ha iniziato a funzionare.

Sono andato ancora un po 'oltre e ho cercato di dare un'occhiata alle novità. Ho trovato un file in / etc / inittab con la seguente chiamata:

    #-- daemontools-run begin
    SV:123456:respawn:/usr/bin/svscanboot
    #-- daemontools-run end
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.