Linux管理員經常會希望將一個剛剛裝完的應用配置為每次隨系統啟動而自動啟動,避免每次重啟服務器後還需要手工啟動的麻煩。網上看到不少帖子介紹寫腳本方法,對於我等菜鳥來說未免麻煩了些,想到CentOS下chkconfig這個好用的命令,記錄下配置apache自啟動服務的過程
我用的是源碼安裝的方式安裝的apache,版本是最新的2.44,prefix定在/usr/local/httpd-2.4.4
第一步當然是apache的啟動腳本問題,俺沒有自己寫,直接用的是默認安裝在/usr/local/httpd-2.4.4/bin/下的apachectl。
cp /usr/local/httpd-2.4.4/bin/apachectl /etc/init.d/httpd \\把apache的啟動腳本拷貝到系統的啟動腳本目錄下/etc/init.d,改個通用點的名字httpd
第二步稍微修改下默認腳本,以便支持chkconfig管理
vi /etc/init.d/httpd
在#!/bin/sh行下加入
# chkconfig: 35 70 35 \\這行中的第一組數字表示此腳本將會在哪(幾)種運行級別下啟動,第二組數字表示start參數的優先級,第三組數字表示stop參數的優先級
第三步使用chkconfig注冊系統服務
chkconfig –add httpd \\這條命令會根據上面配置的參數執行如下動作:在/etc/rc3.d和/etc/rc5.d中生成S70httpd的軟鏈接,在其余的/etc/rc0.d,/etc/rc1.d,/etc/rc2.d,/etc/rc4.d,/etc/rc6.d中生成K35httpd的軟鏈接
有些文章說需要修改/etc/init.d下httpd的權限為700,我沒想通這有什麼必要
現在已經完成了,可以用service httpd start/stop/restart來管理服務了,chkconfig –list也可以看到apache已經自動運行在3和5的級別上了。