在DOS和WINDOWS98系統中設置啟動密碼已經有很多方法和現成的軟件可用了,但是,在UNIX系統中,有沒有一種方法可以設置啟動密碼呢?下面我自編了一個SHELL小程序,可以實現在系統啟動過程中加以密碼限制,即使啟動了機器,在輸入密碼之前,也不能使系統出現LOGIN的提示符。
這個小程序是加載在/etc/rc2文件中的,rc2文件是unix系統在啟動過程中調用的一個shell文件,我們在最後加入如下內容,就可實現啟動密碼的限制了。程序如下:
在/etc/rc2文件中尋找下面這句話
if["${BOOT}"="yes"-a"$7"="2"]
then
#dspmsg$MF_RC-s$MS_RC2$RC2_READY'TheSystemisReady!\n'
找到後
屏蔽上面這句話,之後加入下面這個程序:
#循環開始
whiletrue
do
clear
setcolor-bblack-klt_red
echo'\033[09;18H系'
setcolor-bblack-klt_cyan
echo'\033[09;25H統'
setcolor-bblack-klt_magenta
echo'\033[09;32H啟'
setcolor-bblack-khi_white
echo'\033[09;39H動'
setcolor-bblack-kyellow
echo'\033[09;46H完'
setcolor-bblack-klt_green
echo'\033[09;53H畢'
setcolor-bblack-kwhite
echo'\n\n\n\n\n\n\n\n\n\n\n\n\n'
echo'┏━━━━━━━━━━━━━━━━━┓'
echo'┃歡迎您使用UNIX┃'
echo'┗━━━━━━━━━━━━━━━━━┛'
echo"\033[17;15H請輸入密碼:[****]"
setcolor-bblack-kblack
echo"\033[17;42H\c"
readch
setcolor-bblack-kwhite
#在上面的兩個setcolor語句中,可以使鍵入的密碼不回顯
case$chin
#以下括號內為啟動密碼
2015)
setcolor-bblack-klt_green
echo""
echo""
echo"密碼正確,請使用本系統."
setcolor-bblack-kwhite
break
;;
*)
echo"\007"
echo"\033[20;1H"
setcolor-bblack-klt_red
echo"\007\t\t\t密碼錯誤!!!,請重新輸入\c"
setcolor-bblack-kwhite
reads
;;
esac
done
#循環結束
elif["$7"="2"]
then
dspmsg$MF_RC-s$MS_RC2$RC2_COMPLETE'Changetostate2hasbeencompleted.\n'
fi
如果在while循環中,每一條setcolor語句下面加如sleep1(延遲1秒),更能獲得動態
的效果!