Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

30.4. SysV Init 執​​​​​​​行​​​​​​​層​​​​​​​級​​​​​​​

SysV init runlevel 提​​​​​​​供​​​​​​​一​​​​​​​個​​​​​​​控​​​​​​​制​​​​​​​標​​​​​​​準​​​​​​​程​​​​​​​序​​​​​​​,在​​​​​​​啟​​​​​​​始​​​​​​​一​​​​​​​個​​​​​​​ runlevel 程​​​​​​​式​​​​​​​ init 啟​​​​​​​動​​​​​​​或​​​​​​​者​​​​​​​停​​​​​​​止​​​​​​​。​​​​​​​選​​​​​​​用​​​​​​​ SysV init 原​​​​​​​因​​​​​​​為​​​​​​​其​​​​​​​操​​​​​​​作​​​​​​​容​​​​​​​易​​​​​​​而​​​​​​​且​​​​​​​比​​​​​​​起​​​​​​​傳​​​​​​​統​​​​​​​ BSD 式​​​​​​​ init 程​​​​​​​序​​​​​​​更​​​​​​​富​​​​​​​彈​​​​​​​性​​​​​​​。​​​​​​​
SysV init 的​​​​​​​設​​​​​​​定​​​​​​​檔​​​​​​​在​​​​​​​ /etc/rc.d/ 目​​​​​​​錄​​​​​​​中​​​​​​​。​​​​​​​在​​​​​​​這​​​​​​​個​​​​​​​目​​​​​​​錄​​​​​​​中​​​​​​​包​​​​​​​含​​​​​​​ rc、​​​​​​​ rc.local、​​​​​​​rc.sysinit 和​​​​​​​非​​​​​​​必​​​​​​​須​​​​​​​的​​​​​​​ rc.serial scripts 以​​​​​​​及​​​​​​​下​​​​​​​列​​​​​​​其​​​​​​​它​​​​​​​目​​​​​​​錄​​​​​​​:
init.d/ rc0.d/ rc1.d/ rc2.d/ rc3.d/ rc4.d/ rc5.d/ rc6.d/
init.d/ 目​​​​​​​錄​​​​​​​包​​​​​​​括​​​​​​​了​​​​​​​當​​​​​​​ /sbin/init 指​​​​​​​令​​​​​​​控​​​​​​​制​​​​​​​服​​​​​​​務​​​​​​​時​​​​​​​所​​​​​​​用​​​​​​​的​​​​​​​ scripts。​​​​​​​每​​​​​​​個​​​​​​​已​​​​​​​編​​​​​​​號​​​​​​​的​​​​​​​目​​​​​​​錄​​​​​​​都​​​​​​​代​​​​​​​表​​​​​​​了​​​​​​​六​​​​​​​個​​​​​​​在​​​​​​​ Red Hat Enterprise Linux 由​​​​​​​預​​​​​​​設​​​​​​​設​​​​​​​定​​​​​​​的​​​​​​​ runlevel。​​​​​​​

30.4.1. 執​​​​​​​行​​​​​​​層​​​​​​​級​​​​​​​

SysV init runlevel 的​​​​​​​概​​​​​​​念​​​​​​​環​​​​​​​繞​​​​​​​在​​​​​​​一​​​​​​​個​​​​​​​不​​​​​​​同​​​​​​​的​​​​​​​系​​​​​​​統​​​​​​​可​​​​​​​能​​​​​​​有​​​​​​​不​​​​​​​同​​​​​​​的​​​​​​​方​​​​​​​式​​​​​​​這​​​​​​​個​​​​​​​觀​​​​​​​點​​​​​​​上​​​​​​​。​​​​​​​例​​​​​​​如​​​​​​​一​​​​​​​個​​​​​​​伺​​​​​​​服​​​​​​​器​​​​​​​能​​​​​​​夠​​​​​​​在​​​​​​​ X 視​​​​​​​窗​​​​​​​系​​​​​​​統​​​​​​​下​​​​​​​不​​​​​​​拖​​​​​​​緩​​​​​​​系​​​​​​​統​​​​​​​資​​​​​​​源​​​​​​​並​​​​​​​有​​​​​​​效​​​​​​​執​​​​​​​行​​​​​​​。​​​​​​​或​​​​​​​者​​​​​​​有​​​​​​​時​​​​​​​候​​​​​​​當​​​​​​​系​​​​​​​統​​​​​​​管​​​​​​​理​​​​​​​員​​​​​​​需​​​​​​​要​​​​​​​在​​​​​​​較​​​​​​​低​​​​​​​的​​​​​​​ runlevel 系​​​​​​​統​​​​​​​下​​​​​​​作​​​​​​​業​​​​​​​來​​​​​​​執​​​​​​​行​​​​​​​檢​​​​​​​測​​​​​​​工​​​​​​​作​​​​​​​項​​​​​​​,例​​​​​​​如​​​​​​​在​​​​​​​ runlevel 1 修​​​​​​​復​​​​​​​磁​​​​​​​碟​​​​​​​毀​​​​​​​損​​​​​​​。​​​​​​​
Runlevel 的​​​​​​​特​​​​​​​性​​​​​​​在​​​​​​​於​​​​​​​ init 決​​​​​​​定​​​​​​​該​​​​​​​停​​​​​​​止​​​​​​​和​​​​​​​啟​​​​​​​始​​​​​​​哪​​​​​​​個​​​​​​​服​​​​​​​務​​​​​​​項​​​​​​​目​​​​​​​。​​​​​​​例​​​​​​​如​​​​​​​ runlevel 1(單​​​​​​​機​​​​​​​使​​​​​​​用​​​​​​​者​​​​​​​模​​​​​​​式​​​​​​​)在​​​​​​​ runlevel 3 啟​​​​​​​始​​​​​​​網​​​​​​​路​​​​​​​服​​​​​​​務​​​​​​​項​​​​​​​目​​​​​​​時​​​​​​​,將​​​​​​​這​​​​​​​些​​​​​​​服​​​​​​​務​​​​​​​項​​​​​​​目​​​​​​​停​​​​​​​止​​​​​​​。​​​​​​​在​​​​​​​一​​​​​​​個​​​​​​​特​​​​​​​定​​​​​​​的​​​​​​​ runlevel 上​​​​​​​指​​​​​​​定​​​​​​​停​​​​​​​止​​​​​​​或​​​​​​​啟​​​​​​​始​​​​​​​特​​​​​​​定​​​​​​​服​​​​​​​務​​​​​​​項​​​​​​​目​​​​​​​,init 能​​​​​​​快​​​​​​​速​​​​​​​的​​​​​​​更​​​​​​​換​​​​​​​電​​​​​​​腦​​​​​​​的​​​​​​​模​​​​​​​式​​​​​​​,而​​​​​​​不​​​​​​​需​​​​​​​要​​​​​​​使​​​​​​​用​​​​​​​者​​​​​​​手​​​​​​​動​​​​​​​停​​​​​​​止​​​​​​​或​​​​​​​啟​​​​​​​動​​​​​​​服​​​​​​​務​​​​​​​項​​​​​​​目​​​​​​​。​​​​​​​
以​​​​​​​下​​​​​​​ runlevel 在​​​​​​​ Red Hat Enterprise Linux 下​​​​​​​定​​​​​​​義​​​​​​​為​​​​​​​預​​​​​​​設​​​​​​​:
  • 0 — 停​​​​​​​止​​​​​​​
  • 1 — 單​​​​​​​機​​​​​​​使​​​​​​​用​​​​​​​者​​​​​​​文​​​​​​​字​​​​​​​模​​​​​​​式​​​​​​​
  • 2 — 尚​​​​​​​未​​​​​​​使​​​​​​​用​​​​​​​(使​​​​​​​用​​​​​​​者​​​​​​​定​​​​​​​義​​​​​​​)
  • 3 — 完​​​​​​​整​​​​​​​多​​​​​​​機​​​​​​​使​​​​​​​用​​​​​​​者​​​​​​​文​​​​​​​字​​​​​​​模​​​​​​​式​​​​​​​
  • 4 — 尚​​​​​​​未​​​​​​​使​​​​​​​用​​​​​​​(使​​​​​​​用​​​​​​​者​​​​​​​定​​​​​​​義​​​​​​​)
  • 5 — 完​​​​​​​整​​​​​​​多​​​​​​​機​​​​​​​使​​​​​​​用​​​​​​​者​​​​​​​圖​​​​​​​形​​​​​​​模​​​​​​​式​​​​​​​(在​​​​​​​ X 基​​​​​​​礎​​​​​​​下​​​​​​​的​​​​​​​登​​​​​​​入​​​​​​​畫​​​​​​​面​​​​​​​)
  • 6 — 重​​​​​​​新​​​​​​​啟​​​​​​​動​​​​​​​
基​​​​​​​本​​​​​​​而​​​​​​​言​​​​​​​,使​​​​​​​用​​​​​​​者​​​​​​​在​​​​​​​ runlevel 3 或​​​​​​​ 5 — 下​​​​​​​操​​​​​​​作​​​​​​​ Red Hat Enterprise Linux,都​​​​​​​為​​​​​​​完​​​​​​​整​​​​​​​多​​​​​​​機​​​​​​​使​​​​​​​用​​​​​​​者​​​​​​​模​​​​​​​式​​​​​​​。​​​​​​​因​​​​​​​為​​​​​​​ runlevel 2 和​​​​​​​ 4 尚​​​​​​​未​​​​​​​使​​​​​​​用​​​​​​​,因​​​​​​​此​​​​​​​使​​​​​​​用​​​​​​​者​​​​​​​有​​​​​​​時​​​​​​​可​​​​​​​依​​​​​​​照​​​​​​​需​​​​​​​求​​​​​​​自​​​​​​​訂​​​​​​​ runlevel 2 和​​​​​​​ 4。​​​​​​​
系​​​​​​​統​​​​​​​的​​​​​​​預​​​​​​​設​​​​​​​ runlevel 列​​​​​​​於​​​​​​​ /etc/inittab。​​​​​​​欲​​​​​​​找​​​​​​​到​​​​​​​系​​​​​​​統​​​​​​​的​​​​​​​預​​​​​​​設​​​​​​​ runlevel,請​​​​​​​搜​​​​​​​尋​​​​​​​類​​​​​​​似​​​​​​​於​​​​​​​下​​​​​​​列​​​​​​​並​​​​​​​位​​​​​​​於​​​​​​​ /etc/inittab 的​​​​​​​上​​​​​​​方​​​​​​​:
id:5:initdefault:
在​​​​​​​範​​​​​​​例​​​​​​​中​​​​​​​的​​​​​​​預​​​​​​​設​​​​​​​ runlevel 是​​​​​​​ 5,如​​​​​​​第​​​​​​​一​​​​​​​個​​​​​​​冒​​​​​​​號​​​​​​​後​​​​​​​面​​​​​​​所​​​​​​​示​​​​​​​。​​​​​​​請​​​​​​​以​​​​​​​ root 身​​​​​​​份​​​​​​​來​​​​​​​編​​​​​​​輯​​​​​​​ /etc/inittab 以​​​​​​​更​​​​​​​換​​​​​​​數​​​​​​​字​​​​​​​。​​​​​​​

警告

在​​​​​​​編​​​​​​​輯​​​​​​​ /etc/inittab 時​​​​​​​請​​​​​​​特​​​​​​​別​​​​​​​注​​​​​​​意​​​​​​​。​​​​​​​即​​​​​​​使​​​​​​​是​​​​​​​些​​​​​​​微​​​​​​​打​​​​​​​字​​​​​​​錯​​​​​​​誤​​​​​​​也​​​​​​​會​​​​​​​造​​​​​​​成​​​​​​​系​​​​​​​統​​​​​​​無​​​​​​​法​​​​​​​開​​​​​​​機​​​​​​​。​​​​​​​如​​​​​​​果​​​​​​​上​​​​​​​述​​​​​​​情​​​​​​​況​​​​​​​發​​​​​​​生​​​​​​​,請​​​​​​​使​​​​​​​用​​​​​​​開​​​​​​​機​​​​​​​磁​​​​​​​碟​​​​​​​進​​​​​​​入​​​​​​​單​​​​​​​機​​​​​​​使​​​​​​​用​​​​​​​者​​​​​​​模​​​​​​​式​​​​​​​,或​​​​​​​進​​​​​​​入​​​​​​​救​​​​​​​援​​​​​​​模​​​​​​​式​​​​​​​啟​​​​​​​動​​​​​​​電​​​​​​​腦​​​​​​​以​​​​​​​修​​​​​​​復​​​​​​​該​​​​​​​檔​​​​​​​案​​​​​​​。​​​​​​​
更​​​​​​​多​​​​​​​相​​​​​​​關​​​​​​​單​​​​​​​機​​​​​​​使​​​​​​​用​​​​​​​者​​​​​​​和​​​​​​​救​​​​​​​援​​​​​​​模​​​​​​​式​​​​​​​請​​​​​​​參​​​​​​​照​​​​​​​ Red Hat Enterprise Linux Deployment Guide 中​​​​​​​ 基​​​​​​​本​​​​​​​系​​​​​​​統​​​​​​​修​​​​​​​復​​​​​​​ 章​​​​​​​節​​​​​​​。​​​​​​​
It is possible to change the default runlevel at boot time by modifying the arguments passed by the boot loader to the kernel. For information on changing the runlevel at boot time, refer to 節 9.8, “Changing Runlevels at Boot Time”.