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.
Last updated