1. 程式人生 > >最新cenos執行service httpd restart 報錯Failed to restart httpd.service: Unit not found.

最新cenos執行service httpd restart 報錯Failed to restart httpd.service: Unit not found.

service 通過 gpo spa word com 註意 命名 執行

原來是需要將Apache註冊到Linux服務裏面啊!
註冊Apache到Linux服務
在Linux下用源代碼方式編譯安裝完Apache後,啟動關閉Apache可以通過如下命令實現: 

/usr/local/apache/bin/apachectl  start | stop | restart

如果想將httpd列入系統自動啟動的服務,可以直接將上述的apachectl文件拷貝到 /etc/rc.d/init.d 中,然後在相應的啟動級別如3,5中加入鏈接即可。命令如下:

cp /usr/local/apache2/bin/apachectl  /etc/rc.d/init.d/httpd     # 復制到init.d 並重命名為httpd

ln -s /etc/rc.d/init.d/httpd  /etc/rc.d/rc3.d/S61httpd

鏈接文件的S61是啟動時的序號。當init.d目錄下有httpd腳本後,我們就可以通過service命令來啟動關閉apache了。在任意路徑下執行:

service httpd start | stop | restart

這時有個問題就是:雖然apache已經可以自動啟動,但在linux的服務列表中卻看不到它,要添加服務,一般通過chkconfig --add xxx來實現,但需要腳本中有相應的信息才行,否則chkconfig就會提示:xxx 服務不支持 chkconfig。所以我們首先編輯httpd腳本,在第2行(#!/bin/sh下面)添加如下註釋信息(包括#):

# chkconfig: 35 61 61
# description: Apache

第一行的3個參數意義分別為:在哪些運行級別啟動httpd(3,5);啟動序號(S61);關閉序號(K61)。註意:第二行的描述必須要寫!
保存後執行:

chkconfig --add httpd                    #所有開機模式下自啟動,另外chkconfig httpd on 表示345模式下自啟動

就將httpd添加入服務了。在rc3.d、rc5.d路徑中將來就會出現S61httpd的鏈接,其他運行級別路徑中會出現K61httpd的鏈接。

運行下面的命令查看服務,就可以看到httpd的服務了。
chkconfig --list

最新cenos執行service httpd restart 報錯Failed to restart httpd.service: Unit not found.