supervise是daemontools
的乙個工具,可以用來監控管理
unix
下的應用程式運**況,在應用程式出現異常時,
supervise
可以重新啟動指定程式。本文簡單介紹一下
supervise
的安裝和使用。
建立/pacakage
目錄(你可以建立任意目錄,這裡使用
package
只是為了保持與英文作者的一致):
mkdir -p /package
chmod 1755 /packagecd /package
daemontools-0.76.tar.gz
到/package
目錄,解壓該包。
tar xvzf daemontools-0.76.tar.gz
cd admin/daemontools-0.76
編譯並安裝
daemontools
程式package/install
supervise
的執行命令是
supervise path
,其中path
是指定路徑,可以是相對路徑,也可以是絕對路徑。在path
路徑下,必須有乙個
run的指令碼,
supervise
呼叫的就是這個指令碼,並監控管理該指令碼中執行的程式。
supervise
的乙個重要的功能就是可以檢測出
run指令碼中執行的程式是否正常工作,若發現其已經死掉,
supervise
將會重新執行
run指令碼,重新啟動指定程式。這對於很多服務端程式來說是十分必要的,沒有人願意在深夜
2點的時候從被窩裡爬出來重新啟動伺服器。
下面是乙個簡單使用
supervise
的例子。
假定已經安裝好
daemontools
,建立乙個
test
目錄,進入該目錄
mkdir test
cd test
在該目錄下寫乙個簡單測試程式
test.c
:#include
#include
int main()
return 0;}編譯
test.c
輸出為test
。gcc -o test test.c
編寫乙個指令碼
run,來執行
test
程式,以便
supervise
進行呼叫。
#!/bin/sh
echo "start test!"
./test
退到上級目錄,執行
supervise test
看看效果:
cd ..
supervise test
執行killall -9 test
,殺死test
程序,你會發現
supervise
會重新啟動
test
程序。當然如果程式
core dump
,supervise
同樣會重新啟動程式。這裡就介紹到這裡,如果你使用
supervise
有什麼更多心得,請告訴我,
connxu@126.***
。
Linux下的利器 supervise
supervise是daemontools的乙個工具,可以用來監控管理unix下的應用程式運 況,在應用程式出現異常時,supervise可以重新啟動指定程式。本文簡單介紹一下supervise的安裝和使用。一 安裝 建立 pacakage目錄 你可 supervise是daemontools 的乙...
linux下的終端利器 tmux 安裝以及使用
ref 為什麼使用tmux?因為如果我們用terminal連線remote server。發生一些不可抗力,terminal關了的話,your work is gone 但是tmux不一樣,即使你關閉了tmux。下次重新attch的時候,你會發現之前的東西都還在。這是因為即使你關閉了tmux,它也還...
linux利器expect的使用
1 什麼是expect 在做系統管理時,我們很多時候需要輸入密碼,例如 連線 ssh,連線ftp,那麼如何能做到不輸入密碼,我們需要有乙個工具,能代替我們實現與終端的互動,它能夠代替我們實現與終端的互動,我們不必再守候在電腦旁邊輸入密碼,或是根據系統的輸出再執行相應的命令,這些都可以由expect代...