jammy (5) inittab.5.gz

Provided by: manpages-zh_1.6.3.6-1_all bug

NAME

       inittab - 与 sysv 兼容的 init 进程使用的初始化文件格式

描述

       inittab 文件描述在系统引导及通常的操作期间, 都启动哪些进程 (比如  /etc/init.d/boot, /etc/init.d/rc, getty
       等等).  Init(8) 讨论有关 runlevels (运行级) 的概念, 每一个  运行级都有它自己启动进程的集合.  有效的运行级
       为 0-6 加上用于 ondemand 条目 的 A, BC.  inittab 文件中的每一个条目有如下的格式:

              id:runlevels:action:process

       以 `#' 开头的行被忽略.

       id     inittab  文件中条目的唯一标识,  限于 1-4 个字符 (如果是用版本号小于 5.2.18 或 a.out 的库编译生成的
              sysvinit 程序, 则仅限于 2 个字符).

              注意: 对于 getty 或其它的注册进程, id 必须是 响应的终端线路的 tty 后缀, 如 1 响应 tty1, 否则, 注册
              过程不能正常的工作.

       runlevels
              列出发生指定动作的运行级.

       action 描述要发生的动作.

       process
              要执行的进程. 如果 process 域以一个 `+' 开头, init 不会在 utmp 和 wtmp 文件中为此进程记帐.  这是由
              于 getty 自己主持 utmp/wtmp 记帐的需要, 同时这也是一个历史遗留的漏洞.

       runlevels 域可以包含表示不同运行级的多 个字符, 例如 123 表示本进程在运行级为 1, 2 和 3 时都要启动.   用于
       ondemand  条目的 runlevels 域可以 包含 A, B, 或 C.  用于 sysinit, boot, 和 bootwait 条目的 runlevels 域被
       忽略.

       当改变运行级时, 在新运行级中没有给出的那些正在 运行的进程被杀死, 先使用 SIGTERM 信号, 然后是 SIGKILL.

       action 域可以使用的动作有:

       respawn
              该进程只要终止就立即重新启动 (如  getty).

       wait   只要进入指定的运行级就启动本进程, 并且 init 等待该进程的结束.

       once   只要进入指定的运行级就启动一次本进程.

       boot   在系统引导期间执行本进程. runlevels 域被忽略.

       bootwait
              在系统引导期间执行本进程. 并且 init 等待该进程的结束 (如  /etc/rc).  runlevels 域被忽略.

       off    什么也不做.

       ondemand
              在进入 ondemand  运行级时才会执行  标记为  ondemand  的那些进程.   无论怎样,  实际上没有改变运行级
              (ondemand 运行级就是 `a', `b', 和 `c').

       initdefault
              initdefault 条目给出系统引导 完成后进入的运行级, 如果不存在这样的条目, init 就会在控制台询问要进入
              的运行级.  process 域被忽略.

       sysinit
              系统引导期间执行此进程. 本进程会在 bootbootwait 条目之前得到执行.  runlevels 域被忽略.

       powerwait
              本进程在电源不足时执行.  通常在有进程把 UPS 和计算机相连时 通知 init 进程, Init 在继续其它工作  之
              前要等待此进程结束.

       powerfail
              类似 powerwait, 但是init 不等待 此进程完成.

       powerokwaitinit 收到电源已经恢复的通知后 立即执行此进程.

       powerfailnow
              本进程在  init 被告知 UPS 电源快耗尽 同时外部电源失败 (无效) 时被执行.  (假设 UPS 和监视进程能够发
              现这样的情况).

       ctrlaltdelinit 收到 SIGINT 信号时执行此进程.  这意味着有人在控制台按下了 CTRL-ALT-DEL 组合键, 典型地,  可
              能是想执行类似 shutdown 然后进入单用户模式或 重新引导机器.

       kbrequest
              本进程在 init 收到一个从控制台 键盘产生的特殊组合按键信号时执行.

              对于此功能本文档尚未完成; 可以在 kbd-x.xx 包中 找到更多信息 (在写作本文档时最新的是 kbd-0.94).  当
              然你可能想为某些 "KeyboardSignal" 行为 映射组合键, 如为了映射 (Alt-上箭头) 可以在键盘映射文件中 使
              用如下的方式:

              alt keycode 103 = KeyboardSignal

举例

       这是一个与老的 Linux inittab 文件类似的例子文件:

              # inittab for linux
              id:1:initdefault:
              rc::bootwait:/etc/rc
              1:1:respawn:/etc/getty 9600 tty1
              2:1:respawn:/etc/getty 9600 tty2
              3:1:respawn:/etc/getty 9600 tty3
              4:1:respawn:/etc/getty 9600 tty4

       本文件在引导时执行 /etc/rc 并且在 ty1-tty4 上启动 getty 进程.

       一个更详尽的 inittab 会有不同的运行级 (参考本身的注释):

              # 进入默认的运行级
              id:2:initdefault:

              # 在进行其它工作之前先完成系统初始化.
              si::sysinit:/etc/rc.d/bcheckrc

              # 运行级 0 挂起系统, 6 重新引导, 1 单用户模式.
              l0:0:wait:/etc/rc.d/rc.halt
              l1:1:wait:/etc/rc.d/rc.single
              l2:2345:wait:/etc/rc.d/rc.multi
              l6:6:wait:/etc/rc.d/rc.reboot

              # "3 个键" 按下时要做的工作.
              ca::ctrlaltdel:/sbin/shutdown -t5 -rf now

              # 运行级2和3: 在控制台生成 getty 进程, 运行级为3时在 modem 上生成 getty.
              1:23:respawn:/sbin/getty tty1 VC linux
              2:23:respawn:/sbin/getty tty2 VC linux
              3:23:respawn:/sbin/getty tty3 VC linux
              4:23:respawn:/sbin/getty tty4 VC linux
              S2:3:respawn:/sbin/uugetty ttyS2 M19200

文件

       /etc/inittab

作者

       Init    由   Miquel   van   Smoorenburg   (miquels@cistron.nl)   所写.   本手册页由   Sebastian   Lederer
       (lederer@francium.informatik.uni-bonn.de)  所写,   由   Michael   Haardt   (u31b3hs@pool.informatik.rwth-
       aachen.de) 修改.

参考

       init(8), telinit(8)

中文版维护人

       Yin Huaming <yhmact@pzh-public.sc.cninfo.net>

中文版最新更新

       2002年7月13日

中国 Linux 论坛 man 手册页翻译计划

       http://cmpp.linuxforum.net

       本页面中文版由中文 man 手册页计划提供。
       中文 man 手册页计划:https://github.com/man-pages-zh/manpages-zh

                                                  May 19, 1998                                        INITTAB(5)