根文件系统/etc下 inittab

来源:互联网 发布:海量数据存储 与读取 编辑:程序博客网 时间:2024/05/17 22:48

根文件系统/etc下 inittab


/etc 目录存放的是系统程序的主配置文件,因此需要哪些配置文件取决于要运行哪些系统程序。即使最小的系统也一定会运行1号用户进程init,所以我们至少要手 工编写init的主配置文件inittab。busybox的inittab文件的语法、语义与传统的SYSV的inittab有所不同。

inittab 文件中每个条目用来定义一个需要init启动的子进程,并确定它的启动方式,格式 为<id>:<runlevel>:<action>:<process>。例 如:ttySAC0::askfirst:-/bin/sh

  • <id>表示子进程要使用的控制台,若省略则使用与init进程一样的控制台
  • <runlevel>表示运行级别,busybox init程序这个字段没有意义
  • <action>表示init进程如何控制这个子进程
    • sysinit:系统启动后最先执行,只执行一次,init进程等待它结束后才继续执行其它动作
    • wait:系统执行完sysinit条目后执行,只执行一次,init进程等待它结束后才继续执行其它动作
    • once:系统执行完wait条目后执行,只执行一次,init进程不等待它结束
    • respawn:启动完once进程后,init进程监测发现子进程退出时,重新启动它
    • askfirst:启动完respawn进程后,与respawn类似,不过init进程先输出” Please press Enter to activate this console“,等用户输入回车后才启动子进程
    • shutdown:当系统关机时
    • restart:Busybox中配置了CONFIG_FEATURE_USE_INITAB,并且init进程接收到SIGUP信号时执行,先重新读取、解析/etc/inittab文件,再执行restart程序
    • ctrlaltdel:按下ctrl+alt+del键时执行,不过在串口控制台中无法输入它
  • <process>表示进程对应的二进制文件。如果前面有-号,表示该程序是“可以与用户进行交互的”

我们制作最简单的/etc/inittab文件,其内容如下:

::sysinit:/etc/init.d/rcS
::askfirst:-/bin/sh
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -a –r


0 0
原创粉丝点击