技術(shù)員聯(lián)盟提供win764位系統(tǒng)下載,win10,win7,xp,裝機(jī)純凈版,64位旗艦版,綠色軟件,免費(fèi)軟件下載基地!

當(dāng)前位置:主頁 > 教程 > 服務(wù)器類 >

詳解Linux系統(tǒng)中的進(jìn)程初始化配置文件inittab

來源:技術(shù)員聯(lián)盟┆發(fā)布時(shí)間:2018-01-09 00:17┆點(diǎn)擊:

  /etc/inittab文件描述了哪些進(jìn)程開始啟動(dòng)并正常運(yùn)行。inittab為linux初始化文件系統(tǒng)時(shí)init初始化程序用到的配置文件。這個(gè)文件負(fù)責(zé)設(shè)置init初始化程序初始化腳本在哪里;每個(gè)運(yùn)行級(jí)初始化時(shí)運(yùn)行的命令; 開機(jī)、關(guān)機(jī)、重啟對應(yīng)的命令;各運(yùn)行級(jí)登陸時(shí)所運(yùn)行的命令。

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

  label:runlevels:action:process 下面分別介紹各個(gè)字段

  1.label

  label 是一個(gè)獨(dú)特的序列,確定了一個(gè)條目1 - 4字符,一些系統(tǒng)只支持2個(gè)字符的標(biāo)簽。對于getty或mingetty等其他login程序項(xiàng),要求label與tty的編號(hào)相同,否則getty程序?qū)⒉荒苷9ぷ鳌?/p>

  常用標(biāo)簽有:

  id 用來定義缺省的init運(yùn)行的級(jí)別

  si 是系統(tǒng)初始化的進(jìn)程

  ln 其中的n從1~6,指明該進(jìn)程可以使用的runlevel的級(jí)別

  ud 是升級(jí)進(jìn)程

  ca 指明當(dāng)按下Ctrl+Alt+Del時(shí)運(yùn)行的進(jìn)程

  pf 指當(dāng)UPS表明斷電時(shí)運(yùn)行的進(jìn)程

  pr 是在系統(tǒng)真正關(guān)閉之前,UPS發(fā)出電源恢復(fù)的信號(hào)時(shí)需要運(yùn)行的進(jìn)程

  x 是將系統(tǒng)轉(zhuǎn)入X終端時(shí)需要運(yùn)行的進(jìn)程

  2.runlevels

  runlevels 列出了運(yùn)行級(jí),指定應(yīng)該采取的動(dòng)作??梢灾付ǘ鄠€(gè)runlevel級(jí)別,也可以不為runlevel字段指定特定的值。

  runlevel 0是讓init關(guān)閉所有進(jìn)程并終止系統(tǒng)。

  runlevel 1是用來將系統(tǒng)轉(zhuǎn)到單用戶模式,單用戶模式只能有系統(tǒng)管理員進(jìn)入,在該模式下處理那些在有登錄用戶的情況下不能進(jìn)行更改的文件,改runlevel的編號(hào)1也可以用S代替。

  runlevel 2是允許系統(tǒng)進(jìn)入多用戶的模式,但并不支持文件共享,這種模式很少應(yīng)用。

  runlevel 3是最常用的運(yùn)行模式,主要用來提供真正的多用戶模式,也是多數(shù)服務(wù)器的缺省模式。

  runlevel 4一般不被系統(tǒng)使用,用戶可以設(shè)計(jì)自己的系統(tǒng)狀態(tài)并將其應(yīng)用到runlevel 4階段,盡管很少使用,但使用該系統(tǒng)可以實(shí)現(xiàn)一些特定的登錄請求。

  runlevel 5是將系統(tǒng)初始化為專用的X Window終端。對功能強(qiáng)大的Linux系統(tǒng)來說,這并不是好的選擇,但用戶如果需要這樣,也可以通過在runlevel啟動(dòng)來實(shí)現(xiàn)該方案。

  runlevel 6是關(guān)閉所有運(yùn)行的進(jìn)程并重新啟動(dòng)系統(tǒng)。

  debian6以后默認(rèn)沒有運(yùn)行/etc/inittab 文件 默認(rèn)級(jí)別為2-5歸為一類

  3.action

  action 字段定義了該進(jìn)程應(yīng)該運(yùn)行在何種狀態(tài)下,描述其后的process的運(yùn)行方式的。:

  respawn 不管何時(shí)終止都重新啟動(dòng)進(jìn)程

  wait 運(yùn)行進(jìn)程等待輸入運(yùn)行模式 這個(gè)過程將會(huì)開始一次運(yùn)行級(jí)別時(shí)指定輸入和init將等待其終止

  once 每一個(gè)runlevel級(jí)別運(yùn)行一次 這個(gè)過程將執(zhí)行一次當(dāng)指定輸入runlevel

  boot 在系統(tǒng)啟動(dòng)時(shí)運(yùn)行,忽略runlevel

  bootwait 在系統(tǒng)啟動(dòng)時(shí)運(yùn)行,init等待進(jìn)程完成。忽略runlevel

  ctrlaltdel 當(dāng)Ctrl+Alt+Del三個(gè)鍵同時(shí)按下時(shí)運(yùn)行,把SIGINT信號(hào)發(fā)送給init。忽略 runlevel

  initdefault 不要執(zhí)行這個(gè)進(jìn)程,它用于設(shè)置默認(rèn)runlevel

  kbrequest 當(dāng)init從鍵盤中收到信號(hào)時(shí)運(yùn)行。這里要求鍵盤組合符合KeyBoardSigra

  off 禁止進(jìn)入,因此該進(jìn)程不運(yùn)行

  once 每一個(gè)runlevel級(jí)別運(yùn)行一次

  ondemand 當(dāng)系統(tǒng)指定特定的運(yùn)行級(jí)別A、B、C時(shí)運(yùn)行

  powerfail 當(dāng)init收到SIGPWR信號(hào)時(shí)運(yùn)行

  powerokwait 當(dāng)收到SIGPWD信號(hào)且/etc/文件中的電源狀態(tài)包含OK時(shí)運(yùn)行

  powerwait 當(dāng)收到SIGPWD信號(hào),并且init等待進(jìn)程結(jié)束時(shí)運(yùn)行

  sysinit 在運(yùn)行boot或bootwait進(jìn)程之前運(yùn)行

  4.process

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

  代碼如下:

  # /etc/inittab: init(8) configuration.

  # $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $

  代碼如下:

  # The default runlevel.

  id:2:initdefault: #表示當(dāng)前缺省運(yùn)行級(jí)別為2

  代碼如下:

  # Boot-time system configuration/initialization script.

  # This is run first except when booting in emergency (-b) mode.

  si::sysinit:/etc/init.d/rcS #系統(tǒng)初始化的進(jìn)程

  代碼如下:

  # 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. #在啟動(dòng)過程中是否允許按CTRL-ALT-DELETE重啟系統(tǒng)

  #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:

  # :::

  #

  # 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進(jìn)程來提供虛擬終端設(shè)備的服務(wù)

  1:2345:respawn:/sbin/getty 38400 tty1

  代碼如下: