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

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

linux中chkconfig 啟動程序順序

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

  1)redhat的啟動方式和執(zhí)行次序是:

  加載內(nèi)核 執(zhí)行init程序

  /etc/rc.d/rc.sysinit # 由init執(zhí)行的第一個(gè)腳本

  /etc/rc.d/rc $RUNLEVEL # $RUNLEVEL為缺省的運(yùn)行模式

  /etc/rc.d/rc.local #相應(yīng)級別服務(wù)啟動之后、在執(zhí)行該文件(其實(shí)也可以把需要執(zhí)行的命令寫到該文件中) /sbin/mingetty # 等待用戶登錄

  在Redhat中,/etc/rc.d/rc.sysinit主要做在各個(gè)運(yùn)行模式中相同的初始化工作,包括: 調(diào)入keymap以及系統(tǒng)字體 啟動swapping 設(shè)置主機(jī)名 設(shè)置NIS域名

  檢查(fsck)并mount文件系統(tǒng)打開quota 裝載聲卡模塊設(shè)置系統(tǒng)時(shí)鐘等等。

  /etc/rc.d/rc則根據(jù)其參數(shù)指定的運(yùn)行模式(運(yùn)行級別,你在inittab文件中可以設(shè)置)來執(zhí)行相應(yīng)目錄下的腳本。

  凡是以Kxx開頭的 ,都以stop為參數(shù)來調(diào)用;凡是以Sxx開頭的,都以start為參數(shù)來調(diào)用。

  調(diào)用的順序按xx 從小到大來執(zhí)行。

  (其中xx是數(shù)字、表示的是啟動順序)例如,假設(shè)缺省的運(yùn)行模式是3,/etc/rc.d/rc就會按上述方式調(diào)用

  /etc/rc.d/rc3.d/下的腳本。

  值得一提的是,Redhat中的運(yùn)行模式2、3、5都把/etc/rc.d/rc.local做為初始化腳本中

  的最后一個(gè),所以用戶可以自己在這個(gè)文件中添加一些需要在其他初始化工作之后,登錄之前執(zhí)行的命令。 init在等待/etc/rc.d/rc執(zhí)行完畢之后(因?yàn)樵?etc/inittab中/etc/rc.d/rc的

  action是wait),將在指定的各個(gè)虛擬終端上運(yùn)行/sbin/mingetty,等待用戶的登錄。 至此,LINUX的啟動結(jié)束。

  2)init運(yùn)行級別及指令 一、什么是INIT:

  init是Linux系統(tǒng)操作中不可缺少的程序之一。

  所謂的init進(jìn)程,它是一個(gè)由內(nèi)核啟動的用戶級進(jìn)程。

  內(nèi)核自行啟動(已經(jīng)被載入內(nèi)存,開始運(yùn)行,并已初始化所有的設(shè)備驅(qū)動程序和數(shù)據(jù)結(jié)構(gòu)等)之后,就通過啟動一個(gè)用戶級程序init的方式,完成引導(dǎo)進(jìn)程。所以,init始終是第一個(gè)進(jìn)程(其進(jìn)程編號始終為1)。

  內(nèi)核會在過去曾使用過init的幾個(gè)地方查找它,它的正確位置(對Linux系統(tǒng)來說)是/sbin/init。如果內(nèi)核找不到init,它就會試著運(yùn)行/bin/sh,如果運(yùn)行失敗,系統(tǒng)的啟動也會失敗。

  二、運(yùn)行級別

  那么,到底什么是運(yùn)行級呢?

  簡單的說,運(yùn)行級就是操作系統(tǒng)當(dāng)前正在運(yùn)行的功能級別。

  這個(gè)級別從1到6 ,具有不同的功能。 不同的運(yùn)行級定義如下

  # 0 -停機(jī)(千萬不能把initdefault 設(shè)置為0 )

  # 1 -單用戶模式 # s init s = init 1

  # 2 -多用戶,沒有 NFS

  # 3 -完全多用戶模式(標(biāo)準(zhǔn)的運(yùn)行級)

  # 4 -沒有用到

  # 5 -X11 多用戶圖形模式(xwindow)

  # 6 -重新啟動 (千萬不要把initdefault 設(shè)置為6 )

  這些級別在/etc/inittab 文件里指定。

  這個(gè)文件是init 程序?qū)ふ业闹饕募钕冗\(yùn)行的服務(wù)是放

  在/etc/rc.d 目錄下的文件。

  在大多數(shù)的Linux 發(fā)行版本中,啟動腳本都是位于 /etc/rc.d/init.d中的。

  這些腳本被用ln 命令連接到 /etc/rc.d/rcn.d 目錄。(這里的n 就是運(yùn)行級0-6) 3):

  ---------------------------

  chkconfig命令主要用來更新(啟動或停止)和查詢系統(tǒng)服務(wù)的運(yùn)行級信息。謹(jǐn)記chkconfig不是立即自動禁止或激活一個(gè)服務(wù),它只是簡單的改變了符號連接。

  使用語法:

  chkconfig [--add][--del][--list][系統(tǒng)服務(wù)] 或 chkconfig [--level <等級代號>][系統(tǒng)服務(wù)][on/off/reset]

  chkconfig在沒有參數(shù)運(yùn)行時(shí),顯示用法。如果加上服務(wù)名,那么就檢查這個(gè)服務(wù)是否在當(dāng)前運(yùn)行級啟動。如果是,返回true,否則返回false。如果在服務(wù)名后面指定了on,off或者reset,那么chkconfi 會改變指定服務(wù)的啟動信息。on和off分別指服務(wù)被啟動和停止,reset指重置服務(wù)的啟動信息,無論有問題的初始化腳本指定了什么。on和off開關(guān),系統(tǒng)默認(rèn)只對運(yùn)行級3,4,5有效,但是reset可以對所有運(yùn)行級有效。

  參數(shù)用法:

  --add  增加所指定的系統(tǒng)服務(wù),讓chkconfig指令得以管理它,并同時(shí)在系統(tǒng)啟動的敘述文件內(nèi)增加相關(guān)數(shù)據(jù)。

  --del  刪除所指定的系統(tǒng)服務(wù),不再由chkconfig指令管理,并同時(shí)在系統(tǒng)啟動的敘述文件內(nèi)刪除相關(guān)數(shù)據(jù)。

  --level<等級代號>  指定讀系統(tǒng)服務(wù)要在哪一個(gè)執(zhí)行等級中開啟或關(guān)畢。

  等級0表示:表示關(guān)機(jī)

  等級1表示:單用戶模式

  等級2表示:無網(wǎng)絡(luò)連接的多用戶命令行模式

  等級3表示:有網(wǎng)絡(luò)連接的多用戶命令行模式

  等級4表示:不可用

  等級5表示:帶圖形界面的多用戶模式

  等級6表示:重新啟動