很多時候我們需要在linux上設定一些服務或者腳本開機自啟動,這樣可以避免機器重啟帶來的服務中斷等問題。下面我們來看一下linux下如何設置開啟自啟動:
cd?/etc/init.d?vi?myscript.sh?#將myscript.sh修改為你自己的腳本名
編寫自己的腳本后保存退出。
在編寫腳本的時候,請先加入以如以下注釋
#add?for?chkconfig?? #description:??#關于腳本的簡短描述
說明:
2345是指腳本的運行級別,即在2345這4種模式下都可以運行,234都是文本界面,5就是圖形界面X
70是指腳本將來的啟動順序號,如果別的程序的啟動順序號比70小(比如44、45),則腳本需要等這些程序都啟動以后才啟動。
30是指系統關閉時,腳本的停止順序號。
給腳本添加上可執行權限:
chmod?+x?myscript.sh
利用chkconfig命令將腳本設置為自啟動
chkconfig?--add?servicename
這樣你的腳本就可以在開機后自動運行了。
另外,在redhat里也可以使用這個方法來實現開機自啟動。
chkconfig的使用方法
chkconfig(check config)
功能說明:檢查,設置系統的各種服務。
語 法:chkconfig
[–add][–del][–list][系統服務]或chkconfig[–level][系統服務][on/off/reset]
補充說明:這是RedHat公司遵循GPL規則所開發的程序,它可查詢操作系統在每一個執行等級中會執行哪些系統服務,其中包括各類常駐服務。
參數:
–add 增加所指定的系統服務,讓chkconfig指令得以管理它,并同時在系統啟動的敘述文件內增加相關數據。
–del 刪除所指定的系統服務,不再由chkconfig指令管理,并同時在系統啟動的敘述文件內刪除相關數據。
–level 指定讀系統服務要在哪一個執行等級中開啟或關畢
1:chkconfig 命令也可以用來激活和解除服務。chkconfig –list 命令顯示系統服務列表,以及這些服務在運行級別0到6中已被啟動(on)還是停止(off)。
chkconfig?–list chkconfig?–list?httpd httpd?0:off?1:off?2:on?3:on?4:on?5:on?6:off
2:chkconfig 還能用來設置某一服務在某一指定的運行級別內被啟動還是被停運。譬如,要在運行級別3、4、5中停運 nscd 服務,使用下面的命令:
chkconfig?–level?345?nscd?off
3:由 xinetd 管理的服務會立即被 chkconfig 影響。譬如,如果 xinetd 在運行,finger 被禁用,那么執行了 chkconfig finger on 命令后,finger 就不必手工地重新啟動 xinetd 來立即被啟用。對其它服務的改變在使用 chkconfig 之后不會立即生效。必須使用service servicename start/stop/restart命令來重起服務
?
第二種方法
編輯 ?/etc/rc.d/rc.local文件?
格式為 ?程序名 ?程序路徑
例如 ?a.sh ?/home/a.sh