이해가 부족해요. Bash 스크립트에 포크를 포함해야 합니까?https://stackoverflow.com/a/26756839/4749164, 그래서 ?에서 expect daemon/fork
- 옵션을 사용할 수 있습니다.upstart
bash 스크립트를 upstart를 통해 백그라운드에서 프로세스로 실행하고 싶습니다. 지금까지 수행한 작업은 다음과 같습니다.
start on filesystem or runlevel [2345]
stop on shutdown or runlevel [12345]
respawn
expect daemon
script
export HOME="/user"
echo $$ > /var/run/bashscript.pid
exec /etc/rfid/bashscript
end script
pre-start script
echo "[`date`]" program starting >> /var/log/bashscript.log
end script
pre-stop script
rm /var/run/program.pid
echo "[`date`]" program stopping >> /var/log/bashscript.log
end script
터미널에서 실행하면 실행 중이고 Pid가 있다고 sudo service bashscript status
표시됩니다 bashscript
. 확인하면 이는 사실입니다. /var/run/bashscript.pid
그러나 해당 PID로 실행 중인 프로세스가 없으며 top
터미널에 입력하면
sudo service bashscript stop
정지됩니다. 내가 뭘 잘못했거나 놓쳤나요?