Назад | Перейти на главную страницу

Как заставить daemontools запускать простую службу без ручного вызова supervise?

На основе различных руководств по началу работы в Интернете, последовательность шагов, которые я использую для перехода от без установки daemontools к автоматическому запуску простой службы, следующая (в 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

Кроме того, бег svscanboot вручную, кажется, немедленно завершается (не отображается в выводе ps aux, если я работаю в фоновом режиме). Какие шаги настройки мне не хватает или что я делаю не так?

Я знаю, что это старый вопрос, но у меня была такая же проблема при установке инструментов демона из исходного кода.

Затем я установил пакет daemontools-run, и он начал работать.

Я пошел еще немного дальше и попытался осмотреться, что нового. Я нашел файл в / etc / inittab со следующим вызовом:

    #-- daemontools-run begin
    SV:123456:respawn:/usr/bin/svscanboot
    #-- daemontools-run end