Linux 執行級init詳解(轉)
Linux 執行級init詳解(轉)[@more@]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 啟動程式的調整,對於新手來說也是一個大問題,以後的教程中,我們將介紹這方面的知識
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-938668/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Linux執行級詳解(轉)Linux
- (轉)Linux init詳解Linux
- Linux init詳解(轉)Linux
- Linux init詳解Linux
- Linux init程式詳解Linux
- linux init六種執行模式Linux模式
- [轉]Java執行緒詳解Java執行緒
- POSIX執行緒詳解 (轉)執行緒
- POSIX 執行緒詳解(3) (轉)執行緒
- POSIX執行緒詳解(2) (轉)執行緒
- Linux中init.d目錄詳解Linux
- 【轉】javascript執行機制之this詳解JavaScript
- git init命令詳解Git
- Linux 執行級別Linux
- Linux執行等級Linux
- Linux下安裝hive 詳解及HiveSQL執行LinuxHiveSQL
- Linux執行環境安裝全解(轉)Linux
- 詳解多執行緒執行緒
- 多執行緒詳解執行緒
- PHP 執行方式詳解PHP
- 執行計劃詳解
- Linux 系統執行級別Linux
- Linux系統執行級別Linux
- Linux下安裝Hadoop 詳解及WordCount執行LinuxHadoop
- Linux可執行檔案格式-ELF結構詳解Linux
- CentOS Linux使用crontab執行定時任務詳解CentOSLinux
- linux find詳解(轉)Linux
- Linux inittab詳解(轉)Linux
- Android 4.4 的 init 程式詳解Android
- 詳解Java執行緒安全Java執行緒
- Explain執行計劃詳解AI
- Java多執行緒詳解Java執行緒
- Java 執行緒池詳解Java執行緒
- js執行機制詳解JS
- iOS 多執行緒詳解iOS執行緒
- Oracle執行計劃詳解Oracle
- MSSQLSERVER執行計劃詳解SQLServer
- Java執行緒池詳解Java執行緒