Chkconfig命令+应用详解
前一篇文章是转载的,也就是理论上的东西:出处
's_chkconfig_CN.htm
下面就要说一些实际应用中的东西,原创+重点。嘿嘿
我在应用的时候就碰到过这样的情况,系统启动的时候报一大堆无法连接mysql的错误,问题就是,在mysql数据库存还没有启动的时候已经启动了一些需要连接mysql数据库的服务。这样我们就得修改启动顺序来把需要连接mysql数据库的服务放到mysql服务启动之后再启动。这样我们就得修改启动脚本。一般是在/etc/rc.d/init.d下面。主要是这部分,如下所示:
# chkconfig: 345 99 01
# description: Nagios network monitor
#
# File : nagios
其中我们要修改的就是:# chkconfig: 345 99 01 后面的数字部分
345 99 01
这三组数字到底是什么意思呢?
345代表的是系统的启动级别。也就是说系统在345的启动级别的时候会启动nagios服务
99 01 代表的是系统启动的时候 应用程序也就是服务的启动级别
345 如果在启动脚本里出现了这组数字,那么在执行chkconfig --add nagios的时候就相当于我们执行了chkconfig --add nagios 和chkconfig --level 345 nagios on两条命令。
实践,如图:
执行chkconfig --add npcd 如图所示:
只执行了chkconfig --add npcd,结果345的状态为on了。也就是上面说的实际上相当于执行了两条命令。在这里就可以直接执行service npcd start了。
如果没有出现这组数据或者出现了-,就说明在执行完chkconfig --add npcd 后一定要执行chkcofnig --level 345 nagios on这条命令后我们才能执行service nagios start
实践:
执行chkconfig --add npcd
看到没,所有的状态都是off。这样我们就必须执行chkconfig --level 345 npcd on之后我们才能执行service npcd start命令。
下面我们来以httpd和nagios来做一下比较,看是数值大的先启动或者关闭,还是数值小的先启动或者关闭。实践出真知。
httpd的优先级如图所示(在http启动脚本里就只出现了-,前面我们已经说到过了):
nagios的优先级如图所示(nagios里就出现了前面所说的345这组数值):
99 这组数字就是系统启动的时候服务启动的优先级---数字越小,优先级越高,也就是启动的时候数值越小越先启动。如图所示:
01 这组数值就是系统关闭的时候关闭服务的优先级---数字越小,优先级越高,也就是关闭的时候数值越小越先关闭。如图所示:
实践证实,数值越小,就越先启动和关闭。
理解了这个,那在处理问题的时候就相当简单了,要不然都不知道怎么去修改那个服务的启动顺序。呵呵
阅读(1207) | 评论(0) | 转发(0) |