http://www.cnblogs.com/lyongde/p/3148497.html

 

Linux完成内核(Kernel)引导后,会由init初始化进程调用/etc/inittab配置文件(ps -aux | less,init进程号为始终为1,是所有系统进程的起点,init进程也有一个PID为0的父进程Kernel Scheduler,该进程用来分配CPU时间和进行进程间切换。)

/etc/inittab文件格式:id:run-levels:action:process,共包含4项,用冒号分隔,其中某些部份可以为空,各项详细解释如下: 

id

标识符,一般为两位字母或数字,该标识符唯一,在配置文件中不能重复。

run-level

指定系统运行级,即执行登记项的init级别。用于指定相应的登记项适用于哪一个运行级,即在哪一个运行级中被处理。如果该字段为空,那么相应的登记项将适用于所有的运行级。在该字段中,可以同时指定一个或多个运行级,其中各运行级分别以数字0 1 2 3 4 5 6或字母a、b、c 表示,且无需对其进行分隔。

Linux有7个运行级,如下:

0-halt 关机,让init关闭所有进程并关机

1-Single user mode 单用户字符界面,通常又称为s或S

2-Multiuser,without NFS 不具备网络文件系统功能的多用户字符界面

3-Full multiuser mode 具备网络文件系统功能的多用户字符界面

4-unused 保留不用

5-X11 具备网络功能的图形用户界面

6-reboot 关闭所有运行的进程并重新启动系统

除此之外还有ABC三个运行级别,但在Linux都没有意义。

action

指定运行动作,用于指定init(M)命令或进程对相应进程(在“process”字段定义)所实施的动作,有以下几种:

行为描述

respawn

 一旦第4项指定的process命令中止,便重新运行该命令。

wait

执行第4项指定的process,并等其结束后再运行其它命令。

once

执行第4项指定的process,不等待它执行完成,继续运行其它命令。

boot

不论在哪个执行等级,系统启动时都会运行第4项指定的process。

bootwait

不论在哪个执行等级,系统启动时都会运行第4项指定的process,且一直等它执行完备。

off

关闭任何动作,相当于忽略该配置行。

ondemand

进入ondemand执行等级时,执行第4项指定的process。

initdefault

系统启动后进入的执行等级,该行不需要指定process。

sysinit

不论在哪个执行等级,系统会在执行boot及bootwait之前执行第4项指定的process。

powerwait

当系统的供电不足时执行第4项指定的 process,且一直等它执行完毕。

powerokwait

当系统的供电恢复正常时执行第4项指定的process,且一直等它执行完毕。

powerfailnow

当系统的供电严重不足时执行第4项指定的process。

powerfail

当出现电源错误时执行第4项指定的process命令,不等待其结束。

ctrlaltdel

当用户按下【Ctrl+Alt+Del】时执行第4项指定的 process。

kbrequest

当用户按下特殊的组合键时执行第4项指定的process,此组合键需在keymaps文件定义。

 process

指定要运行的Shell脚本/命令。