linux 下 chkconfig安装与使用详解

chkconfig 安装

开始的时候因为Raspbian的原因,系统是不自带chkconfig这个命令的,

root@raspberrypi:~# chkconfig
-bash: chkconfig: command not found

所以要手动安装一下才行,

安装很简单apt-get install chkconfig即可,

安装过程如下:

root@raspberrypi:~# apt-get install chkconfig
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  chkconfig
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 9766 B of archives.
After this operation, 59.4 kB of additional disk space will be used.
Get:1 http://mirrors.ustc.edu.cn/raspbian/raspbian/ jessie/main chkconfig all 11.4.54.60.1debian1 [9766 B]
Fetched 9766 B in 0s (20.1 kB/s)
Selecting previously unselected package chkconfig.
(Reading database ... 120673 files and directories currently installed.)
Preparing to unpack .../chkconfig_11.4.54.60.1debian1_all.deb ...
Unpacking chkconfig (11.4.54.60.1debian1) ...
Processing triggers for man-db (2.7.0.2-5) ...
Setting up chkconfig (11.4.54.60.1debian1) ...
使用chkconfig
下面是chkconfig的命令帮助

使用语法:
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可以对所有运行级有效。

参数用法:

–add 增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
–del 删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
–level <等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动

开机禁用某服务

再此以minidlna为例,

先看看minidlna服务现在的运行情况

root@raspberrypi:~# chkconfig -l | grep mini
minidlna   0:off  1:off  2:on   3:on   4:on   5:on   6:off
从level 2 – 5 全部禁用。
使用命令chkconfig --level 2345 minidlna off,

并且在查询一遍服务状态,如下:

root@raspberrypi:~# chkconfig --level 2345 minidlna off
root@raspberrypi:~# chkconfig -l | grep mini
minidlna   0:off  1:off  2:off  3:off  4:off  5:off  6:off

为了节省树莓派2b可怜的512mb内存,我还顺便禁用了ftp和mysql服务。

事后,重启,查看服务状态

linux 下 chkconfig安装与使用详解

因为我是用的 lnmp 一键安装包装的环境,

所以我是用lnmp status和lnmp pureftpd status来查看服务状态。
查看下内存使用,果然少用了几十兆,嘿嘿。

linux 下 chkconfig安装与使用详解

例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.

使用范例:
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等级

如何增加一个服务:
1.服务脚本必须存放在/etc/ini.d/目录下;
2.chkconfig --add servicename
    在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了;
3.chkconfig --level 35 mysqld on
    修改服务的默认启动等级。

上一篇:列表总结Canvas和SVG的区别


下一篇:Golang Map实现(一)