chkconfig命令主要用查询/设置系统服务的运行级别 一般用来设置启动服务
要熟悉这个命令 首先需要知道系统运行级别这个概念 liunx
系统运行级别
一共有六个运行级别(不算关机的话) 分别由数字 0-6来表示 其中0表示关机 其它各级别信息如下:
1:单用户模式
2:无网络连接的多用户命令行模式
3:有网络连接的多用户命令行模式
4:不可用
5:带图形界面的多用户模式
6:重新启动
参数说明
参数 --list 显示所有系统服务列表(可省) 结果如下
[xxxx ~]# chkconfig --list abrt-ccpp 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭 abrtd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭 acpid 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭 aegis 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 atd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 auditd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭 blk-availability 0:关闭 1:启用 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭 cpuspeed 0:关闭 1:启用 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭 crond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 gshelld 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 haldaemon 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭 htcacheclean 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭 httpd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
查看php-fpm服务
[xxx ~]# chkconfig --list php-fpm php-fpm 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
--level 设置服务的运行级别 语法形式如下 chkconfig --level 23 service off|on|reset 23即为运行级别 service为服务 off关闭 on开启 reset重启
例:设置php-fpm在23级别不启动
chkconfig --level 23 php-fpm off
--add 增加一个服务 服务脚本应位于/etc/init.d/文件夹下 语法 chkconfig --add servicename
例:增加memcached服务
vim memcached
#! /bin/sh # # memcached: MemCached Daemon # # chkconfig: - 90 25 # description: MemCached Daemon # # Source function library. . /etc/rc.d/init.d/functions . /etc/sysconfig/network PORT=11211 USER=daemon MAXCONN=1024 CACHESIZE=128 OPTIONS="" HOST=127.0.0.1 MEMCACHED="/usr/local/memcached/bin/memcached" PID="/var/run/memcached/memcached.pid" start() { echo -n $"Starting memcached: " daemon $MEMCACHED -u $USER -d -m $MAXCONN -l $HOST -p $PORT -P $PID echo } stop() { echo -n $"Shutting down memcached: " killproc memcached echo } [ -f $MEMCACHED ] || exit 1 # See how we were called. case "$1" in start) start ;; stop) stop ;; restart) stop sleep 3 start ;; *) echo $"Usage: $0 {start|stop|restart}" exit 1 esac exit 0
其中
# chkconfig: - 90 25
告诉chkconfig运行级别 启动优先级 停止优先级 -代表在任何级别都不运行 90为启动优先级 25为停止优先级 拷贝到/etc/init.d/目录
cp memcached /etc/init.d/memcached
增加memcached服务
chkconfig --add memcached
添加服务后可以使用--level命令来设置运行级别
--del命令 删除服务 语法 chkconfig --del 服务名
例:删除刚才添加的memcache服务
chkconfig --del memcached
注意事项
1. chkconfig不会自动禁止或激活一个服务 如上面我将memcached运行设置为 --level 2345 memcached on 如果memcached在当前级别下未启动 那么执行chkconfig后也不会自动启动
2.启动脚本需在/etc/init./下才可以执行删除和新增 同上理 删除和新增服务后 该服务也不会自行启动或者停止