Estou trabalhando em Raspbian Jessie e escrevi meu script upstart seguindo este tutorial . Aqui está o meu arquivo de script /etc/init/videostream.conf
.
# RPI Camera Service
description "RPICAM streaming"
author "My Name "
start on filesystem or runlevel [2345]
stop on shutdown or runlevel [016]
respawn
respawn limit 2 5
env HOME=/etc/default
umask 007
usage "videostream {start|stop|status|restart}"
script
export PATH=/opt/local/bin:/opt/local/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
export HOME="/etc/default"
echo $$ > /var/run/videostream.pid
exec /etc/default/videostream >/dev/null 2>&1 &
end script
post-start script
echo "['date'] videostream is Started" >> /var/log/videostream.log
end script
pre-start script
echo "['date'] videostream Starting" >> /var/log/videostream.log
end script
pre-stop script
rm /var/run/videostream.pid
killall -w -q raspivid
killall -w -q ffmpeg
echo "['date'] videostream Stopping" >> /var/log/videostream.log
end script
Eu instalei o upstart usando sudo apt-get install upstart
.
Ao reinicializar o sistema, o serviço inicia bem e funciona bem. O problema é que, após a reinicialização, até que o sistema esteja funcionando corretamente, você não poderá parar o serviço nem iniciá-lo.
Quando perguntar status você recebe isso:
sudo service videostream status
# Result
videostream stop/waiting
Mas o serviço está funcionando porque eu posso ver o fluxo e, de acordo com o arquivo de log, tudo parece OK, a menos que o serviço tenha sido iniciado duas vezes na inicialização. Esta é a parte do arquivo de log.
[Mon Jun 27 08:00:12 UTC 2016] videostream Starting
[Mon Jun 27 08:00:13 UTC 2016] videostream is Started
[Mon Jun 27 08:00:13 UTC 2016] videostream Starting
[Mon Jun 27 08:00:13 UTC 2016] videostream is Started
Quando tento iniciar o serviço, recebo isso:
sudo service videostream start
# Result
start: Job failed to start
Por favor alguém pode me ajudar? Eu realmente não sei o que é problema.