Linux系統中的運行級別(run levels)

Linux GRUB 腳本語言 技術 Linux系統學習 2017-06-17

Linux系統中的運行級別(run levels)

run levels

昨天介紹 init初始化工作流程時,提到了載入系統預設的 run level.下表列出了Linux系統中所有的運行級別以及每個運行級別的功能:

run level功能
0關機,不能設置為 initdefault(不能設置為默認的運行級別)
1、S、emergency單用戶模式,只有root用戶可以登錄,用於系統維護
2多用戶模式,沒有啟動網絡功能
3多用戶模式,啟動了網絡功能,但是為文字界面
4用戶自定義模式,默認與 run level3 相同
5與 run level3 相同,並且啟動了X11(即圖形界面)
6重新啟動系統,不能設置為 initdefault

由於 run level是作為關機用的,所以不能設為默認,即不能在/etc/inittab文件中做 id:0:initdefault:這樣的設置,否則,剛關機就進入 run level 0,也就是即刻關機。run level 6也是同樣的道理。

  1. run level 1中,init進程首先執行/etc/rc.sysinit 程序來初始化操作系統,之後再執行 /etc/rc 1.d目錄中的所有程序,可以表示為 init - > /etc/rc.sysinit -> /etc/rc 1.d/*

  2. run level S中,init進程只會執行 /etc/rc.sysinit 程序來初始化操作系統,可以表示為 init - > /etc/rc.sysinit

  3. run level emergency中,init進程只會執行 /etc/rc.sysinit腳本中某些必要的程序來初始化操作系統。

Linux系統中的運行級別(run levels)

run level 的選擇

Linux系統使用哪個run level是由init程序來定義的,可使用如下3種方式來選擇使用哪一種 run level

  1. 在開機時使用的run level會預設在/etc/inittab文件中。如在Linux系統上 /etc/inittab 文件中的相關設置為id:5:initdefault:,即這個Linux系統將使用 run level 5來開機。

  2. boot loader傳一個參數給 Linux系統的內核,如在開機之前,在grub的開機程序中修改內核參數以單用戶模式登錄之後修改root密碼的方法。run level ,其中 c是run level 0~6、S及emergency.

run level 的查看

要查看Linux系統目前以及之前的run level,可以使用 /sbin 目錄中的runlevel 命令,即運行 /sbin/runlevel命令:

root@promote:~# runlevel

N 5

結果表明目前系統的run level是5,即運行在圖形界面模式,最前面的N是之前的 run level,因為這個系統一直都是使用run level 5,所以沒有之前的run level

使用下列命令使系統的 run level 變為3,即多用戶文字模式運行:

root@promote:~# init 3

root@promote:~# runlevel

5 3

現在可以使用init 5命令讓系統重新回到run level 5 ,也可以使用 startx 命令進入圖形界面。

Linux系統中的運行級別(run levels)


今天就分享這麼多了,謝謝欣賞!^_~

相關推薦

推薦中...