运行级别简单的理解就是规定系统上自动运行什么服务,禁止运行什么服务。对应windows下的services.msc。不过windows下只有一个级别。
一、redhat
1.对于运行级别的说明可以通过命令
#cat /etc/inittab
查看。也可以通过这个文件修改系统默认启动运行级别。
2.查看当前运行级别命令
#runlevel
结果:
N 5
N表示上一次的运行级别,5表示当前运行级别。
3.切换运行级别命令
#init <运行级别>
表示切换至运行级别5,此时runlevel查看结果为
5 3
4.各个运行级别的所运行的脚本分别在
/etc/rc0.d
/etc/rc1.d
/etc/rc2.d
……
脚本以K头的表示停止服务,以S开头表示启动服务。后接停止/启动顺序号和脚本名
如K20nginx表示在第20位杀死nginx服务,S55sshd表示第50位启动ssh服务。
5.所有的服务都位于/etc/rc.d/init.d下,/etc/rc.d/init.d 和 /etc/rc.d/init.d是一样的。
6.启动/停止/重启服务命令
#service <服务名> <start|stop|restart>
或者
#/etc/init.d <服务名> <start|stop|restart>
7.配置服务自动启动命令
1.将相应的自动的文件放到/etc/init.d下,增加其可执行权限
2.添加服务
ubuntu
update-rc.d 服务名 defauts
删除用 update-rc.d -f 服务名 remove
redhat
#chkconfig --level 35 sshd on
表示在运行级别3和5自动启动ssh服务,关闭自动启动将对应级别的改成off即可。
删除用chkconfig --del 服务名
8.查看服务在哪些级别上自动运行命令
#chkconfig --list <服务名>
二、ubuntu下没有/etc/inittab和/etc/rc.d/init.d,ssh对应的服务名是ssh而不是sshd,你还费解吗?