每天一个Linux命令(54)chkconfig命令

    chkconfig命令检查、设置系统的各种服务。

    (1)用法:

    用法:  chkconfig  [必要参数]  [服务]

 

    (2)功能:

    功能:  chkconfig命令用来安装,查看或修改 services随系统启动的启动选项的设置。是Red Hat公司遵循GPL规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。

  注意:  谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。
    每一个被chkconfig管理的服务都首先要在/etc/init.d中添加他们。    

    (3)选项参数:

      1) --add         开启指定的服务程序

      2) --del        关闭指定的服务程序

      3) --list          列出chkconfig所知道的所有服务

      4) --level<代号>     设置服务程序的等级代号,是一串0~7的数字

 

    (4)实例:

      1)[root@localhost sunjimeng]# chkconfig --list   查看系统程序列表     

[root@localhost sunjimeng]# chkconfig --list

注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。 
      如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'。
      欲查看对特定 target 启用的服务请执行
      'systemctl list-dependencies [target]'。

netconsole         0:关    1:关    2:关    3:关    4:关    5:关    6:关
network            0:关    1:关    2:开    3:开    4:开    5:开    6:关

基于 xinetd 的服务:
    chargen-dgram:     关
    chargen-stream:    关
    daytime-dgram:     关
    daytime-stream:    关
    discard-dgram:     关
    discard-stream:    关
    echo-dgram:        关
    echo-stream:       关
    tcpmux-server:     关
    time-dgram:        关
    time-stream:       关

      2)在shell脚本中检查service的启动选项的设置

[root@localhost sunjimeng]# chkconfig network && echo "Network service is configured"
Network service is configured

      当你执行chkconfig加service名字,如果service被配置为自动启动,则它将返回true。

[root@localhost sunjimeng]# chkconfig xinetd
注意:正在将请求转发到“systemctl is-enabled xinetd.service”。
enabled
[root@localhost sunjimeng]# chkconfig xinetd
注意:正在将请求转发到“systemctl is-enabled xinetd.service”。
enabled

      3)添加或删除指定的服务

[root@localhost /]# chkconfig --del netconsole
[root@localhost /]# chkconfig --add netconsole

    (5)其他:

      1)等级代号列表:

  等级0表示:表示关机

  等级1表示:单用户模式

  等级2表示:无网络连接的多用户命令行模式

  等级3表示:有网络连接的多用户命令行模式

  等级4表示:不可用

  等级5表示:带图形界面的多用户模式

  等级6表示:重新启动

      需要说明的是,level选项可以指定要查看的运行级而不一定是当前运行级。对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。 
      2)运行级文件:

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

原文地址:https://www.cnblogs.com/MenAngel/p/5602074.html