Linux chkconfig命令語法及其應(yīng)用簡介
Linux chkconfig命令主要用來更新(啟動或停止)和查詢系統(tǒng)服務(wù)的運(yùn)行級信息。謹(jǐn)記Linux chkconfig命令不是立即自動禁止或激活一個服務(wù),它只是簡單的改變了符號連接。
語法:
chkconfig --list [name]
chkconfig --add name
chkconfig --del name
chkconfig [--level levels] name <on|off|reset>
chkconfig [--level levels] name
Linux chkconfig命令沒有參數(shù)運(yùn)行時,顯示用法。如果加上服務(wù)名,那么就檢查這個服務(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)行級有效。
--level選項可以指定要查看的運(yùn)行級而不一定是當(dāng)前運(yùn)行級。
需要說明的是,對于每個運(yùn)行級,只能有一個啟動腳本或者停止腳本。當(dāng)切換運(yùn)行級時,init不會重新啟動已經(jīng)啟動的服務(wù),也不會再次去停止已經(jīng)停止的服務(wù)。
chkconfig --list :顯示所有運(yùn)行級系統(tǒng)服務(wù)的運(yùn)行狀態(tài)信息(on或off)。如果指定了name,那么只顯示指定的服務(wù)在不同運(yùn)行級的狀態(tài)。
chkconfig --add name:增加一項新的服務(wù)。chkconfig確保每個運(yùn)行級有一項啟動(S)或者殺死(K)入口。如有缺少,則會從缺省的init腳本自動建立。
chkconfig --del name:刪除服務(wù),并把相關(guān)符號連接從/etc/rc[0-6].d刪除。
chkconfig [--level levels] name <on|off|reset>:設(shè)置某一服務(wù)在指定的運(yùn)行級是被啟動,停止還是重置。例如,要在3,4,5運(yùn)行級停止nfs服務(wù),則命令如下:
chkconfig --level 345 nfs off
運(yùn)行級文件:
每個被Linux chkconfig命令管理的服務(wù)需要在對應(yīng)的init.d下的腳本加上兩行或者更多行的注釋。第一行告訴Linux chkconfig命令缺省啟動的運(yùn)行級以及啟動 和停止的優(yōu)先級。如果某服務(wù)缺省不在任何運(yùn)行級啟動,那么使用 - 代替運(yùn)行級。第二行對服務(wù)進(jìn)行描述,可以用\ 跨行注釋。
例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.
附加介紹一下Linux系統(tǒng)的運(yùn)行級的概念:
Linux中有多種運(yùn)行級,常見的就是多用戶的2,3,4,5 ,很多人知道5是運(yùn)行X-Windows的級別,而0就是關(guān)機(jī)了。運(yùn)行級的改變可以通過init命令來切換。例如,假設(shè)你要維護(hù)系統(tǒng)進(jìn)入單用戶狀態(tài),那 么,可以使用init1來切換。在Linux的運(yùn)行級的切換過程中,系統(tǒng)會自動尋找對應(yīng)運(yùn)行級的目錄/etc/rc[0-6].d下的K和S開頭的文件, 按后面的數(shù)字順序,執(zhí)行這些腳本。對這些腳本的維護(hù),是很繁瑣的一件事情,Linux提供了chkconfig命令用來更新和查詢不同運(yùn)行級上的系統(tǒng)服 務(wù)。
本文來自CSDN博客,轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/yfw418/archive/2007/06/24/1664896.aspx
【編輯推薦】






















