Solaris系統管理培訓(第六章:啟動過程)
2024-07-26 00:29:50
供稿:網友
啟動有四個階段
Boot PROM 階段
Boot program 階段
Kernel 初始化階段
/sbin/init 階段
啟動過程:
自檢、顯示系統信息、讀取啟動設備的0扇區、在啟動設備尋找啟動程序、加載啟動程序、啟動內核、運行/sbin/init。
/sbin/init程序
讀取/etc/inittab文件。Init程序執行/sbin/rc*腳本。
系統有多種運行級別,不同的運行級別所啟動的服務不同。
系統運行級別有8種,分別為:
運行級別 意義
0 進入PROM狀態(OK狀態)
1 管理狀態(所有文件系統都掛上的單用戶模式,禁止其他用戶登錄)
2 多用戶模式(沒有網絡文件共享服務)
3 多用戶模式(有網絡文件共享服務)
4 未使用
5 退出操作系統并關機
6 重新啟動機器
S,s 單用戶模式
who命令查看運行級別
# who -r
. run-level 3 5月 10 17:03 3 0 S
可得到的信息:當前運行級別是3,系統啟動的時間是5月10日17:03.
/etc/inittabinittab定義了:
系統缺省運行級別
系統進入新運行級別需要做什么
/etc/init.d目錄包含了系統的一些啟動腳本
/etc/rc1.d目錄包含進入運行級別1所需要運行的一些腳本
/etc/rc2.d目錄包含進入運行級別2所需要運行的一些腳本
...
...
這些目錄下包含兩種文件:
以K打頭,后面跟兩個數字以及一些字符串:表示系統到這個運行級別時所需要停止的一些服務,系統將以stop調用這個腳本。
以S打頭,后面跟兩個數字以及一些字符串:表示系統到這個運行級別時所需要開始的一些服務,系統將以start調用這個腳本。
增加啟動控制腳本
1.Identify the run level for the service
2.Determine which services are needed by the new process
3.Change to /etc/rc#.d and identify startup script
4.Repeat the process for the directory containing the shutdown script
5.Create the startup (shutdown) script in /etc/init.d
6.Create hard links to appropriate /etc/rc#.d directories
7.test
改變運行級別
init命令用于改變操作系統的運行級別。
命令格式:
init [ 0123456Ss ]
# init 0
INIT: New run level: 0
The system is coming down. Please wait.
System services are now being stopped.
Print services stopped.
Stopping the syslog service.
syslogd: going down on signal 15
Aug 14 14:54:30 snmpdx: received signal 15
The system is down.
syncing file systems... done
Program terminated
Type help for more information
ok
shutdown
用于改變操作系統運行級別。
命令格式:
shutdown [ -y ] [ -g seconds ] [ -i init-state ] [message]
選項:
y 系統提示時默認回答為YES
g 過多長時間改變
i 想要的運行級別
message 給所有登錄用戶的信息
# shutdown -y -g 0 -i 0
Shutdown started. Mon Dec 15 15:13:57 PST 1997
Broadcast Message from root (console) on mcmurdo Mon Dec
15 15:13:57...
THE SYSTEM IS BEING SHUT DOWN NOW ! ! !
Log off now or risk your files being damaged
Changing to init state 0 - please wait
ok
halt
進入0運行級別
poweroff
關閉系統并切斷電源
reboot
重新啟動系統
----
Robinhan oicq:589210