Linux chkconfig命令详解

Linux chkconfig命令详解教程

Linux 中的 chkconfig 命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记 chkconfig 不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

chkconfig 在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回 true,否则返回 false。如果在服务名后面指定了 on,off 或者 reset,那么 chkconfig 会改变指定服务的启动信息。

on 和 off 分别指服务被启动和停止,reset 指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on 和 off 开关,系统默认只对运行级 3,4,5 有效,但是 reset 可以对所有运行级有效。

Linux chkconfig命令详解

功能

检查,设置系统的各种服务。

语法

chkconfig [OPTION]

参数

选项 功能
OPTION chkconfig 命令使用的参数。

chkconfig命令常用参数

选项 功能
–add 增加所指定的系统服务,让 chkconfig 指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
–del 删除所指定的系统服务。
–level<等级代号> 指定读系统服务要在哪一个执行等级中开启或关毕。

chkconfig等级代号

选项 功能
0 表示关机。
1 单用户模式。
2 无网络连接的多用户命令行模式。
3 有网络连接的多用户命令行模式。
4 不可用。
5 带图形界面的多用户模式。
6 重新启动。

运行级别文件

每个被 chkconfig 管理的服务需要在对应的 init.d 下的脚本加上两行或者更多行的注释。第一行告诉 chkconfig 缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用 \ 跨行注释。

Linux chkconfig命令常用实例

实例

实例 描述
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(开启)的状态。
chkconfig httpd on 设定 httpd 在各等级为 on,“各等级” 包括 2、3、4、5 等级。

列出所有系统服务

语法

chkconfig --list

案例

我们使用 chkconfig 命令,查看所有的系统服务,具体命令如下:

chkconfig --list

运行后,终端输出如下:

01_Linux chkconfig命令详解.png

我们看到,我们使用了 chkconfig 命令列出了所有的系统服务。

列出某个服务设置情况

语法

chkconfig --list serviceName

案例

我们使用 chkconfig 命令,查看 netconsole 服务的设置情况,具体命令如下:

chkconfig --list netconsole

运行后,终端输出如下:

02_Linux chkconfig命令详解.png

我们看到,我们使用了 chkconfig 命令列出 netconsole 服务的设置情况。

删除服务

语法

chkconfig --del serviceName

案例

我们使用 chkconfig 命令,删除 netconsole 服务的设置情况,具体命令如下:

chkconfig --del netconsole

运行后,终端输出如下:

03_Linux chkconfig命令详解.png

我们看到,我们使用了 chkconfig 命令删除了 netconsole 服务的设置情况。

添加服务

语法

chkconfig --add serviceName

案例

我们使用 chkconfig 命令,增加 netconsole 服务的设置,具体命令如下:

chkconfig --add netconsole

运行后,终端输出如下:

04_Linux chkconfig命令详解.png

我们看到,我们使用了 chkconfig 命令添加了 netconsole 服务的设置。

设置服务在所有运行级别都自动启动

语法

chkconfig serviceName on

案例

我们使用 chkconfig 命令,设置 netconsole 服务在所有运行级别都自动启动,具体命令如下:

chkconfig netconsole on

运行后,终端输出如下:

05_Linux chkconfig命令详解.png

我们看到,我们使用了 chkconfig 命令设置了 netconsole 服务的设置在所有的运行级别都自动启动。

Linux chkconfig命令详解总结

Linux 中的 chkconfig 命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记 chkconfig 不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

chkconfig 在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回 true,否则返回 false。如果在服务名后面指定了 on,off 或者 reset,那么 chkconfig 会改变指定服务的启动信息。

on 和 off 分别指服务被启动和停止,reset 指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on 和 off 开关,系统默认只对运行级 3,4,5 有效,但是 reset 可以对所有运行级有效。