Chinaunix首页 | 论坛 | 博客
  • 博客访问: 235708
  • 博文数量: 82
  • 博客积分: 30
  • 博客等级: 民兵
  • 技术积分: 505
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-23 14:59
文章分类

全部博文(82)

文章存档

2015年(81)

2011年(1)

我的朋友

分类: 嵌入式

2015-01-29 13:38:48

BusyBox会检查/etc/inittab文件是否存在, 如果此文件不存在, BusyBox会使用缺省的inittab的配置。它主要会为系统重引
导,系统挂起以及init重启动设置缺省的动作。此外, 它还会为头四个虚拟控制台(/dev/tty1到/dev/tty4)设置启动shell的动作。
如果并未建立这些设备文件, BusyBox将会报错。
如果存在/etc/inittab文件, BusyBox会予以剖析, 并将其中的命令记录在内部的数据结构中, 以便适时执行。 BusyBox能
够识别的inittab文件格式, 在BusyBox套件附带的文档中有很好的说明。

inittab文件中的每一行的格式如下所示:
    id:runlevel:action:process
尽管此格式与传统的System V init类似, 但请注意,id在BusyBox的init中具有不同的意义。 对BusyBox而言, id用来指定
所启动进程的控制tty。如果所启动的进程并不是个可以交互的shell, 大可以将此字段空着不填。可以交互的shell, 例
如BusyBox的sh, 应该会有个控制tty。 如果控制tty不存在, BusyBox的sh将会报错。BusyBox将会完全忽略runlevel字段,
所以你可以将它空着不填。process字段用来指定执行程序的路径。包括命令行选项。action字段用来指定表6-6所列八个可应用到process的动作之一。

表6-6: BusyBox init能够识别的inittab动作类型
动作 结果
sysinit 为init提供初始化命令行的路径
respawn 每当相应的进程终止执行便重新启动
askfirst 类似respawn. 不过它的主要用途是减少系统上执行的终端应用程序的数量。它将会促使init在
控制台上显示:"Please press Enter to active this console."的信息, 并在重新启动进程之
前等待用户按下Enter键。
wait 告诉init必须等到相应的进程完成后才能继续执行
once 仅执行相应的进程一次,而且不会等待它完成。
ctrlaltdel 当按下Ctrl-Alt-Delete组合键时, 执行相应的进程。
shutdown 当系统关机时, 执行相应的进程
restart 当init重新启动时, 执行相应的进程。通常此处所执行的进程就是init本身。
阅读(951) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~