有時候我們需要Linux系統在開機的時候自動加載某些腳本或系統服務(http://www.0830120.com)
主要用三種方式進行這一操作:
ln -s 在/etc/rc.d/rc*.d目錄中建立/etc/init.d/服務的軟鏈接(*代表0~6七個運行級別之一)
chkonfig 命令行運行級別設置
ntsysv 偽圖形運行級別設置
注意:1.這三種方式主要用於以redhat為基礎的發行版
2.如果還不知道運行級別是什么,那么最好先看看相關資料再實驗
第一種方式:ln -s 建立啟動軟連接
在Linux中有7種運行級別(可在/etc/inittab文件設置),每種運行級別分別對應着/etc/rc.d/rc[0~6].d這7個目錄
Tips:/etc/rc[0~6].d其實是/etc/rc.d/rc[0~6].d的軟連接,主要是為了保持和Unix的兼容性才做此策
這7個目錄中,每個目錄分別存放着對應運行級別加載時需要關閉或啟動的服務
由詳細信息可以知道,其實每個腳本文件都對應着/etc/init.d/目錄下具體的服務
K開頭的腳本文件代表運行級別加載時需要關閉的,S開頭的代表需要執行
因此,當我們需要開機啟動自己的腳本時,只需要將可執行腳本丟在/etc/init.d目錄下,然后在/etc/rc.d/rc*.d中建立軟鏈接即可
[root@localhost ~]# ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/S100ssh
此處sshd是具體服務的腳本文件,S100ssh是其軟鏈接,S開頭代表加載時自啟動
如果需要在多個運行級別下設置自啟動,則需建立多個軟鏈接
這種方式比較繁瑣,適用於自定義的服務腳本
如果系統中已經存在某些服務(比如安裝apache時就會有httpd服務項),可以使用下面的兩種方式
第二種方式:chkconfig
如果需要自啟動某些服務,只需使用chkconfig 服務名 on即可,若想關閉,將on改為off
在默認情況下,chkconfig會自啟動2345這四個級別,如果想自定義可以加上--level選項
上面我們先將sshd服務的所有啟動級別關閉,然后使用--level選項啟動自定義級別