守护程序只是作为后台进程运行的程序,而不是在交互式用户的直接控制下...
[下面的bash代码适用于Debian系统-Ubuntu,Linux Mint发行版等]
简单的方法:
简单的方法是编辑/etc/rc.local文件,然后从那里运行脚本(即,每次启动系统时):
sudo nano /etc/rc.local
添加以下内容并保存:
#For a BASH script
/bin/sh TheNameOfYourScript.sh > /dev/null &
更好的方法是通过Upstart创建一个守护进程:
sudo nano /etc/init/TheNameOfYourDaemon.conf
添加以下内容:
description "My Daemon Job"
author "Your Name"
start on runlevel [2345]
pre-start script
echo "[`date`] My Daemon Starting" >> /var/log/TheNameOfYourDaemonJobLog.log
end script
exec /bin/sh TheNameOfYourScript.sh > /dev/null &
保存这个。
确认一切正常:
init-checkconf /etc/init/TheNameOfYourDaemon.conf
现在重启机器:
sudo reboot
现在,当您启动系统时,您可以看到日志文件说明您的守护程序正在运行:
cat /var/log/TheNameOfYourDaemonJobLog.log
•现在,您可以通过以下方式启动/停止/重新启动/获取守护程序的状态:
重新启动:这将停止,然后启动服务
sudo service TheNameOfYourDaemonrestart restart
启动:如果服务未运行,它将启动服务
sudo service TheNameOfYourDaemonstart start
停止:如果服务正在运行,它将停止服务
sudo service TheNameOfYourDaemonstop stop
状态:这将显示服务的状态
sudo service TheNameOfYourDaemonstatus status