详解Linux系统中的进程初始化配置文件inittab
/etc/ittab文件描述了哪些进程开始启动并正常运行。ittab为lux初始化文件系统时it初始化程序用到的配置文件。这个文件负责设置it初始化程序初始化脚本在哪里;每个运行级初始化时运行的命令; 开机、关机、重启对应的命令;各运行级登陆时所运行的命令。
ittab文件中的条目的格式如下:
label:runlevels:action:process 下面分别介绍各个字段
1.label
label 是一个独特的序列,确定了一个条目1 - 4字符,一些系统只支持2个字符的标签。对于getty或mgetty等其他log程序项,要求label与tty的编号相同,否则getty程序将不能正常工作。
常用标签有
id 用来定义缺省的it运行的级别
si 是系统初始化的进程
ln 其中的n从1~6,指明该进程可以使用的runlevel的级别
ud 是升级进程
ca 指明当按下Ctrl+Alt+Del时运行的进程
pf 指当UPS表明断电时运行的进程
pr 是在系统真正关闭之前,UPS发出电源恢复的信号时需要运行的进程
x 是将系统转入X终端时需要运行的进程
2.runlevels
runlevels 列出了运行级,指定应该采取的动作。可以指定多个runlevel级别,也可以不为runlevel字段指定特定的值。
runlevel 0是让it关闭所有进程并终止系统。
runlevel 1是用来将系统转到单用户模式,单用户模式只能有系统管理员进入,在该模式下处理那些在有登录用户的情况下不能进行更改的文件,改runlevel的编号1也可以用S代替。
runlevel 2是允许系统进入多用户的模式,但并不支持文件共享,这种模式很少应用。
runlevel 3是最常用的运行模式,主要用来提供真正的多用户模式,也是多数服务器的缺省模式。
runlevel 4一般不被系统使用,用户可以设计自己的系统状态并将其应用到runlevel 4阶段,尽管很少使用,但使用该系统可以实现一些特定的登录请求。
runlevel 5是将系统初始化为专用的X Wdow终端。对功能强大的Lux系统来说,这并不是好的选择,但用户如果需要这样,也可以通过在runlevel启动来实现该方案。
runlevel 6是关闭所有运行的进程并重新启动系统。
debian6以后默认没有运行/etc/ittab 文件 默认级别为2-5归为一类
3.action
action 字段定义了该进程应该运行在何种状态下,描述其后的process的运行方式的。
respawn 不管何时终止都重新启动进程
wait 运行进程等待输入运行模式 这个过程将会开始一次运行级别时指定输入和it将等待其终止
once 每一个runlevel级别运行一次 这个过程将执行一次当指定输入runlevel
boot 在系统启动时运行,忽略runlevel
bootwait 在系统启动时运行,it等待进程完成。忽略runlevel
ctrlaltdel 当Ctrl+Alt+Del三个键按下时运行,把SIGINT信号发送给it。忽略 runlevel
itdefault 不要执行这个进程,它用于设置默认runlevel
kbrequest 当it从键盘中收到信号时运行。这里要求键盘组合符合KeyBoardSigra
off 禁止进入,该进程不运行
once 每一个runlevel级别运行一次
ondemand 当系统指定特定的运行级别A、B、C时运行
powerfail 当it收到SIGPWR信号时运行
powerokwait 当收到SIGPWD信号且/etc/文件中的电源状态包含OK时运行
powerwait 当收到SIGPWD信号,并且it等待进程结束时运行
sysit 在运行boot或bootwait进程之前运行
4.process
process字段包含it执行的进程,该进程采用的格式与在命令行下运行该进程的格式一样,process字段都以该进程的名字开头,紧跟着是运行时要传递给该进程的参数。
复制代码
# /etc/ittab: it(8) configuration.
# $Id: ittab,v 1.91 2002/01/25 13:35:21 miquels Exp $
复制代码