默认安装linux时,开启了很多的服务。但有许多服务是不需要的,为了系统的安全和稳定,可以结合自己的实际需要,关闭不用的服务。chkconfig命令主要用来启动、停止和查询系统服务的运行级别信息,chkconfig不是立即禁止或激活一个服务,它只是简单的改变了符号连接。
详细的信息可通过man来查看。下面是批量关闭一些服务的操作。
查看运行的服务
[root@zabbix ~]# chkconfig --list|grep "3:on"
下面是单独关闭ip6tables服务,off后面不填写,默认是关闭2.3.4.5
[root@zabbix ~]# chkconfig ip6tables off
[root@zabbix ~]# chkconfig --list ip6tables
下面命令取第一列,也就是列出服务的名称
[root@zabbix ~]#chkconfig --list|grep "3:on"|awk '{print$1}'
通过上面的操作,我们已经会查看当前开启的服务有哪此。现在我们结合服务器的的需要来关闭不必要的服务
方法一,先把所有服务都关闭,然后只开想要的服务
1.1关闭所有的服务,把3为on的全部关闭
[root@zdw ~]# for zdw in `chkconfig --list|grep "3:on"|awk ' {print $1}' `;do chkconfig $zdw off;done
1.2只启动以下crond|network|sshd|rsyslog四个服务
[root@zdw ~]# for zdw in crond network sshd rsyslog;do chkconfig $zdw on;done
[root@zdw~]# chkconfig --list|grep"3:on"
方法二,开启的服务,排除crond|network|sshd|rsyslog四个服务,其它全部关闭
2.1列出开启的以下四个服务
[root@zdw~]# chkconfig --list|grep"3:on"|awk '{print $1}'|grep -vE"crond|network|sshd|rsyslog"
2.2排除crond|network|sshd|rsyslog四个服务,其它全部关闭
[root@zdw~]# for zdw in `chkconfig --list|grep "3:on"|awk'{print $1}'|grep -vE "crond|network|sshd|rsyslog"`;do chkconfig $zdwoff;done
[root@zdw~]# chkconfig --list|grep "3:on"