inittab 解析

Linux完成内核(Kernel)引导后,会由init初始化进程调用/etc/inittab配置文件(ps -aux | less,init进程号为始终为1,是所有系统进程的起点,init进程也有一个PID为0的父进程Kernel Scheduler,该进程用来分配CPU时间和进行进程间切换。)

/etc/inittab文件格式:id:run-levels:action:process,共包含4项,用冒号分隔,其中某些部份可以为空,各项详细解释如下:

id

标识符,一般为两位字母或数字,该标识符唯一,在配置文件中不能重复。

run-level

指定系统运行级,即执行登记项的init级别。用于指定相应的登记项适用于哪一个运行级,即在哪一个运行级中被处理。如果该字段为空,那么相应的登记项将适用于所有的运行级。在该字段中,可以同时指定一个或多个运行级,其中各运行级分别以数字0 1 2 3 4 5 6或字母a、b、c 表示,且无需对其进行分隔。

Linux有7个运行级,如下:

0-halt 关机,让init关闭所有进程并关机

1-Single user mode 单用户字符界面,通常又称为s或S

2-Multiuser,without NFS 不具备网络文件系统功能的多用户字符界面

3-Full multiuser mode 具备网络文件系统功能的多用户字符界面

4-unused 保留不用

5-X11 具备网络功能的图形用户界面

6-reboot 关闭所有运行的进程并重新启动系统

除此之外还有ABC三个运行级别,但在Linux都没有意义。

action

指定运行动作,用于指定init(M)命令或进程对相应进程(在“process”字段定义)所实施的动作,有以下几种:

行为 描述

respawn
 一旦第4项指定的process命令中止,便重新运行该命令。

wait

执行第4项指定的process,并等其结束后再运行其它命令。

once

执行第4项指定的process,不等待它执行完成,继续运行其它命令。

boot

不论在哪个执行等级,系统启动时都会运行第4项指定的process。

bootwait

不论在哪个执行等级,系统启动时都会运行第4项指定的process,且一直等它执行完备。

off

关闭任何动作,相当于忽略该配置行。

ondemand

进入ondemand执行等级时,执行第4项指定的process。

initdefault

系统启动后进入的执行等级,该行不需要指定process。

sysinit

不论在哪个执行等级,系统会在执行boot及bootwait之前执行第4项指定的process。

powerwait

当系统的供电不足时执行第4项指定的 process,且一直等它执行完毕。

powerokwait

当系统的供电恢复正常时执行第4项指定的process,且一直等它执行完毕。

powerfailnow

当系统的供电严重不足时执行第4项指定的process。

powerfail

当出现电源错误时执行第4项指定的process命令,不等待其结束。

ctrlaltdel

当用户按下【Ctrl+Alt+Del】时执行第4项指定的 process。

kbrequest

当用户按下特殊的组合键时执行第4项指定的process,此组合键需在keymaps文件定义。

process

指定要运行的Shell脚本/命令。

实现自动登录:

vi /etc/inittab

添加6a:2345:respawn:/sbin/mingetty tty10 --autologin xl

然后执行init q ,之后按ctrl+Alt+10,就可以看到xl自动登录了, 用exit退出后, 还会自动登录

时间: 2024-08-24 18:08:29

inittab 解析的相关文章

BusyBox init工作流程

linux启动完成后,运行由Busybox产生的init进程. init代码在BusyBox中init/init.c中,主要进行以下工作: >为init进程设置信号处理进程. >对控制台进行初始化. >解析inittab文件即/etc/inittab. >若无/etc/inittab,采用默认的inittab,运行初始化脚本/etc/init.d/rcS. >运行inittab中其他命令. -------------------------------------------

linux 命令解析2

基本命令  uname -a -s hostname显示主机名若是要永久生效,则编辑以下文件  #vim /etc/sysconfig/network    ssh远程登录#ssh 10.1.1.54 (是以root用户登录的)  #ssh [email protected](是以tom身份登录)  #ssh -Y 10.1.1.54(可以启动图形界面的远程登陆) scp远程拷贝  #scp 10.1.1.54:/etc/passwd /tmp/test(将目的地址10.1.1.54上的/etc

Linux01-企业核心技术之逻辑卷LVM深入解析和实战36

一.扩展逻辑卷 1.lvextend-L [+]# /PATH/TO/LV,[+]表示扩展到:#表示扩展至: a)扩展逻辑卷的风险较小,可在线扩展: 2.resize2fs:扩展到和物理边界一样大 a)命令格式:resize2fs -p /PATH/TO/LV 如:lvcreate -L 2G -n testlv myvg mke2fs -j /dev/myvg/testlv mkdir users mount /dev/myvg/testlv /users mount lvextend -L

解析Centos启动过程

第一步---加载BIOS 打开电源,系统会首先加载BIOS,BIOS会运行上电自检程序,对电脑的硬件设施进行完全彻底的检验和测试,检测完成后通过BIOS获取到与CPU.内存.硬盘.设备启动顺序等相关的信息. 第二步---读取MBR记录 硬盘上的0磁道的第一个扇区既是MBR,大小为512字节,存放着预启动信息.分区表信息,当系统读取到MBR记录,就会把MBR记录复制到0x7c00地址所在的物理内存之中,成为boot loader(在centos中就是grub). 第三步---加载boot load

linux引导流程解析

三:linux引导流程解析 date 当前系统硬件时钟 hwclock 固件(介于硬件和软件之间的)时钟 ---->一般系统时钟和固件时钟是同步的 hwclock --hctosys 同步时钟 手动修改系统当前时间: date 040617032015.38 (2015-04-06 17:03:38) 手动修改固件时间:(man hwclock可以查看) hwclock --set --date="4/6/15 17:06:40" linux的pc server 一般用的是 CM

【转】inittab文件

原文网址:http://blog.csdn.net/shuaishuai80/article/details/6202482 一.inittab文件背景(1)init进程的作用   使用uboot下载Linux内核时,环境变量bootargs决定了kernel向根文件系统传递的参数,这些参数包括      bootargs=noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0   <1>root:指定了根文件系统在Flash分区中

Centos6 init解析及chkconfig开机启动原理

init解析及chkconfig: init是Centos6系统的第一个进程,位于:/sbin/init 配置文件位于/etc/inittab:定义了系统启动的6个运行级别以及默认运行级别 # cat -n /etc/inittab   1# inittab is only used by upstart for the default runlevel.  2#  3# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SY

试题解析

第1章 基础知识及命令1.1 请详细描述ins系统从打开主机电源到进入登录界面整个过程的流程.*1. 开机自检(BIOS) MBR引导开机 GRBU菜单 加载内核 INIT进程 读取/etc/inittab 配置文件 执行/etc/rc.d/rc.sysconf 执行/etc./re.d/rc. 启动mingetty 进入登录界面* 1.2 我想在daoldboyedu目录下面创建个 oldboy 文件[[email protected] oldboyedu ~# cd /data/oldboy

inittab文件

一.inittab文件背景 (1)init进程的作用 使用uboot下载Linux内核时,环境变量bootargs决定了kernel向根文件系统传递的参数,这些参数包括 bootargs=noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0 root:指定了根文件系统在Flash分区中的位置 console:指定了内核启动后首选的控制台. init:指定了Linux内核启动完毕后调用的第一个.也是唯一的一个用户态进程,即进程号为1的