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