标签:etc 启动 sshd 目录 服务 cut mic 名称 接口
#!/bin/bash SysVer=`cat /etc/redhat-release | awk -F‘release‘ ‘{print $2}‘ | awk -F‘[ .]+‘ ‘{print $2}‘` if [ ! $SysVer -eq 6 ] then echo "This script is only applicable to centos6.x version system" exit 110 fi echo -e "\033[46;34;5m[ This script only opens services that have ]\033[0m" echo "crond | irqbalance | microcode_ctl | messagebus | network | sshd | rsyslog | local" echo "" # read -p "请输入其他需要开放的服务:" SerV for i in `ls /etc/rc3.d/S*` do CURSRV=`echo $i|cut -c 15-` echo $CURSRV case $CURSRV in crond | irqbalance | microcode_ctl | messagebus | network | sshd | rsyslog | local ) echo -e "\033[46;34;5m[ Base services, Skip... ]\033[0m" ;; # $SerV ) # echo -e "\033[46;34;5m[ Base services, Skip... ]\033[0m" # ;; *) echo "change $CURSRV to off" chkconfig --level 2345 $CURSRV off service $CURSRV stop ;; esac done
官方解析:/etc目录下通常有rc0.d-rc6.d目录,里面对应包含了从init0-init6不同运行级所要启动的命令,rc.d目录下有8个目录和3个文件,其中目录为rc0.d-rc6.d,分别代表了各个run-level的脚本,目录中文件名称均以S及K开头,后接两位数字与该服务名称,这些文件都是link文件,指向/etc/rc.d/init.d目录。在rc3.d目录中,以S开头的文件为执行该服务,以K开头的文件则是杀掉该服务的意思。数字代表启动顺序。
白话解析:在此目录下带K的表示停止(Kill)一个服务,S表示开启(Start)的意思。后面的数字它的作用是用来排序,就是决定这些脚本执行的顺序,数值小的先执行,数值大的后执行。很多时候这些执行顺序是很重要的,比如要启动Apache服务,就必须先配置网络接口,不然一个没有IP的机子来启动http服务那岂不是有BUG。同一个服务带S的和带K的链接到init.d之后是同一个脚本。S给和K还分别给init.d下面的脚本传递了start和stop的参数。原来传S时相当于执行了/etc/rc.d/init.d/xxx start这条命令,当然K就相当于/etc/rc.d/init.d/xxx stop了。
标签:etc 启动 sshd 目录 服务 cut mic 名称 接口
原文地址:https://www.cnblogs.com/LuckWJL/p/10137952.html