1. 程式人生 > >Linux學習筆記(三):系統執行級與執行級的切換

Linux學習筆記(三):系統執行級與執行級的切換

查看 用戶操作 回車 water hat ntsysv tde 文件表 config

1.Linux系統與其它的操作系統不同,它設有執行級別。該執行級指定操作系統所處的狀態。Linux系統在不論什麽時候都執行於某個執行級上,且在不同的執行級上執行的程序和服務都不同,所要完畢的工作和所要達到的目的也都不同。


2.Linux(Red Hat 9.0)設置了7個不同的執行級,系統能夠在這些執行級別之間進行切換以完畢不同的工作。


3.接下來簡介7個系統執行級:

(1).執行級0:關閉計算機。

(2).執行級1:單用戶模式。

(3).執行級2:多用戶模式(不帶網絡文件系統NFS支持功能)。

(4).執行級3:帶有網絡文件系統NFS支持的多用戶模式。

(5).執行級4:系統保留備用。

(6).執行級5:用於自己主動啟動XFree86系統(圖形方式)。

(7).執行級6:又一次啟動。

另外還有兩種特殊的執行級(執行級)


4.接下來對著7個系統執行級進行理解:

(1).執行級0是為關閉計算機系統而設的。這時系統中全部已開啟的服務都要停止,處於執行狀態的進程都要轉變為終止狀態,系統收回所分配的資源,並關閉系統電源。

當使用關機命令shutdown -h命令時,系統轉入該執行級。

(2).執行級1是為進入單用戶模式維護計算機系統而設的。在該執行級上能夠執行一些不適合在多用戶。多任務模式下執行的命令。這時系統僅僅開啟非常少的服務。

(3).執行級2,3。5都是多用戶模式。僅僅是執行級2,3為字符終端模式,但執行級2不帶網絡文件系統(NFS)支持,而執行級3帶有網絡文件系統(NFS)支持。執行級5為圖形方式,它使普通用戶操作更為簡單,方便。

(4).執行級6是為重新啟動計算機系統而設的,這時系統中全部已開啟的服務都要停止,處於執行狀態的進程都要轉變為終止狀態,系統收回所分配的資源,並又一次啟動計算機系統。當使用shutdown -r或reboot命令時。系統轉入該執行級。


5.系統執行級的查看。能夠通過執行命令方式或查看配置文件方式實現:

(1).執行命令方式:用runlevel命令能夠查看曾經和當前系統的執行級。

在命令行下輸入 runlevel 命令,它查看的是/etc/run/utmp 文件。並在標準輸出設備上輸出曾經和當前執行級情況。例如以下圖所看到的:

技術分享

N 5表示曾經執行級未知。當前執行級為5,也就是當前執行級為自己主動啟動的XFree86系統(圖形方式)。

(2).查看配置文件的方式,查看配置文件的方式僅僅能查看系統當前的執行級,系統的配置文件是/etc/inittab:

我們能夠通過文件編輯器打開,也能夠使用打開文件的命令來查看。在命令行下輸入:gedit /etc/inittab。即:

技術分享

技術分享

看到上圖紅色箭頭指向框框處,id:5:initdefault:。這行中的5表示當前默認的系統執行級為5.


6.系統執行級的切換能夠通過執行命令的方式或改動配置文件的方式實現:

(1).執行命令方式,Linux系統在執行中隨時能夠依據須要切換系統執行級,切換命令有兩個:

命令一:init [0123456Ss]

命令二: telinit [0123456sSQqabcUu]

當中參數的說明:

0~6:切換到指定的系統執行級。

a,b,c:對於那些在/etc/inittab 文件裏指定的能夠在a,b。c執行級中執行的過程進行處理。

S或s:切換到單用戶模式。

Q或q:又一次檢查/etc/inittab 文件。

U或u:使/etc/inittab 文件又一次運行一遍,保留當前狀態,不又一次檢查/etc/inittab 文件。

因為執行級切換時系統要安裝或卸載部分文件系統,關閉和開啟部分服務。分配其它資源,因此。執行級的切換須要花費一定的時間,所以不要以為出了什麽問題,喝杯水歇息下。每次切換執行級後,系統又會又一次回到用戶登錄的界面,要求用戶又一次登錄。


接下來我們能夠輸入上面命令中的命令一,在命令行下輸入命令:init 1。進入單用戶模式。例如以下圖所看到的:

技術分享

按下回車鍵運行此命令,運行後例如以下:

技術分享

進入了單用戶模式,我們能夠輸入命令:init 2。進入多用戶模式(不帶網絡文件系統NFS支持功能),例如以下圖所看到的:

技術分享

按下回車鍵。運行此命令後,例如以下:

技術分享

輸入登陸名和password後,出現下圖的界面:

技術分享

然後我們想要回到剛才的圖形化界面,能夠輸入init 5,來自己主動啟動XFree86系統(圖形方式),例如以下圖所看到的:

技術分享

按下回車鍵。運行此命令後例如以下:

技術分享

輸入username和password後,進入了圖形化界面。

以下我們嘗試一下用命令二看能夠切換系統執行級麽?輸入命令 telinit 6,看是否又一次啟動,輸入下圖命令:

技術分享

紅色框起來的就是在重新啟動這個系統。

(2).切換系統執行級還能夠改動配置文件方式,改動配置文件方式就是直接把/etc/inittab 文件裏默認執行級改動到要設置的執行級上並保存(在上面第5點有介紹怎樣打開文件並查看默認系統執行級),但這樣的方式須要又一次啟動系統才幹使執行級生效,所以。在實際使用中用執行命令的方式切換系統執行級更為方便。


8.接下來介紹系統執行級的服務,不同的執行級下啟動的服務是不同的,這些服務在Linux下也稱為守護進程。用戶能夠在字符或圖形模式下查看Linux系統已經啟動和關閉了哪些服務。也能夠在字符或圖形模式下改動安裝中的默認設置。已開啟或關閉自己須要的服務。

(1).以下來介紹怎樣通過命令方式來查看服務,在命令行下輸入命令:chkconfig --list。例如以下圖所看到的:

技術分享

上圖顯示的結果從左到右分為:服務名稱,執行級,狀態。

(2).以下來介紹怎樣使用圖形方式查看系統執行級服務。例如以下圖所看到的:

技術分享

點擊上圖紅色箭頭指向處,也是Services。能夠啟動服務設置程序:

技術分享

上圖復選框打勾的為已開啟的服務,未打勾的都是未開啟的服務。


9.獨立執行的守護進程由init腳本文件負責管理,全部獨立執行守護進程的腳本文件都放在/etc/rc.d/init.d 文件夾下。而在/etc/rc.d/rcx.d中。有很多以K或S開頭的符號鏈接文件,這些鏈接文件都指向/etc/rc.d/init.d 文件夾中的腳本文件,以K開頭的文件表示在執行級切換時要終止某個服務。以S開頭的文件表示在執行級切換時要啟動某個服務。我們能夠簡單理解,K為kill。即殺死。S為start,即啟動。

我們能夠切換到/etc/rc.d/rc0.d 文件夾下。查看這些鏈接文件:

(1).分別輸入命令 cd /etc/rc.d/rc0.d 和 ls -l 。例如以下圖所看到的:

技術分享

能夠看到這裏的鏈接文件是指向../init.d/文件夾下的文件。這個..指的是父文件夾,init.d文件夾的父文件夾為/etc/rc.d 文件夾,即鏈接文件指向的是/etc/rc.d/init.d 文件夾下的文件。


10.對於系統執行級服務的設置能夠通過命令方式或圖形方式實現:

(1).命令方式:在字符模式下能夠用命令來設置開啟或關閉服務。設置命令為:ntsysv,運行命令後例如以下圖所看到的:

技術分享

用光標鍵或鼠標移動滾動欄到想要設置的服務項目上,按空格鍵或用鼠標單擊選項框,選中後有* 表示,若不須要該服務。則再按空格鍵或用鼠標單擊選項框。沒選中的沒有不論什麽符號表示。當中開啟了服務或關閉了服務。怎麽才幹點擊Ok和Cancelbutton呢,能夠使用Tab鍵來選擇Ok和Cancel。

也能夠執行setup命令,再選擇System services菜單項並按Enter鍵來設置。

(2)圖形方式,與服務查看的圖形方式同樣。即上面第8點的第二節,能夠對服務進行設置。


11.我也是初學Linux,以上內容僅供大家學習參考所用,也有利於本人對學習知識的積累。所以寫得不好的地方請見諒,如有錯誤,請指出,謝謝!

??

Linux學習筆記(三):系統執行級與執行級的切換