设置Unix启动密码

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

在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 'The System is Ready ! \n'

找到后

屏蔽上面这句话,之后加入下面这个程序:

# 循环开始

while true

do

clear

setcolor -b black -k lt_red

echo '\033[09;18H 系'

setcolor -b black -k lt_cyan

echo '\033[09;25H 统'

setcolor -b black -k lt_magenta

echo '\033[09;32H 启'

setcolor -b black -k hi_white

echo '\033[09;39H 动'

setcolor -b black -k yellow

echo '\033[09;46H 完'

setcolor -b black -k lt_green

echo '\033[09;53H 毕'

setcolor -b black -k white

echo '\n\n\n\n\n\n\n\n\n\n\n\n\n'

echo ' ┏━━━━━━━━━━━━━━━━━┓'

echo ' ┃

欢 迎 您 使 用 UNIX

┃'

echo ' ┗━━━━━━━━━━━━━━━━━┛'

echo "\033[17;15H 请输入密码:[****] "

setcolor -b black -k black

echo "\033[17;42H\c"

read ch

setcolor -b black -k white

# 在上面的两个setcolor语句中,可以使键入的密码不回显

case $ch in

# 以下括号内为启动密码

2015)

setcolor -b black -k lt_green

echo " "

echo " "

echo "密码正确,请使用本系统."

setcolor -b black -k white

break

;;

*)

echo "\007"

echo "\033[20;1H"

setcolor -b black -k lt_red

echo "\007\t\t\t 密码错误!!!,请重新输入\c"

setcolor -b black -k white

read s

;;

esac

done

# 循环结束

elif [ "$7" = "2" ]

then

dspmsg $MF_RC -s $MS_RC2 $RC2_COMPLETE 'Change to state 2 has been completed.\n'

fi

如果在while循环中,每一条setcolor语句下面加如sleep 1(延迟1秒),更能获得动态的效果!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航