歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix教程 >> 設置Unix啟動密碼

設置Unix啟動密碼

日期:2017/2/27 17:43:50   编辑:Unix教程

  在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秒),更能獲得動態的效果!
Copyright © Linux教程網 All Rights Reserved