标签:
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]
chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。
chkconfig --list [name]:显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
chkconfig --del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
chkconfig [--level levels] name:设置某一服务在指定的运行级是被启动,停止还是重置。
chkconfig --list #列出所有的系统服务
chkconfig --add httpd #增加httpd服务
chkconfig --del httpd #删除httpd服务
chkconfig --level httpd 2345 on #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
chkconfig --list #列出系统所有的服务启动情况
chkconfig --list mysqld #列出mysqld服务设置情况
chkconfig --level 35 mysqld on #设定mysqld在等级3和5为开机运行服务,--level 35表示操作只在等级3和5执行,on表示启动,off表示关闭
chkconfig mysqld on #设定mysqld在各等级为on,“各等级”包括2、3、4、5等级
[root@BASE ~]# ll /etc/init.d
lrwxrwxrwx. 1 root root 11 Jun 13 21:10 /etc/init.d -> rc.d/init.d
[root@BASE ~]#
当我们将服务的启动脚本放到/etc/init.d这个目录的时候,其实是放在了rc.d/init.d中
[root@BASE ~]# ll /etc/rc.d/
total 60
drwxr-xr-x. 2 root root 4096 Sep 23 21:51 init.d
-rwxr-xr-x. 1 root root 2617 Nov 23 2013 rc
-rwxr-xr-x. 1 root root 220 Sep 8 09:18 rc.local
-rwxr-xr-x. 1 root root 19688 Nov 23 2013 rc.sysinit
drwxr-xr-x. 2 root root 4096 Sep 27 10:56 rc0.d
drwxr-xr-x. 2 root root 4096 Sep 27 10:56 rc1.d
drwxr-xr-x. 2 root root 4096 Sep 27 10:56 rc2.d
drwxr-xr-x. 2 root root 4096 Sep 27 10:56 rc3.d
drwxr-xr-x. 2 root root 4096 Sep 27 10:56 rc4.d
drwxr-xr-x. 2 root root 4096 Sep 27 10:56 rc5.d
drwxr-xr-x. 2 root root 4096 Sep 27 10:56 rc6.d
[root@BASE ~]#
rc1-6.d这些目录对应的是不同的运行级别,系统在开机的时候会加载这些目录中的文件,来实现在不同的级别是否启动服务。
[root@BASE ~]# ll /etc/rc.d/rc2.d/
total 0
lrwxrwxrwx. 1 root root 16 Jun 13 21:13 K01smartd -> ../init.d/smartd
lrwxrwxrwx 1 root root 13 Jun 18 11:57 K05atd -> ../init.d/atd
lrwxrwxrwx. 1 root root 16 Jun 13 21:13 K10psacct -> ../init.d/psacct
lrwxrwxrwx. 1 root root 19 Jun 13 21:12 K10saslauthd -> ../init.d/saslauthd
lrwxrwxrwx. 1 root root 18 Jun 13 21:13 K15svnserve -> ../init.d/svnserve
lrwxrwxrwx 1 root root 19 Jun 18 11:57 K16abrt-ccpp -> ../init.d/abrt-ccpp
........
lrwxrwxrwx 1 root root 17 Aug 21 14:34 S13rpcbind -> ../init.d/rpcbind
lrwxrwxrwx. 1 root root 14 Jun 13 21:13 S55sshd -> ../init.d/sshd
lrwxrwxrwx 1 root root 16 Sep 27 10:56 S64mysqld -> ../init.d/mysqld
lrwxrwxrwx. 1 root root 15 Jun 13 21:12 S90crond -> ../init.d/crond
lrwxrwxrwx. 1 root root 11 Jun 13 21:12 S99local -> ../rc.local
当将某一个服务设置为开机启动的时候,系统会自动创建一个软连接来指向rc.d/init.d中该服务的启动脚本,所以如果想使用chkconfig来管理服务的开机启动的时候必须先要将服务的启动脚本放到rc.d/init.d中去。
如果将某一个服务设置为2级别on,系统就会在/etc/rc.d/rc2.d/中创建一个以S开头的软连接,如果设置为off,就会创建一个以K开头连接文件。
Mysqld服务在2级别是开启的
[root@BASE ~]# chkconfig|grep mysql
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
在rc2.d目录中将mysqld的软连接删除。
[root@BASE ~]# rm /etc/rc.d/rc2.d/S64mysqld
可以看到mysqld服务在2级别的变为为off
[root@BASE ~]# chkconfig|grep mysql
mysqld 0:off 1:off 2:off 3:on 4:on 5:on 6:off
[root@BASE ~]#
标签:
原文地址:http://www.cnblogs.com/along1226/p/4842043.html