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./下才可以执行删除和新增 同上理 删除和新增服务后 该服务也不会自行启动或者停止