设为首页收藏本站language 语言切换

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 2937|回复: 1
收起左侧

设置Unix启动密码

[复制链接]
发表于 2010-9-15 22:14:21 | 显示全部楼层 |阅读模式
在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秒),更能获得动态的效果!
您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-1-28 00:49 , Processed in 0.057094 second(s), 10 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表