歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

linux運行級init詳解

  Linux 啟動時需要哪些步驟呢?本文將詳細描述不同的運行級在啟動中的作用。   對於那些在DOS/Win9x/NT 平台下的高級用戶而言,linux 似乎是一個怪物。沒有 config.sys ,沒有autoexec.bat,具有個人特色的機器配置不知道從何開始。   需要說明的是,很多人認為linux 是Unix 的一個克隆,但是,這種說法對於Linux 是不 公平的。linux比Unix更加開放,功能更強大。我們應該稱之為GNU/linux 。   linux 啟動時,運行一個叫做init的程序,然後由它來啟動後面的任務,包括多用戶環 境,網絡等。   那麼,到底什麼是運行級呢?簡單的說,運行級就是操作系統當前正在運行的功能級別 。這個級別從1 到6 ,具有不同的功能。這些級別在/etc/inittab 文件裡指定。這個文件 是init 程序尋找的主要文件,最先運行的服務是那些放在/etc/rc.d 目錄下的文件。   大多數的linux 發行版本中,啟動腳本位於 /etc/rc.d/init.d。這些腳本被ln 命令 來連接到 /etc/rc.d/rcn.d 目錄。(這裡的n 就是運行級0-6)   例如/etc/rc.d/rc2.d 下面的S10network 就是連接到/etc/rc.d/init.d下的network 腳 本的。   因此,我們可以知道,rc2.d 下面的文件就是和運行級2 有關的。   文件開頭的S 代表start 就是啟動服務的意思,後面的數字10 就是啟動的順序。例如, 在同一個目錄下,你還可以看到 S80postfix 這個文件,80 就是順序在 10 以後,因為沒 有啟動網絡的情況下,啟動postfix是沒有任何作用的。   再看一下 /etc/rc.d/rc3.d,可以看到文件S60nfslock,但是這個文件不存在於 /etc/ rc.d/rc2.d 目錄下。   NFS 要用到這個文件,一般用在多用戶環境下,所以放在rc3.d 目錄下。   另外,在/etc/rc.d/rc2.d 還可以看到那些K 開頭的文件,例如/etc/rc.d/rc2.d/K45named, K 代表 kill 。   標准的linux運行級為3 或者5 ,如果是3 的話,系統就在多用戶狀態。如果是5的話, 則是運行著X Window系統。如果目前正在3或5,而你把運行級降低到2的話,init 就會執行 K45named 腳本。   不同的運行級定義如下:(可以參考Red Hat linux 裡面的/etc/inittab) # 缺省的運行級,RHS 用到的級別如下: # 0 - 停機(千萬不要把initdefault 設置為0 ) # 1 - 單用戶模式 # 2 - 多用戶,但是沒有 NFS # 3 - 完全多用戶模式 # 4 - 沒有用到 # 5 - X11 # 6 - 重新啟動 (千萬不要把initdefault 設置為6 ) # 對各個運行級的詳細解釋: 0 為停機,機器關閉。 1 為單用戶模式,就像Win9x 下的安全模式類似。 2 為多用戶模式,但是沒有NFS 支持。 3 為完整的多用戶模式,是標准的運行級。 4 一般不用,在一些特殊情況下可以用它來做一些事情。 例如在筆記本電腦的電池用盡時,可以切換到這個模式來做一些設置。 5 就是 X11 ,進到 X Window 系統了。 6 為重啟,運行 init 6 機器就會重啟。   不同的運行級有不同的用處,也應該根據自己的不同情形來設置。例如,如果丟失了 root 口令,那麼可以讓機器啟動進入單用戶狀態來設置。在啟動後的 lilo 提示符下輸入:   init=/bin/sh rw   就可以使機器進入運行級1 ,並把 root 文件系統掛為讀寫。他會跳過所有系統認證, 讓你使用passwd 程序來改變root口令,然後啟動到一個新的運行級。   linux 啟動程序的調整,對於新手來說也是一個大問題,以後的教程中,我們將介紹這方面的知識。




Copyright © Linux教程網 All Rights Reserved