久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

linux運行級別定義在什么文件中

158次閱讀
沒有評論

共計 5245 個字符,預計需要花費 14 分鐘才能閱讀完成。

這篇“linux 運行級別定義在什么文件中”文章的知識點大部分人都不太理解,所以丸趣 TV 小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“linux 運行級別定義在什么文件中”文章吧。

linux 運行級別定義在“/etc/inittab”配置文件中。“/etc/inittab”是 linux 初始化文件系統時,init 初始化程序用到的配置文件;該配置文件只能用來設置系統的默認運行級別,也就是系統開機后會進入那個運行級別。

本教程操作環境:linux5.9.8 系統、Dell G3 電腦。

什么是運行級別呢?

其實 Linux 是通過運行級別來確定系統啟動時到底啟動哪些服務的。

Linux 默認有 7 個運行級別,具體如表 1 所示。

     
表 1 運行級別              
運行級別              
含 義              
0             
關機              
1             
單用戶模式,可以想象為 Windows 的安全模式,主要用于系統修復              
2             
不完全的命令行模式,不含 NFS 服務              
3             
完全的命令行模式,就是標準字符界面              
4             
系統保留              
5             
圖形模式              
6             
重新啟動

linux 運行級別定義在哪個文件中

linux 運行級別定義在“/etc/inittab”配置文件中。

/etc/inittab 配置文件只能用來設置系統的默認運行級別,也就是系統開機后會進入那個運行級別

/etc/inittab 文件描述了哪些進程開始啟動并正常運行。inittab 為 linux 初始化文件系統時 init 初始化程序用到的配置文件。這個文件負責設置 init 初始化程序初始化腳本在哪里;每個運行級初始化時運行的命令;開機、關機、重啟對應的命令;各運行級登陸時所運行的命令。

inittab 文件中的條目的格式如下:

label:runlevels:action:process

下面分別介紹各個字段

1.label

label 是一個獨特的序列, 確定了一個條目 1 – 4 字符, 一些系統只支持 2 個字符的標簽。對于 getty 或 mingetty 等其他 login 程序項,要求 label 與 tty 的編號相同,否則 getty 程序將不能正常工作。

常用標簽有:

id  用來定義缺省的 init 運行的級別
si  是系統初始化的進程
ln  其中的 n 從 1~6, 指明該進程可以使用的 runlevel 的級別
ud  是升級進程
ca  指明當按下 Ctrl+Alt+Del 時運行的進程
pf  指當 UPS 表明斷電時運行的進程
pr  是在系統真正關閉之前,UPS 發出電源恢復的信號時需要運行的進程
x  是將系統轉入 X 終端時需要運行的進程 

2.runlevels

runlevels 列出了運行級, 指定應該采取的動作。可以指定多個 runlevel 級別,也可以不為 runlevel 字段指定特定的值。

runlevel 0 是讓 init 關閉所有進程并終止系統。runlevel 1 是用來將系統轉到單用戶模式,單用戶模式只能有系統管理員進入,在該模式下處理那些在有登錄用戶的情況下不能進行更改的文件,改 runlevel 的編號 1 也可以用 S 代替。runlevel 2 是允許系統進入多用戶的模式,但并不支持文件共享,這種模式很少應用。runlevel 3 是最常用的運行模式,主要用來提供真正的多用戶模式,也是多數服務器的缺省模式。runlevel 4 一般不被系統使用,用戶可以設計自己的系統狀態并將其應用到 runlevel 4 階段,盡管很少使用,但使用該系統可以實現一些特定的登錄請求。runlevel 5 是將系統初始化為專用的 X  Window 終端。對功能強大的 Linux 系統來說,這并不是好的選擇,但用戶如果需要這樣,也可以通過在 runlevel 啟動來實現該方案。runlevel 6 是關閉所有運行的進程并重新啟動系統。

debian6 以后默認沒有運行 /etc/inittab 文件 默認級別為 2 - 5 歸為一類

3.action

action 字段定義了該進程應該運行在何種狀態下,描述其后的 process 的運行方式的。:

respawn  不管何時終止都重新啟動進程
wait  運行進程等待輸入運行模式   這個過程將會開始一次運行級別時指定輸入和 init 將等待其終止
once  每一個 runlevel 級別運行一次   這個過程將執行一次當指定輸入 runlevel
boot  在系統啟動時運行,忽略 runlevel
bootwait  在系統啟動時運行,init 等待進程完成。忽略 runlevel
ctrlaltdel  當 Ctrl+Alt+Del 三個鍵同時按下時運行,把 SIGINT 信號發送給 init。忽略  runlevel
initdefault  不要執行這個進程,它用于設置默認 runlevel
kbrequest  當 init 從鍵盤中收到信號時運行。這里要求鍵盤組合符合 KeyBoardSigra
off  禁止進入,因此該進程不運行
once  每一個 runlevel 級別運行一次
ondemand  當系統指定特定的運行級別 A、B、C 時運行
powerfail  當 init 收到 SIGPWR 信號時運行
powerokwait  當收到 SIGPWD 信號且 /etc/ 文件中的電源狀態包含 OK 時運行
powerwait  當收到 SIGPWD 信號,并且 init 等待進程結束時運行
sysinit  在運行 boot 或 bootwait 進程之前運行 

4.process

process 字段包含 init 執行的進程,該進程采用的格式與在命令行下運行該進程的格式一樣,因此 process 字段都以該進程的名字開頭, 緊跟著是運行時要傳遞給該進程的參數。

代碼如下:

# /etc/inittab: init(8) configuration.
# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $

代碼如下:

# The default runlevel.
id:2:initdefault: # 表示當前缺省運行級別為 2 

代碼如下:

# Boot-time system configuration/initialization script.
# This is run first except when booting in emergency (-b) mode.
si::sysinit:/etc/init.d/rcS # 系統初始化的進程 

代碼如下:

# What to do in single-user mode.
~~:S:wait:/sbin/sulogin

代碼如下:

# /etc/init.d executes the S and K scripts upon change
# of runlevel.
# Runlevel 0 is halt.
# Runlevel 1 is single-user.
# Runlevels 2-5 are multi-user.
# Runlevel 6 is reboot.

代碼如下:

l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Normally not reached, but fallthrough in case of emergency.
z6:6:respawn:/sbin/sulogin

代碼如下:

# What to do when CTRL-ALT-DEL is pressed. # 在啟動過程中是否允許按 CTRL-ALT-DELETE 重啟系統
#ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

代碼如下:

# Action on special keypress (ALT-UpArrow).
#kb::kbrequest:/bin/echo  Keyboard Request--edit /etc/inittab to let this work.

代碼如下:

# What to do when the power fails/returns.
pf::powerwait:/etc/init.d/powerfail start
pn::powerfailnow:/etc/init.d/powerfail now
po::powerokwait:/etc/init.d/powerfail stop

代碼如下:

# /sbin/getty invocations for the runlevels.
# The  id  field MUST be the same as the last
# characters of the device (after  tty).
# Format:
#  id : runlevels : action : process 
# Note that on most Debian systems tty7 is used by the X Window System,
# so if you want to add more getty s go ahead but skip tty7 if you run X.
# getty 進程來提供虛擬終端設備的服務
1:2345:respawn:/sbin/getty 38400 tty1

代碼如下:

# 標簽字段的值是 1,1 是設備 tty1 的數字后綴,tty1 與相應的進程相關聯,該 getty 進程可以啟動的 runlevel 是 2,3,4 和 5, 當該進程終止時,init 馬上就重新啟動它。啟動進程的路徑名是 /sbin/getty,該進程是實現虛擬終端支持的最小版本的 getty,為 tty1 提供啟動虛擬設備的進程。2:23:respawn:/sbin/getty 38400 tty2
#3:23:respawn:/sbin/getty 38400 tty3
#4:23:respawn:/sbin/getty 38400 tty4
#5:23:respawn:/sbin/getty 38400 tty5
#6:23:respawn:/sbin/getty 38400 tty6
# Example how to put a getty on a serial line (for a terminal)
#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
T1:23:respawn:/sbin/getty -L ttyS1 115200 vt100
# Example how to put a getty on a modem line.
#T3:23:respawn:/sbin/mgetty -x0 -s 57600 ttyS3

示例

# Begin /etc/inittab
id:3:initdefault:
si::sysinit:/etc/rc.d/init.d/rc sysinit
l0:0:wait:/etc/rc.d/init.d/rc 0
l1:S1:wait:/etc/rc.d/init.d/rc 1
l2:2:wait:/etc/rc.d/init.d/rc 2
l3:3:wait:/etc/rc.d/init.d/rc 3
l4:4:wait:/etc/rc.d/init.d/rc 4
l5:5:wait:/etc/rc.d/init.d/rc 5
l6:6:wait:/etc/rc.d/init.d/rc 6
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
su:S016:once:/sbin/sulogin
1:2345:respawn:/sbin/agetty tty1 9600
2:2345:respawn:/sbin/agetty tty2 9600
3:2345:respawn:/sbin/agetty tty3 9600
4:2345:respawn:/sbin/agetty tty4 9600
5:2345:respawn:/sbin/agetty tty5 9600
6:2345:respawn:/sbin/agetty tty6 9600
# End /etc/inittab

以上就是關于“linux 運行級別定義在什么文件中”這篇文章的內容,相信大家都有了一定的了解,希望丸趣 TV 小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注丸趣 TV 行業資訊頻道。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-03發表,共計5245字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 棋牌| 成都市| 融水| 花莲县| 西昌市| 微山县| 临江市| 彭州市| 遂宁市| 富民县| 桃园县| 万山特区| 沙河市| 嘉峪关市| 新竹市| 白水县| 金川县| 周宁县| 白山市| 沅江市| 金华市| 澎湖县| 海伦市| 海口市| 阿勒泰市| 新安县| 师宗县| 昌邑市| 南部县| 松滋市| 剑川县| 瑞丽市| 屏山县| 通江县| 安阳市| 宜兴市| 辽阳县| 宣化县| 黄骅市| 十堰市| 汝城县|