Linux的运行级别和chkconfig用法
linux服务器启动的时候分为6个等级
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
具体和默认的启动等级可以在 /etc/inittab目录下查看
一般自用的linux默认登陆等级为5 公司为3
查看当前运行级别,使用runlevel命令
chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。
语 法:chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]
chkconfig --list [name] 列出所有的系统服务在各个运行级别的启动状态
chkconfig --add name 增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
chkconfig --del name 删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
chkconfig [--level levels] name <on|off|reset> 指定读系统服务要在哪一个执行等级中开启或关毕。当在某个运行级为on时,表示当系统进入这个运行级时会自动启动这项服务
chkconfig [--level levels] name
chkconfig 没有参数运行时,显示用法。如果在服务名后面指定了on,off或者reset,那么chkconfig 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级2,3,4,5有效,但是reset可以对所有运行级有效。
使用范例:
chkconfig --list 列出所有的系统服务在各个运行级别的启动状态
chkconfig --list httpd 列出httpd服务在各个运行级别的启动状态
chkconfig --add httpd 增加httpd服务
chkconfig --del httpd 删除httpd服务
chkconfig --level httpd 2345 on 把httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态。
service命令用于对系统服务进行管理,比如启动(start)、停止(stop)、重启(restart)、查看状态(status)等。
service命令本身是一个shell脚本,它在/etc/init.d/目录查找指定的服务脚本,然后调用该服务脚本来完成任务。
chkconfig和service命令的区别
chkconfig 是设置服务在某个运行级别的自动启动状态,如果在某个运行级别状态为on,那么当系统下次进入这个运行级别,就会自动启动这个服务
注意:使用chkconfig 将某个服务设置为on,并不会立即启动该服务,而是在下次进入这个运行级别时才会自动启动。
要想立即启动某个服务,要使用service命令,系统关闭后,此次service命令就失效了。下次系统启动并不会再次执行此service命令
简单理解:checonfig用来增加和删除系统服务,并设置该服务在各个运行级别上是否自动启动
service就是用来执行服务脚本的
要想自定义一个服务
首先要写一个服务脚本,假如abc,脚本参数一般为启动(start)、停止(stop)、重启(restart)、查看状态(status)等
然后将该脚本放在/etc/init.d目录下
执行chkconfig --add abc 增加所指定的系统服务abc,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
再执行chkconfig abc on ,即设置脚本服务自动启动(注意,不会立即启动,而是下次启动系统时才会自动启动)
最后执行service abc start 即立即启动该服务(注意,只用将脚本放在/etc/init.d目录下,且使用chkconfig --add 服务名之后,才可以使用service命令来执行该服务脚本)