Я исследую daemontools для запуска некоторых из наших приложений, которые также генерируют некоторый вывод (как на stdout, так и на stderr).
Я установил daemontools на ящик Debian. Каждый раз я делаю svc -u /etc/service/myservice
чтобы запустить службу, я получаю [defunct]
обработать. Как я могу решить эту проблему.
Ниже мой /etc/service/myservice/run
:
#!/bin/bash
exec myservice -c /etc/myservice/myservice.conf
и /etc/service/myservice/log/run
#!/bin/sh
exec multilog t ./main
Любая помощь будет приветствоваться. Спасибо.
Вы можете отловить некоторые ошибки с помощью ps -aux | grep readproctitle
.
Некоторые идеи по отладке:
myserver
не в PATH
. Попробуйте указать полный путь к программе.myserver
разворачивается в фоновый режим: это явно запрещено для служб, запущенных с помощью daemontools.run
сценарий.Я столкнулся с той же проблемой. Когда ничего не работало, это сработало для меня:
ps auxf
. Вы увидите, что он запускает svscan, который контролирует все службы.kill -9 -pid
.svscanboot запустится автоматически, как и все службы в svscan.
Я столкнулся с проблемой, когда именованный канал svcan повреждается, когда на машине не остается места на диске.