`
dato0123
  • 浏览: 915383 次
文章分类
社区版块
存档分类
最新评论

剖析inittab文件

 
阅读更多

inittab文件时init进程读取的配置文件,本身不可执行,由若干条指令组成。文件描述在系统引导及通常的操作期间, 都启动哪些进程 (比如/etc/init.d/boot, /etc/init.d/rc, getty 等等)。
inittab 文件中的每一个条目有如下的格式:
id:runlevels:action:process
共四个字段,由冒号隔开,每个字段的意义和取值如下:

id:

inittab文件中条目的唯一标识, 限于 1-4 个字符 (如果是用版本号小于 5.2.18 或a.out 的库编译生成的 sysvinit程序, 则仅限于 2 个字符).
注意: 对于getty 或其它的注册进程, id 必须是响应的终端线路的 tty后缀, 如 1 响应
tty1, 否则, 注册过程不能正常的工作.

runlevels:

列出发生指定动作的运行级,可以取0至6.

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 系统引导期间执行此进程. 本进程会在boot 或bootwait 条目之前得到执

行. runlevels 域被忽略.

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

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

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

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

ctrlaltdel 在 init 收到 SIGINT 信号时执行此进程. 这意味着有人在控制台按下
了 CTRL-ALT-DEL 组合键, 典型地, 可能是想执行类似 shutdown 然

后进入单用户模式或重新引导机器.

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

process:

要执行的进程. 可以带参数,如果 process 域以一个‘+’开头, init 不会在utm和wtmp文件中为此进程记帐.

下面以RedHat9的inittab文件内容为例,做具体说明。

#

# inittab This file describes how the INIT process should set up

# the system in a certain run-level.

#

# Author: Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>

# 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 same as 3, if you do not have networking) //多用户模式,无NFS功能。

# 3 - Full multiuser mode //完整多用户模式

# 4 - unused

# 5 - X11 //完整多用户模式,启动X11

# 6 - reboot (Do NOT set initdefault to this) //重启

#

id:3:initdefault: //默认以3级别启动

# System initialization.

si::sysinit:/etc/rc.d/rc.sysinit //系统引导期间执行rc.sysinit,忽略启动级别

l0:0:wait:/etc/rc.d/rc 0 //以0级别启动时,用0参数执行rc

l1:1:wait:/etc/rc.d/rc 1

l2:2:wait:/etc/rc.d/rc 2

l3:3:wait:/etc/rc.d/rc 3

l4:4:wait:/etc/rc.d/rc 4

l5:5:wait:/etc/rc.d/rc 5

l6:6:wait:/etc/rc.d/rc 6

# Trap CTRL-ALT-DELETE

ca::ctrlaltdel:/sbin/shutdown -t3 -r now//系统启动时按下Ctrl+Alt+Delete时执行的程序

# 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 Failure; System Shutting Down"

# If power was restored before the shutdown kicked in, cancel it.

pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"

# Run gettys in standard runlevels //分配tty终端给虚拟控制台

1:2345:respawn:/sbin/mingetty tty1

2:2345:respawn:/sbin/mingetty tty2

3:2345:respawn:/sbin/mingetty tty3

4:2345:respawn:/sbin/mingetty tty4

5:2345:respawn:/sbin/mingetty tty5

6:2345:respawn:/sbin/mingetty tty6

# Run xdm in runlevel 5

x:5:respawn:/etc/X11/prefdm -nodaemon

分享到:
评论

相关推荐

    inittab文件的参数详解与用法举例

    改变/etc/inittab文件在有些情况下,需要增加、改变、列出、删除/etc/inittab文件中的记录。/etc/inittab文件定义了哪些进程在哪个系统运行级别里运行。 当运行init命令时,它将读取/etc/inittab文件。每一条记录...

    嵌入式linux启动运行的inittab简介

    linux 嵌入式 inittab文件简介 ,一些规则的设置等

    redhat /etc/inittab

    前不久在卸载oracle时不小心把/etc/inittab这个文件删了,找了半天没找到,最终不得不翻出安装盘把这个文件找出来,现在把文件提供给大家。

    嵌入式linux下inittab详解.docx

    嵌入式linux下inittab详解.docx

    Inittab初始化流程详解

    详细介绍了Inittab文件的内容和其初始化过程。对大家了解linux的开机启动流程还是比较有帮助的。

    如何配置Linux操作系统安全管理服务

    为Linux系统配置安全性时,使用/etc/inittab文件、runlevels和一两个服务管理“superdaemons”如inetd或xinetd直接管理服务。Inittab,/etc/inittab文件用于系统的初始化过程启动系统服务。在一个配置好的系统上,...

    linux文件系统电子书籍

    文件系统在操作系统中是一个非常重要的概念。简单地说,文件系统是操作系统中用于...3. 基本的系统配置文件,如 rc、inittab等脚本文件。 4. 必要的设备文件支持,如/dev/fd0。 5. 基本的应用程序,如 ls 、cp、mv

    Linux进程init主配置文件etcinittab的解析IT知识

    Linux进程init主配置文件etcinittab的解析IT知识

    关于Linux系统的配置与优化

    编辑/etc/inittab文件大部分Linux的发行套件都建立六个虚拟控制台,实际上三个已经足够,并且可以节省可贵的内存空间。只要编辑/etc/inputrc文件,设置INPUTRC的环境变量,利用Tab 键的命令补全功能,就可以实现类似...

    嵌入式linux文件系统启动脚本及分析 linuxrc init shell busybox 分析

    在内核初始化完成后,嵌入式linux 文件...2. 执行/etc/inittab 文件 3. 执行/etc/init.d/rcS 文件 4. 执行挂载文件系统脚本 5. 执行内核模块脚本 6. 执行网络初始化脚本 7. 执行应用程序启动等脚本,如qtopia 的启动

    Linux中ETC/Tnittab文件字段及其说明

    /etc/inittab文件中每个登记项的结构都是一样的,共分为以冒号“:”分隔的4个字段。具体如下: 本文将为大家介绍Linux中ETC/Tnittab文件字段及其说明。

    linux实验2_linux的关闭与启动

    一、实验目的 (1)掌握linux操作系统正确的启动与...6) 打开inittab文件,了解各有效行中每个域的含义,修改该文件中的相关行,比较它们之间的差异; 7) 使用常使用的几个关机命令以关闭系统并比较它们之间的差异。

    Linux应用技术:Linux启动过程.pptx

    读取配置文件/etc/inittab运行第一个进程init init进程是由Linux内核引导运行的,它是系统中运行的第一个进程,其进程号(PID)永远为“1”,是其它进程的父进程 在不同的运行级别,根据系统的设置启动相应的服务...

    文件系统知识点-制作根文件系统

    1.inittab表action说明; 2.嵌入式相关文件系统:autofs、cramfs、squashfs、JFFS2、YAFF2、ubifs、ramdisk、ramfs、tmpfs、procfs、sysfs; 3.windows文件系统:fat、FAT32、NTFS、EXT3、EXT4;

    oracle-10g

    1. 进入Linux图形化界面: ... 用户可以在安装后编辑/etc/inittab文件.把id:3:initdefault:中的3改为5,系统将直接被引导进入图形化登录界面.3代表文本界面,当然用户在文本提示符下输入startx命令也可以进入图形化界面.

    Redhat RHCE 考试排错强化训练

    Redhat RHCE 考试排错强化训练几种故障,包括但不止于: 一、grub.conf文件丢失 二、grub目录丢失 三、boot目录丢失 四、/etc/fstab 文件丢失 五、/etc/inittab 文件丢失 六、mount 文件被修改 七、综合实验

    Linux实验二

    2. 使用cat,more,less,head,tail命令显示/etc/inittab文件 实验二; 1. 新建目录/home/test 2. 使用pwd命令显示当前目录 3. 使用cd命令先转到/root目录再转到当前目录 4. 将/etc目录及其下所有内容复制到/home/test 5...

    Linux下如何安装Run文件格式NVIDIA显卡驱动

    开始安装首先修改/etc/inittab文件将: id:5:initdefault: 改为: id:3:initdefault: #vi /etc/inittab 然后重启电脑 系统进入字符模式并用root登录,随后运行NVIDIA-linux-x86-1.0-5336-pkg1.run # sh NVIDIA-linux-...

    Linux开机过程

    开机BIOS自检 MBR引导 grub引导菜单 加载内核kernel 启动init进程 读取inittab文件,执行rc.sysinit,rc等脚本 启动mingetty,进入登录界面

Global site tag (gtag.js) - Google Analytics