Linux環(huán)境下判斷服務(wù)器是否正常關(guān)機(jī)
系統(tǒng)啟動(dòng)的時(shí)候生成一個(gè)文件,正常關(guān)機(jī)的時(shí)候會(huì)刪除這個(gè)文件。網(wǎng)管員們則可以根據(jù)系統(tǒng)開機(jī)時(shí)有沒有那個(gè)文件來判斷是不是非正常關(guān)機(jī),減少網(wǎng)絡(luò)管理過程中出現(xiàn)故障的機(jī)率。
本文引用地址:http://butianyuan.cn/article/148596.htm步驟:
在/etc/rc.d/init.d/下編程腳本。
判斷是否正常關(guān)機(jī),和生成文件的腳本:touch-file.sh
#!/bin/sh file=/tmp/check if [ -e $ ];then echo this is not normal shutdown
>>/var/log/checkmessage else echo this is normal shutdown and touch file
>>/var/log/checkmessage touch $ fi
正常關(guān)機(jī)刪除文件的腳本:rm-file.sh
#!/bin/sh file=/tmp/check echo this is normal shutdown and rm file
>>/var/log/checkmessage rm -rf $
讓腳本自動(dòng)執(zhí)行。
ln -s /etc/rc.d/rc0.d/K01rm-file /etc/rc.d/init.d/rm-file.sh
注意:
#ll /etc/rc.d/rc0.d/
軟連接兩邊的名字不哪呢個(gè)相同,后一個(gè)可以用絕對路徑或是相對路徑,千萬保證兩邊的名字不一樣。
ln -s /etc/rc.d/rc6.d/K01rm-file /etc/rc.d/init.d/rm-file.sh ln -s
/etc/rc.d/rc3.d/S01touch-file /etc/rc.d/init.d/touch-file.sh
我的系統(tǒng)沒用到x-window,所以沒有l(wèi)evel5,也就是不用在/etc/rc.d/rc5.d/下放腳本。
特別注意:
K開頭的代表系統(tǒng)關(guān)閉的時(shí)候執(zhí)行,S開頭的代表開機(jī)的時(shí)候執(zhí)行。注意服務(wù)器腳本編寫的規(guī)范,因?yàn)橛蠯開通的軟鏈接并不一定會(huì)在關(guān)機(jī)的時(shí)候自動(dòng)去執(zhí)行,這是為什么呢?執(zhí)行K腳本的時(shí)候會(huì)查詢/var/lock/subsys/下是否有與K開頭腳本同名的空文件名,如果沒有就不去執(zhí)行,所以要按照服務(wù)器腳本編寫的規(guī)范,啟動(dòng)的時(shí)在/var/lock/subsys/先touch一個(gè)與K01后面同名的空文件:
#/var/lock/subsys #touch fm-file
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)linux相關(guān)文章:linux教程
評論