httpd服务如何开机启动
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了httpd服务如何开机启动相关的知识,希望对你有一定的参考价值。
在之前的学习中我们已经知道怎样收到启动服务或者停止服务,以httpd服务在Redhat5、centos6为例:
启动服务:
service httpd start
停止服务:
service httpd stop
重启服务:
service http restart
那么我们如何设置一个httpd服务开机启动呢?
方法一:
我们可以用ntsysv命令查看,带*的为开机启动的服务,不带*的为开机不启动的服务,也可以手动进行设置,但是设置只工作在当前模式下,切换到其它模式无效
我们知道Linux有多种工作模式具体可以查看/etc/initab文件
方法二:使用脚本制作开机自启服务
1、ls /etc/init.d
我们发现系统已经有httpd服务的脚本,如果没有需要自己写脚本并且移动到/etc/init.d目录,我们需要注意作为服务的脚本必须有以下两行
chkconfig: - 85 15
- 代表工作哪种模式,希望设置为哪种模式就设置为哪种模式,比如可以设置在3,5模式就写35中间不需要任何符号在这里我们不指定
85第一个数字代表开始的运行次序S*: S##*:##运行次序;数字越小,越先运行;数字
越小的服务,通常为被依赖到的服务
15第二个数字代表停止的运行次序K*: K##*:##运行次序;数字越小,越先运行;数字
越小的服务,通常为依赖到别的服务
简单来说比如一个服务要依赖网络服务在模式3下网络服务的运行次序是S10,我们写的服务必须在网络服务开启之后才能开启,并且在网络服务关闭之前关闭,否则网络服务无法关闭,因此S值应该大一点,K值应该小一点
description:
如果要自己写脚本作为一项开机自启服务在脚本中需要注意一下几个方面:
脚本不能调用单独的函数
不能是交互式
有执行权限
2、chkconfig命令查看服务在所有级别的启动或关闭设定情形
chkconfig --list httpd 查看所有开机自启的服务发现没有httpd
3、chkconfig --add httpd 添加脚本到开机自启列表,但是它并没有被运行开机启动
4、因为我们没有在httpd服务脚本指定运行在哪个模式下,可以在此设置,比如我希望在当前模式下开机启动
先查看当前模式:runlevel
chkconfig --level 5 httpd on
这时查看/etc/rc.d/rc5.d发现以S开头运行次序是85
而在其他模式比如3模式下以K开头次序是15
5、重启,命令service httpd status 查看指定模式httpd服务是不是开机自启
这样一个开机自启服务就做好了!
以上是关于httpd服务如何开机启动的主要内容,如果未能解决你的问题,请参考以下文章
Mac OS X取消Apache(httpd)开机启动(转载)