How to write a daemon?

要怎樣寫一個服務:他能夠

在一開機啟動、

不易死掉(你可以寫 script 一直啟動他)、

fork() 後終止父行程並和呼叫的終端機(TTY)脫離關係?

首先,我們可以寫個服務(執行檔或是一個 script),處理我們要做的事。

接著,我們再準備一個script,放到正確的位置。而這份草稿他的目的最主要就是: 告訴系統,在一開機啟動我們的服務!

以下最主要就是介紹這個 script 該如何寫:

.Method 1: traditional 1. WRITE: /etc/init.d/triggerd to run script or daemon: $TRIGGERD_HOME/bin/triggerMyService.sh  #!/bin/bash  start_triggerd=$TRIGGERD_HOME/bin/triggerMyService.sh  stop_triggerd=$TRIGGERD_HOME/bin/triggerMyService.sh  start() {   echo -n “Starting MyService”  }  stop() {   echo -n “Shutdown MyService”  }  #how we were called  case “$1” in   start)   start    ;;   stop)    stop    ;;   restart)    stop    sleep 10    start    ;;   *)    echo “Usage: $0 {start|stop|restart}”  esac  exit 0 2. chmod 777 /etc/init.d/triggerd .Method 2: systemctl

 [Install]  WantedBy=multi-user.target 2. 重新載入一下配置  systemctl daemon-reload 3. 設定允許開機自啟動  systemctl enable triggerd  #啟動服務  systemctl start triggerd

ref.

創建 Daemon 程式

start-stop-daemon 啟動停止系統守護進程

[開機啟動]Linux開機自啟和運行級別

centos7下配置Tomcat開機啟動(service方式和daemon方式)

Linux systemd 寫 可自動啟動的 Daemon Service

Last updated