1. 程式人生 > >linux開機啟動服務和chkconfig使用方法

linux開機啟動服務和chkconfig使用方法

  • chkconfig命令用法
    語法:
    chkconfig --list [name]
    chkconfig --add name
    chkconfig --del name
    chkconfig [--level levels] name <on|off|reset>
    chkconfig [--level levels] name

    說明:
    chkconfig提供一種簡單的命令列工具來幫助管理員對/etc/rc[0-6].d目錄層次下的眾多的符號連結進行直接操作。
    此命令使用是由chkconfig命令在IRIX作業系統提供授權。不用在/etc/rc[0-6].d目錄下直接維護配置資訊,而是直接在/etc/rc[0-6]下管理連結檔案。在執行級別的目錄下的配置資訊通知在將會初始啟動哪些服務。
    Chkconfig有五個很明確的功能:為管理增加一個新的功能、刪除一個功能、列出當前服務的啟動資訊、改變一個服務的啟動資訊和檢測特殊服務的啟動狀態。
    當chkconfig沒有引數執行時,它將顯示其使用方法。如果只給出了一個服務名,它將檢測這個服務名是否已經被配置到了當前執行級別中。如果已經配置,返回真,否則返回假。--level選項可以被用做查詢多個執行級別而不僅僅是一個。
           如果在服務名之後指定了on,、off或reset,chkconfig將改變指定服務的啟動資訊。On或off標記服務被開啟或停止,尤其是在執行級別被改變時。Reset標記重置服務的啟動資訊。
           預設情況下,on或off選項僅對2、3、4、5有影響,而 reset影響所有的執行級。--level選項可以被用於指定哪個執行級別接收影響。
    注意:對於每個服務,每一個執行級都有一個開始角本和一個結束角本。當開或關一個執行級時,init不會重新開始一個已經執行的服務,也不會重新停止一個未執行的服務。
    選項:
           --level levels
                  指定一個執行級別適合的操作。範圍為0-7。
           --add name
                  增加一個新的服務。
           --del name
                  刪除一個服務
           --list name
                  顯示服務的情況
    RUNLEVEL FILES
    每個通過chkconfig管理的服務在其init.d目錄下的角本中都需要兩行或多行的註釋。第一行告訴chkconfig在預設情況下什麼執行級別的服務可以開始,也就是所說的開始或結束的優先級別。如果服務沒有預設的級別,建造將在所有執行級別中啟動。a – 將用於代替執行級列表。第二個註釋行包括對此服務的描述,可以通過反斜線符號擴充套件為多行。

    示例,auto_run的前三行如下:
    #!/bin/sh
    #chkconfig: 2345 80 90
    #description:auto_run
    第一行,告訴系統使用的shell,所以的shell指令碼都是這樣。
    第二行,chkconfig後面有三個引數2345,80和90告訴chkconfig程式,需要在rc2.d~rc5.d目錄下,建立名字為S80auto_run的檔案連線,連線到/etc/rc.d/init.d目錄下的的auto_run指令碼。第一個字元是S,系統在啟動的時候,執行指令碼auto_run,就會新增一個start引數,告訴指令碼,現在是啟動模式。同時在rc0.d和rc6.d目錄下,建立名字為K90auto_run的檔案連線,第一個字元為K,個系統在關閉系統的時候,會執行auto_run,新增一個stop,告訴指令碼,現在是關閉模式。
    注意上面的三行是中,地二,第三行是必須的,否則在執行chkconfig --add auto_run時,會報錯。