Linux 註冊系統服務
像mysql,ssh這些我們都可以用service mysqld start類似的命令來啓動、關閉等,那我們如何把我們自己的程序也按照如此的方式來進行管理呢?
1.進入/etc/init.d, 建立文件 xxxd,其內容形如以下:
#!/bin/bash # chkconfig: - 90 10 # description: test service # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network RETVAL=0 # 調用service xxxd start時執行的邏輯,一般這裏就調用我們的程序的啓動腳本,帶些必要的參數等,以啓動我們的進程,然後將pid寫到相應的文件中 start() { echo "started" } #執行service xxxd stop時執行的邏輯,一般這裏我們就找到相應的pid文件,然後kill掉相應的進程即可 stop() { echo "stopped" } # See how we were called. case "$1" in start) start ;; stop) stop ;; restart|reload) stop start RETVAL=$? ;; condrestart|try-restart|force-reload) if [ -f /var/lock/subsys/$prog ]; then stop start RETVAL=$? fi ;; status) echo "status" RETVAL=1 ;; *) echo $"Usage: $0 {start|stop|restart|try-restart|force-reload|status}" exit 1 esac exit $RETVAL
2. 順序執行以下命令
3. 現在就可以用
等命令管理服務
chkconfig常用法: