Linux Run Level(运行级别)

查看Linux当前运行级别
runlevel
输出为(空格分开的两个字符) : [上一个运行级别,若无则为'N'] [当前运行级别]
运行级别(Run Level)指的是Unix-link系统下的不同运行模式.

许多程序需要开机启动,在windows叫做"服务service",在Linux叫做"守护进程daemon".
Linux为不同场合分配不同的开机启动程序,就叫做运行级别.



Linux的运行级别沿用Unix的习惯,具有7种运行级别(0-6).Linux其实可以支持10个运行级别,如何配置暂时无需了解.

Linux系统具有下面7种默认运行级别(※不同发行版不太一样):
运行级别
描述
0
关机,机器关闭
1
单用户模式
2
多用户,无网络连接
3
多用户,启动网络连接
4
用户自定义
5
多用户,具备图形界面
6
重启



/etc/inittab
Linux完成内核引导后,会由init初始化进程调用/etc/inittab文件,确定运行级别
图形化界面登录时,默认启动级别为3,第一行配置为
id:3:initdefault:
文本界面登录时,默认启动级别为5,第一行配置为
id:5:initdefault:
修改第一行配置为你想要的初始运行级别,重启后生效.
配置方法见资料④



在/etc/rc.d/目录下,是系统初始化相关的文件,如图
Linux Run Level(运行级别)_第1张图片

"rc"表示"run command运行程序".

其中init.d下包含了所有系统服务的启动脚本./etc/init.d其实是/etc/rc.d/init.d/的一个符号链接.
其中rcN.d(N表示0-6)这7个目录,分别包含不同运行级别下需要加载的程序的符号链接(链接到/etc/rc.d/init.d/下的服务),见下图.当系统启动时,通过rcN.d下的脚本文件来启动相应的服务.

rcN.d目录下的文件大概是这样的:
Linux Run Level(运行级别)_第2张图片

这些文件的文件名意义是:
['S'代表'Start启动服务' | 'K'代表'Kill关闭服务'][代表启动顺序的数字][服务名称]
※启动顺序的数字越小,就越早处理.
※'S'服务启动时,参数为'start'; 'K'服务启动时,参数为'stop'.
Linux Run Level(运行级别)_第3张图片
资料①-部分开机流程:参照运行级别,然后启动相应的服务



临时修改系统运行级别
init [runlevel]
runlevel的值为当前系统支持的运行级别(一般是0-6).
使用init 0 可以关机,相当于命令halt .
使用init 6 可以重启,相当于命令reboot .

※使用telinit[runlevel]也能够改变当前运行级别.有些资料说telinit和init是相同的,在我看来还是有点区别.看资料http://www-01.ibm.com/support/knowledgecenter/ssw_aix_71/com.ibm.aix.cmds5/telinit.htm?lang=zh



资料:
Linux的启动流程
http://www.ruanyifeng.com/blog/2013/08/linux_boot_process.html

Linux运行级别
http://blog.sina.com.cn/s/blog_60e3ebd80100dxfu.html

维基百科·运行级别
http://zh.wikipedia.org/zh/%E8%BF%90%E8%A1%8C%E7%BA%A7%E5%88%AB

[Linux笔记]Linux中inittab剖析
http://www.cnblogs.com/lyongde/p/3148497.html

Linux运行级别
http://www.litvip.com/257/
RH系的Linux,除0-6级别外,还有其他级别

你可能感兴趣的:(Linux)