歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> Unix教程

Solaris 的引導與初始化


  任何時候,系統處於以下8種可用的運行級別中0~6,S=s。/sbin/init 或/etc/telinit(link)的主要功能是根據/etc/inittab文件中的定義創建其子進程。
  操作系統引導期間,init進程被激活並從/etc/default/init讀取有關時區和語言等的環境變量,隨後檢查/etc/inittab(如不存在,則提示用戶輸入)中的缺省level,並spawn("孵化")該級別定義的所有進程。
  初始化結束後,init進程進入等待狀態,等候以下事件發生:定義為respawn類型的子進程終止;電源失敗信號;其它init進程改變系統的運行級別。
  /etc/inittab文件中可以加入新的條目,可以用init -q來強制init進程立即重新查看該文件中的信息。
  收到改變運行level請求後,init進程向每個未被目標level定義的進程發出警告信號SIGTERM,並再5秒後發出SIGKILL信號強行終止這些進程。
  進程被創建時在/var/adm/wtmp中有記錄,終止時在/var/adm/utmp有記錄。
  收到SIGPWR信號後,init進程檢查/etc/inittab中有關
  powerfail 和powerwait類型的條目,並立即執行。sync命令可以同步硬盤緩沖。
  
  運行等級包括(常用到的有3、S、0、6):
  0:firmware,可以安全關機。
  1:系統管理員狀態,mount所有文件系統,保留一小部分基本的內核進程,無用戶登錄。
  2:多用戶狀態
  3:擴展多用戶狀態,所有資源在網絡上可用
  4:可被定義為可選的多用戶狀態,
  5:為關閉電源而將系統shut down
  6:停止OS並reboot到缺省的level.
  S=s,單用戶狀態,僅有root自己登錄。
  
  命令init的參數還有:
  a,b,c:執行inittab中的特定命令但不改變當前運行等級。
  Q=q,重新檢查/etc/inittab
  shutdown命令可以進入S等級
  
  關機:
  通常情況下,系統是被設計連續運行的,但是當發生以下情況時可能需要關閉系統:在S等級下進行系統維護;改變系統的硬件配置;發生系統崩潰等嚴重故障;進行環境調整需要停電等。
  shutdown 命令發出後,系統以約定的格式發出7200、3600、1800、1200、600、300、120、60、30秒警告。
  缺省為在60秒後進入狀態S,可以使用的參數有:
  -y 跳過提示確認
  -i 進入制定的等級狀態
  -g 關機等待時間
  在系統停止響應後,應首先嘗試以下控制鍵序列:^Q、^C、^D、^X;然後可試圖用kill方法殺死掛起的進程,不得已時才使用緊急關機。
  緊急關機時,首先嘗試STOP-A,進行硬盤同步並重新啟動;最後嘗試直接關閉電源。
  
  無用戶帳號可登錄:
  #boot -s
  修改 /etc/default/login文件
  
  忘記root口令:
  #boot cdrom -sw
  cd /
  mount /dev/dsk/c0t0d0s0 /mnt
  cd /mnt/etc
  修改shadow
  umount /mnt
  reboot
  
  
  
Copyright © Linux教程網 All Rights Reserved