歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix基礎知識 >> SUN Solaris的引導與初始化

SUN Solaris的引導與初始化

日期:2017/3/3 15:24:58   编辑:Unix基礎知識

任何時候,系統處於以下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