前言:
ubuntu12.04没有etc/inittab目录,它采用新的系统启动初始化机制upstart而不是之前的system V initialization机制
Linux系统有8个运行级别(runlevel) |
-
运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS)
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
运行等级S,s 单用户工作状态(单用户工作状态)
-
多数的桌面的linux系统缺省的runlevel是5,用户登陆时是图形界面,而多数的服务器版本的linux系统缺省的runlevel是3,用户登陆时是字符界面,runlevel 1和2除了调试之外很少使用,runlevel s和S并不是直接给用户使用,而是用来为Single user mode作准备。
run level相关操作(root用户) |
- 查看系统运行级别
终端输入runlevel
- 切换系统运行级别
方式1:终端输入init 0/1···/6/S,s(系统运行级别号)
方式2:终端输入telinit 0/1··/6/S,s(系统运行级别号)
与初始化运行级别有关的文件 |
- 1、/etc/init
- rc.conf rc-sysinit.conf rcS.conf
- 2./etc/init.d
- rc rc.locl
- 3./etc
- rcN.d(N=0,1···6,S)
- 在/etc下有7个名为rcN.d的目录,对应系统的7个运行级别,rcN.d目录下都是一些符号链接文件,这些链接文件都指向init.d目录下的service脚本文件,命名规则为K+nn+服务名或S+nn+服务名,其中nn为两位数字。
- 对于以K(kill)开头的文件,系统将终止对应的服务
- 对于以S(start)开头的文件,系统将启动对应的服务
系统初始化过程 |
1.内核启动init
2.init找到/etc/init/rc-sysinit.conf文件,确定默认的runlevel
3.运行/etc/init.d/rc
4.运行相应的/etc/rcN.d中的脚本
5./etc/rcN.d/中的脚本按设定的优先级依次启动,运行/etc/init.d/下的相应脚本