设为首页 收藏本站
查看: 304|回复: 0

[经验分享] chkconfig命令详解

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-3-17 09:10:03 | 显示全部楼层 |阅读模式
一、功能说明      chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。
     注意:它不是直接对服务进行启动或停止,只是设置下一次启动时的操作。也只是简单的更改了符号链接。
二、语法格式       chkconfig [选项] [参数]
                      chkconfig [选项] [参数] [on/off/reset]
三、常用选项      --add:添加服务给chkconfig管理
      --del:删除chkconfig列表里面某个服务
       --list:列出chkconfig管理的服务列表
      --level:设置级别(启动级别)
四、参数       服务的名称
五、实例 列出当前的开机启动的服务
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[iyunv@lixin init.d]# chkconfig--list
abrt-ccpp     0:off  1:off   2:off   3:off  4:off   5:off   6:off
abrtd         0:off  1:off   2:off   3:off  4:off   5:off   6:off
acpid         0:off  1:off   2:off   3:off  4:off   5:off   6:off
atd           0:off  1:off   2:off   3:off  4:off   5:off   6:off
auditd        0:off  1:off   2:off   3:off  4:off   5:off   6:off
cpuspeed      0:off  1:on    2:off   3:off  4:off   5:off   6:off
crond         0:off  1:off   2:on    3:on   4:on    5:on    6:off
haldaemon     0:off  1:off   2:off   3:off  4:off   5:off   6:off
ip6tables     0:off  1:off   2:off   3:off  4:off   5:off   6:off
iptables      0:off  1:off   2:off   3:off  4:off   5:off   6:off
irqbalance    0:off  1:off   2:off   3:off  4:off   5:off   6:off
kdump         0:off  1:off   2:off   3:off  4:off   5:off   6:off
lvm2-monitor  0:off  1:on    2:off   3:off  4:off   5:off   6:off
mdmonitor     0:off  1:off   2:off   3:off  4:off   5:off   6:off
messagebus    0:off  1:off   2:off   3:off  4:off   5:off   6:off
netconsole    0:off  1:off   2:off   3:off  4:off   5:off   6:off
netfs         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
nfs-rdma      0:off  1:off   2:off   3:off  4:off   5:off   6:off
sysstat       0:off  1:on    2:on    3:on   4:on    5:on    6:off
udev-post     0:off  1:on    2:off   3:off  4:off   5:off   6:off
[iyunv@lixin init.d]#




六、扩展1)    添加服务
1
[iyunv@lixin init.d]# chkconfig--add lixin




注意:需要把启动脚本放在/etc/init.d下才可以使用chkconfig管理,并且由于chkconfig管理需要服务的启动脚本必须拥有指定格式才可以,所以我们添加的自启动服务,需要在文件头添加固定的格式

[iyunv@lixin init.d]# headiptables

#!/bin/sh

#

# iptables      Start iptables firewall

#

# chkconfig: 2345 08 92     //定义启动级别,以及start和kill顺序

# description:  Starts,stops and saves iptables firewall

#                   //定义文件描述符

#

[iyunv@lixin init.d]#

固定格式为:#chkconfig 234508 92
          #description:xxxxxx
其中chkconfig 2345 0892,分别表示启动级别、启动顺序、关闭顺序。
启动级别分为7中:
  • 0级别:表示关机
  • 1级别:表示单用户,一般用来做root密码修改等
  • 2级别:多用户但不包含NFS服务
  • 3级别:完整的多用户模式(命令行模式)
  • 4级别:保留未使用
  • 5级别:表示图形界面
  • 6级别:表示重启
  • 这些级别在/etc/inittab中有明确定义。


开机关闭顺序,是我们手工指定的,指定的时候最好去/etc/rc.d/rc3.d下查看,一般避免和其他服务重复数字,并且尽量保持在100以内。

  小结:我们执行chkconfig –level 3sshd on 时,它会在对应级别的启动目录下,产生一个以S开头的软连接用来指定这个服务的位置(在/etc/init.d/下)。如果 off掉,它会把之前的文件删掉,产生一个以K开头的软连接文件指定服务的位置。(K,Kill。S,Start
2)    精简开机启动服务
由于系统完毕后,基本所有的服务在2345级别都是打开的状态,为了优化服务,我们一般会选择性的开启那些我们必须的服务,规避一下安全隐患。
  • sshd服务:用来提供用户登录的服务。
  • crond服务:用来执行计划(定时)任务。
  • network服务:用来提供网络服务。
  • rsyslog服务:用来打印系统日志信息的服务。
  • sysstat服务:是一个软件包,包含监测系统性能及效率的一组工具包含:

    • iostat:提供CPU的使用率等数据
    • mpstat:提供单个或多个处理器的数据
    • sar:收集、报告存储系统的活跃信息


建议新系统只开启上述5个服务
3)    批量开关服务
方法1:因为所有服务默认是开启的,所以我们只需要关闭不需要的服务。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
[iyunv@lixin rc3.d]# chkconfig
abrt-ccpp      0:off  1:off   2:on    3:on   4:on    5:on    6:off
smartd        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
svnserve       0:off  1:off   2:on    3:on   4:on    5:on    6:off
sysstat        0:off  1:on    2:on    3:on   4:on    5:on    6:off
udev-post      0:off  1:on    2:on    3:on   4:on    5:on    6:off
……
[iyunv@lixin rc3.d]#
[iyunv@lixin rc3.d]# chkconfig |grep -Ev "sshd|crond|network|rsyslog|sysstat"
abrt-ccpp      0:off  1:off   2:on    3:on   4:on    5:on    6:off
restorecond    0:off  1:off   2:on    3:on   4:on    5:on    6:off
rngd          0:off  1:off   2:on    3:on   4:on    5:on    6:off
saslauthd      0:off  1:off   2:on    3:on   4:on    5:on    6:off
smartd         0:off  1:off   2:on    3:on   4:on    5:on    6:off
svnserve       0:off  1:off   2:on    3:on   4:on    5:on    6:off
udev-post      0:off  1:on    2:on    3:on   4:on    5:on    6:off
……    //筛选出除sshd,crond,network,sysstat,rsyslog以外的服务
[iyunv@lixin rc3.d]# chkconfig |grep -Ev "sshd|crond|network|rsyslog|sysstat" | awk '{print $1}'
lvm2-monitor
mdmonitor
messagebus
netconsole
netfs
nfs-rdma
ntpd
ntpdate
postfix
psacct
quota_nld
……   //利用awk用空格分隔把服务的名称取出
[iyunv@lixin rc3.d]# chkconfig |grep -Ev "sshd|crond|network|rsyslog|sysstat" | awk '{print"chkconfig",$1,"off"}'
chkconfig restorecond off
chkconfig rngd off
chkconfig saslauthd off
chkconfig smartd off
chkconfig svnserve off
chkconfig udev-post off
……      //利用awk的print参数拼出命令
[iyunv@lixin rc3.d]# chkconfig |grep -Ev "sshd|crond|network|rsyslog|sysstat" | awk '{print"chkconfig",$1,"off"}' |bash  //交给bash来执行
[iyunv@lixin rc3.d]# [root@lixinrc3.d]# chkconfig |grep -E 'crond|sshd|network|rsyslog|sysstat'
crond         0:off  1:off   2:on    3:on   4:on    5:on    6:off
network       0:off  1:off   2:on    3:on   4:on    5:on    6:off
rsyslog       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
sysstat       0:off  1:on    2:on    3:on   4:on    5:on    6:off
[iyunv@lixin rc3.d]#





方法二:首先关闭所有服务,然后只开启我们需要的五个服务
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
[iyunv@lixin rc3.d]# chkconfig |awk '{print $1}'
abrt-ccpp
abrtd
acpid
atd
sshd
svnserve
sysstat
……      //用awk过滤出服务名称
[iyunv@lixin rc3.d]# chkconfig |awk '{print "chkconfig",$1,"off"}'
chkconfig postfix off
chkconfig psacct off
chkconfig quota_nld off
chkconfig rdisc off
chkconfig rdma off
chkconfig restorecond off
chkconfig rngd off
……      //使用awk的print参数拼出命令
[iyunv@lixin rc3.d]# chkconfig | awk '{print"chkconfig",$1,"off"}'| bash       //关闭所有服务
[iyunv@lixin rc3.d]# chkconfig
abrt-ccpp     0:off  1:off   2:off   3:off  4:off   5:off   6:off
abrtd         0:off  1:off   2:off   3:off  4:off   5:off   6:off
acpid         0:off   1:off  2:off   3:off   4:off  5:off   6:off
atd           0:off  1:off   2:off   3:off  4:off   5:off   6:off
auditd        0:off  1:off   2:off   3:off  4:off   5:off   6:off
messagebus     0:off  1:off   2:off   3:off  4:off   5:off   6:off
netconsole     0:off  1:off   2:off   3:off  4:off   5:off   6:off
netfs         0:off  1:off   2:off   3:off  4:off   5:off   6:off
……
[iyunv@lixin rc3.d]# chkconfig--list|egrep "crond|sshd|network|rsyslog|sysstat"|awk '{print"chkconfig",$1,"on"}'|bash     //开启五个服务
[iyunv@lixin rc3.d]# chkconfig|grep -E 'crond|sshd|network|rsyslog|sysstat'  //验证
crond         0:off  1:off   2:on    3:on   4:on    5:on    6:off
network       0:off  1:off   2:on    3:on   4:on    5:on    6:off
rsyslog       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
sysstat       0:off  1:on    2:on    3:on   4:on    5:on    6:off
[iyunv@lixin rc3.d]#







运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-191880-1-1.html 上篇帖子: Multi-statement transaction required more than 'max_binlog_cache_size' bytes of 下篇帖子: linux下jdk等设置的作用和意义
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表