linux系统命令chkconfig详解,管理系统服务的工具-查看、启用、禁用和设置系统服务的启动级别

目录

一、chkconfig命令介绍

二、命令的主要作用

1、管理服务的启动和停止:

2、配置运行级别:

3、简化系统管理:

4、查看服务状态:

三、命令语法

1、基本语法

2、运行级别

四、获取帮助

1、通过help获取

2、通过man获取

五、示例

1. 查看所有服务的启动状态:

2. 查看 sshd 服务的启动状态:

3. 在运行级别 3、4、5 上启用 sshd 服务:

4. 在运行级别 3、4、5 上禁用 sshd 服务:

六、命令输出

1、概述

2、输出示例

3、解释:

(1)服务名称

(2)运行级别

(3)启动状态

4、补充说明


一、chkconfig命令介绍

        `chkconfig` 是一个在基于 SysV init 系统的 Linux 发行版中用于管理系统服务的工具。这个工具可以帮助你查看、启用、禁用和设置系统服务的启动级别。这是通过管理 /etc/init.d/ 目录下的服务脚本的符号链接到 /etc/rc[0-6].d/ 目录来实现的,每个运行级别对应一个目录。

二、命令的主要作用

1、管理服务的启动和停止:

        你可以使用 chkconfig 来启用或禁用某个服务在特定的运行级别上的自动启动。这对于优化系统启动过程、减少不必要的服务运行以及提高系统安全性都非常重要。使用 `chkconfig` 命令启用服务,使其在指定的运行级别自动启动。使用 `chkconfig` 命令禁用服务,防止它在指定的运行级别自动启动。

2、配置运行级别:

        不同的运行级别对应着不同的系统状态。例如,运行级别 3 通常是多用户文本模式,而运行级别 5 则是图形界面模式。通过 chkconfig,你可以根据需要配置服务在不同运行级别下的行为。

3、简化系统管理:

        通过 chkconfig,系统管理员可以更方便地管理系统上的服务,而无需手动编辑启动脚本或符号链接。这大大简化了系统管理的复杂性,提高了工作效率。

4、查看服务状态:

        chkconfig 还可以用来查看当前系统上所有服务的启动状态,帮助管理员了解哪些服务正在运行,哪些服务被禁用,以及它们在哪些运行级别下运行。使用 `chkconfig --list` 命令可以查看所有服务的启动状态。

三、命令语法

1、基本语法

chkconfig --list [name]

chkconfig --add [name]

chkconfig --del [name]

chkconfig [name] [on|off|reset] <runlevels>

        `--list [name]`:列出指定服务的启动状态,或者列出所有服务的启动状态(如果不指定服务名)。

         `--add [name]`:添加一个服务到 chkconfig 管理。

         `--del [name]`:从 chkconfig 管理中删除一个服务。

         `[name] [on|off|reset] <runlevels>`:设置服务在指定运行级别的启动状态。`on` 表示启用服务,`off` 表示禁用服务,`reset` 表示重置服务的启动状态到默认设置。`<runlevels>` 是运行级别的列表,例如 `345` 表示运行级别 3、4 和 5。

2、运行级别

        Linux 的 SysV init 系统使用运行级别来定义系统在不同状态下的行为。常见的运行级别有:

         `0`:关机

         `1`:单用户模式

         `2`:多用户模式,不带 NFS

         `3`:完整的多用户模式(文本界面)

         `4`:未定义,用户可自定义

         `5`:图形界面模式

         `6`:重启

四、获取帮助

1、通过help获取

 [root@ecs-52a1 121yunwei]# chkconfig --help
chkconfig version 1.13 - Copyright (C) 1997-2000 Red Hat, Inc.
This may be freely redistributed under the terms of the GNU Public License.


usage:   chkconfig [--list] [--type <type>] [name]
         chkconfig --add <name>
         chkconfig --del <name>
         chkconfig --override <name>
         chkconfig [--level <levels>] [--type <type>] <name> <on|off|reset|resetpriorities>
[root@ecs-52a1 121yunwei]#

2、通过man获取

 [root@ecs-52a1 121yunwei]# man chkconfig

 输入命令后,出现如下图示:

五、示例

1. 查看所有服务的启动状态:

chkconfig --list

2. 查看 sshd 服务的启动状态:

chkconfig --list sshd

3. 在运行级别 3、4、5 上启用 sshd 服务:

chkconfig sshd on 345

4. 在运行级别 3、4、5 上禁用 sshd 服务:

chkconfig sshd off 345

六、命令输出

1、概述

        `chkconfig` 命令的输出展示了系统上各种服务的启动状态,以及这些服务在哪些运行级别下会自动启动。输出通常包含了服务名称、运行级别以及在该运行级别下服务的启动状态(启用或禁用)。

2、输出示例

        下面是 `chkconfig` 命令输出的一个示例:


$ chkconfig --list
Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.


      If you want to list systemd services use 'systemctl list-unit-files'.
      To see services enabled on particular target use
      'systemctl list-dependencies [target]'.

netconsole          0:off   1:off   2:off   3:off   4:off   5:off   6:off
network             0:off   1:off   2:on    3:on    4:on    5:on    6:off
remote-fs           0:off   1:off   2:on    3:on    4:on    5:on    6:off
rpcbind             0:off   1:off   2:on    3:on    4:on    5:on    6:off
sshd                0:off   1:off   2:on    3:on    4:on    5:on    6:off

3、解释:

(1)服务名称

        每行的第一部分是服务的名称,例如 `netconsole`、`network`、`remote-fs`、`rpcbind` 和 `sshd`。

(2)运行级别

        在服务名称之后,你会看到一系列的数字,这些数字代表不同的运行级别(0 到 6)。每个运行级别对应一个特定的系统状态。

  - `0`:关机

  - `1`:单用户模式

  - `2`:多用户模式,不带 NFS

  - `3`:完整的多用户模式(文本界面)

  - `4`:未定义,用户可自定义

  - `5`:图形界面模式

  - `6`:重启

(3)启动状态

        在每个运行级别后面,你会看到 `on` 或 `off`,这表示该服务是否会在相应的运行级别启动时自动启动。

在上面的示例中,`network` 服务在运行级别 2、3、4 和 5 下是启用的(`on`),而在其他级别下是禁用的(`off`)。其他服务也有类似的配置。

4、补充说明

        需要注意的是,如果你的系统使用的是 `systemd` 而不是 `SysV init`,那么 `chkconfig` 的输出可能不会反映所有服务的实际状态,因为 `systemd` 使用不同的机制来管理服务。在这种情况下,你可以使用 `systemctl` 命令来查看和管理 `systemd` 服务的状态。

        另外,从 `chkconfig` 的输出中还可以看到一条提示信息,说明这个输出仅展示了 SysV 服务,并没有包括原生的 `systemd` 服务。如果需要查看 `systemd` 服务的状态,应该使用 `systemctl` 命令。


文章正下方可以看到我的联系方式:鼠标点击” 下面的 “威迪斯特-就是video system 微信名片字样,就会出现我的二维码,欢迎沟通探讨。


  • 11
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值