linux inittab 文件解析

上传人:第*** 文档编号:32687854 上传时间:2018-02-12 格式:DOC 页数:7 大小:45.50KB
返回 下载 相关 举报
linux inittab 文件解析_第1页
第1页 / 共7页
linux inittab 文件解析_第2页
第2页 / 共7页
linux inittab 文件解析_第3页
第3页 / 共7页
linux inittab 文件解析_第4页
第4页 / 共7页
linux inittab 文件解析_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《linux inittab 文件解析》由会员分享,可在线阅读,更多相关《linux inittab 文件解析(7页珍藏版)》请在金锄头文库上搜索。

1、linux etc/inittab 文件解析 来源: ChinaUnix博客 日期: 2007.08.30 14:08(共有 0条评论) 我要评论 第二部分:运行 initinit的进程号是 1,从这一点就能看出,init 进程是系统所有进程的起点,Linux在完成核内引导以后,就开始运行 init程序,。init程序需 要读取配置文件/etc/inittab。inittab 是一个不可执行的文本文件,它有若干行指令所组成。在 Redhat系统中,inittab 的内容 如下所示(以“#开始的中注释为笔者增加的):# inittab This file describes how the IN

2、IT process should set up# the system in a certain run-level.# Author: Miquel van Smoorenburg, # Modified for RHS Linux by Marc Ewing and Donnie Barnes# Default runlevel. The runlevels used by RHS are:# 0 - halt (Do NOT set initdefault to this)# 1 - Single user mode# 2 - Multiuser, without NFS (The s

3、ame as 3, if you do not havenetworking)# 3 - Full multiuser mode# 4 - unused# 5 - X11# 6 - reboot (Do NOT set initdefault to this)#/*理解 Runlevelrunlevel用来表示在 init进程结束之后的系统状态,在系统的硬件中没有固定的信息来表示 runlevel,它纯粹是一种软件结构。init 和 inittab是runlevel影响系统状态的唯一原因。在上述例子中 inittab文件起始阶段的注释主要用来描述 runlevel:Runlevel 0是让 i

4、nit关闭所有进程并终止系统。Runlevel 1是用来将系统转到单用户模式,单用户模式只能有系统管理员进入,在该模式下处理那些在有登录用户的情况下不能进行更改的文件,改 runlevel的编号 1也可以用 S代替。Runlevel 2是允许系统进入多用户的模式,但并不支持文件共享,这种模式很少应用。Runlevel 3是最常用的运行模式,主要用来提供真正的多用户模式,也是多数服务器的缺省模式。Runlevel 4一般不被系统使用,用户可以设计自己的系统状态并将其应用到runlevel 4阶段,尽管很少使用,但使用该系统可以实现一些特定的登录请求。Runlevel 5是将系统初始化为专用的 X

5、 Window终端。对功能强大的 Linux系统来说,这并不是好的选择,但用户如果需要这样,也可以通过在 runlevel启动来实现该方案。Runlevel 6是关闭所有运行的进程并重新启动系统。*/#表示当前缺省运行级别为 5(initdefault);id:5:initdefault: /*启动后进入图形界面,设为 3则进入字符终端界面*/#启动时自动执行/etc/rc.d/rc.sysinit 脚本(sysinit)/*在 inittab文件中以#开头的所有行都是注释行。注释行有助于用户理解inittab文件,inittab 文件中的值都是如下格式:label:runlevel:acti

6、on:processlabel是 14个字符的标签,用来标示输入的值。一些系统只支持 2个字符的标签。鉴于此原因,多数人都将标签字符的个数限制在 2个以内。该标签可以是任意字符构成的字符串,但实际上,某些特定的标签是常用的,在 Red Hat Linux中使用的标签是:代码:id 用来定义缺省的 init运行的级别si 是系统初始化的进程ln 其中的 n从 16,指明该进程可以使用的 runlevel的级别ud 是升级进程ca 指明当按下 Ctrl+Alt+Del时运行的进程pf 指当 UPS表明断电时运行的进程pr 是在系统真正关闭之前,UPS 发出电源恢复的信号时需要运行的进程x 是将系统

7、转入 X终端时需要运行的进程runlevel字段指定 runlevel的级别。可以指定多个 runlevel级别,也可以不为 runlevel字段指定特定的值。action字段定义了该进程应该运行在何种状态下:代码:boot 在系统启动时运行,忽略 runlevelbootwait 在系统启动时运行,init 等待进程完成。忽略 runlevelctrlaltdel 当 Ctrl+Alt+Del三个键同时按下时运行,把 SIGINT信号发送给init。忽略 runlevelinitdefault 不要执行这个进程,它用于设置默认 runlevelkbrequest 当 init从键盘中收到信号

8、时运行。这里要求键盘组合符合KeyBoardSigral(参见/usr/share/doc/kbd-*关于键盘组合的文档)off 禁止进入,因此该进程不运行once 每一个 runlevel级别运行一次ondemand 当系统指定特定的运行级别 A、B、C 时运行powerfail 当 init收到 SIGPWR信号时运行powerokwait 当收到 SIGPWD信号且/etc/文件中的电源状态包含 OK时运行powerwait 当收到 SIGPWD信号,并且 init等待进程结束时运行respawn 不管何时终止都重新启动进程sysinit 在运行 boot或 bootwait进程之前运行

9、wait 运行进程等待输入运行模式process字段包含 init执行的进程,该进程采用的格式与在命令行下运行该进程的格式一样,因此 process字段都以该进程的名字开头,紧跟着是 运行时,紧跟着是运行时要传递给该进程的参数。比如/sbin/shutdown -t3 -r now,该进程在按下 Ctrl+Alt+Del时执行,在命令行下也可以直接输入来重新启动系统。特殊目的的记录仔细学习例子文件,学习应用其中关于 inittab的语法格式。该文件的大多数内容都可以忽略,因为超过一半的内容都是注释,剩余的一些文件内容主要是用来实现某些特殊的功能:id 的值表明缺省的 runlevel是 3。u

10、d 的值可以唤醒/sbin/update 进程,该进程为保持磁盘的完整性,将在对磁盘进行 I/O操作之前清空整个 I/O缓冲区。pf、pr 和 ca的值只被特定的中断所调用。如果系统是专用的 X终端,则只需 x的输入值。getty进程来提供虚拟终端设备的服务,例如:3:2345:respawn:/sbin/mingetty tty3标签字段的值是 3,3是设备 tty3的数字后缀,tty3 与相应的进程相关联,该getty进程可以启动的 runlevel是 2、3、4 和 5,当该进程终 止时,init 马上就重新启动它。启动进程的路径名是/sbin/mingetty,该进程是实现虚拟终端支持

11、的最小版本的 getty,为 tty3提供启 动虚拟设备的进程。si:sysinit:/etc/rc.d/rc.sysinit该值告诉 init程序运行/etc/rc.d/rc.sysinit 脚本文件来初始化系统,该脚本文件与所有启动的脚本类似,它只是一个包含 Linux的 shell命令的可执行文件,注意输入的字符串必须包括该脚本的完整路径。不同版本的 Linux存放该脚本的位置也不相同,但不用刻意去记忆这些位置,只 需查看/etc/inittab文件即可,该文件中包含启动脚本文件的确切位置。*/# System initialization.si:sysinit:/etc/rc.d/rc

12、.sysinitl0:0:wait:/etc/rc.d/rc 0l1:1:wait:/etc/rc.d/rc 1l2:2:wait:/etc/rc.d/rc 2l3:3:wait:/etc/rc.d/rc 3l4:4:wait:/etc/rc.d/rc 4#当运行级别为 5时,以 5为参数运行/etc/rc.d/rc 脚本,init 将等待其返回(wait)l5:5:wait:/etc/rc.d/rc 5l6:6:wait:/etc/rc.d/rc 6#在启动过程中允许按 CTRL-ALT-DELETE重启系统# Trap CTRL-ALT-DELETEca:ctrlaltdel:/sbin/

13、shutdown -t3 -r now# When our UPS tells us power has failed, assume we have a few minutes# of power left.Schedule a shutdown for 2 minutes from now.# This does, of course, assume you have powerd installed and your# UPS connected and working correctly.pf:powerfail:/sbin/shutdown -f -h +2 Power Failur

14、e; System Shutting Down# If power was restored before the shutdown kicked in, cancel it.pr:12345:powerokwait:/sbin/shutdown -c Power Restored; Shutdown Cancelled#在 2、3、4、5 级别上以 ttyX为参数执行/sbin/mingetty 程序,打开ttyX终端用于用户登录,#如果进程退出则再次运行 mingetty程序(respawn)# Run gettys in standard runlevels1:2345:respawn:

15、/sbin/mingetty tty12:2345:respawn:/sbin/mingetty tty23:2345:respawn:/sbin/mingetty tty34:2345:respawn:/sbin/mingetty tty45:2345:respawn:/sbin/mingetty tty56:2345:respawn:/sbin/mingetty tty6#在 5级别上运行 xdm程序,提供 xdm图形方式登录界面,并在退出时重新执行(respawn)# Run xdm in runlevel 5x:5:respawn:/etc/X11/prefdm -nodaemon以上

16、面的 inittab文件为例,来说明一下 inittab的格式。其中以#开始的行是注释行,除了注释行之外,每一行都有以下格式:id:runlevel:action:process对上面各项的详细解释如下:1. idid 是指入口标识符,它是一个字符串,对于 getty或 mingetty等其他login程序项,要求 id与 tty的编号相同,否则 getty程序将不能正常工作。2. runlevelrunlevel 是 init所处于的运行级别的标识,一般使用 06 以及 S或s。0、1、6 运行级别被系统保留:其中 0作为 shutdown动作,1 作 为重启至单用户模式,6 为重启;S 和 s意义相同,表示单用户模式,且无需 inittab文件,因此也不在 inittab中出现,实际上,进入单用户模式 时,init 直接在控制台(/dev/console)上运行/sbin/sulogin。在一般的系统实现中,都

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 职业教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号