默认我们源码编译安装apache,是不能使用service这个命令来启动的,通常我们启动的命令是:
[[email protected] httpd-2.2.16]# /usr/local/apache2/bin/apachectl start
/usr/local/apache2/bin/中的apachectl其实就是一个启动脚本,我们把他copy到/etc/init.d/去,并且重命名为apache2(这个名字随便取,你自己方便就行)
[[email protected] httpd-2.2.16]# cp /usr/local/apache2/bin/apachectl /etc/init.d/apache2
然后修改2个地方,让他支持service和chkconfig命令
[[email protected] httpd-2.2.16]# vim /etc/init.d/apache2
在前面一大段注释中任意地方加入这2行:
# chkconfig: 35 20 80
# description: Apache2
第一行后面的3个数字的意思分别是:在哪些运行级别启动apache(3,5);启动序号(S20);关闭序号(K80)。
3和5也就是说在第三启动级别和第五启动级别的时候会默认启动apache
20就是指系统起来的时候有很多的服务需要启动,而这个程序排在第二十位启动,以此类推
80就是指系统关闭的时候,这个服务顺序排在第80位关闭
注意:这2行缺一不可,#号不能省略,一定要有
然后保存退出,这样我们就可以用service来启动和关闭apache了
比如:
[[email protected] httpd-2.2.16]# service apache2 start
[[email protected] httpd-2.2.16]# netstat -antp |grep 80
tcp 0 0 :::80 :::* LISTEN 13410/httpd
如果想让apache跟随系统一起启动,也就是开机自启动,那么加入到chkconfig即可
[[email protected] httpd-2.2.16]# chkconfig –add apache2
[[email protected] httpd-2.2.16]# chkconfig apache2 on