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退出后, 还会自动登录

inittab 解析的更多相关文章

  1. busybox中的inittab解析

    init进程是由内核启动的第一个(也是唯一一个)用户进程(进程ID为1),是所有进程的祖先.然后init进程根据配置文件决定启动哪些程序,init是后续所有进程的发起者. 用busybox制作的文件系 ...

  2. busybox启动流程简单解析:从init到shell login

    关键词:kernel_init().init.inittab.wait/waitpid.fork/vfork.setsid().execvp/execlp.dup2等等. 由于遇到一系列定制,从ini ...

  3. BusyBox init工作流程

    linux启动完成后,运行由Busybox产生的init进程. /sbin/init是系统启动的第一个用户进程,pid=1.init的工作是根据/etc/inittab脚本来进行系统的初始化工作,关机 ...

  4. busybox下inittab中runlevel解析

    Order of scripts run in /etc/rc?.d ================================== 0. Overview. All scripts execu ...

  5. linux系统初始化——inittab文件解析

    inittab文件解析 inittab配置文件每行的基本格式如下. id:runlevels:action:process 其中某些部分可以为空,下面我们逐一介绍. 1.id 1-2个字符,配置行的唯 ...

  6. Linux入门:运行级别解析

    Linux入门:运行级别解析   一.查看当前运行级别 Ubuntu中,runlevel命令 可以查看当前运行级别: CentOS中,who -r 命令查看当前运行级别:   www.2cto.com ...

  7. /etc/inittab文件详解

    /etc/inittab由/sbin/init程序解析调用,用于系统初始化,/sbin/init可参考源码busybox中init.c的实现方式. 原址如下: http://leejia.blog.5 ...

  8. rc.sysinit 解析

    $# :它可抓出 positional parameter 的數量,即脚本后面的参数有几个 $@和$*表示全部参数,但不包含脚本名,即$0,如果在command line上跑 my.sh p1 “p2 ...

  9. 内核启动文件系统后第一个执行的文件(inittab启动脚本分析)

    Linux 开机脚本启动顺序: 第一步:启动内核 第二步:执行init (配置文件/etc/inittab) 第三步:启动相应的脚本,执行inittab脚本,并且执行里面的脚本/etc/init.d ...

随机推荐

  1. [Axure RP] – 鼠标滑入按钮时自动下拉表单的设计示例

    转:http://blog.qdac.cc/?p=2197 Axure RP 是个好东东呀,大大方便了程序员与客户之间的前期调研时的交流.不过有一些控制并没有鼠标移入和移出的操作,比如 HTML 按钮 ...

  2. python测试开发django-48.xadmin上传图片django-stdimage

    前言 django通过自带的ImageField可以实现图片上传,如果想在列表页面也显示图片缩略图的话,可以用django-stdimage插件来实现 django-stdimage django-s ...

  3. Java中有哪些语法糖?

    不要你写汇编,Java句句是糖 不能同意上面的这句话,要说为什么,首先要定义下面要讲的“语法糖”. 语法糖指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,并没有给语言添加什么新东西,但是 ...

  4. c++中string类对象和字符数组之间的相互转换

    string类在c++中是一个模板类,位于名字空间std中,注意这里不是string.h,string.h是C字符串头文件. 将string类型转换为字符数组char arr[10];string s ...

  5. 如何将revit模型背景设置为黑色

    Revit软件建模窗口默认的背景色为白色,在用惯了CAD的新用户转到Revit软件的时候,会对Revit白色的背景不太适应,跟AutoCAD一样,Revit提供自定义工作区背景颜色的功能--其实,你只 ...

  6. eclipse Specified VM install not found: type Standard VM, name

    运行ant的时候出现 Specified VM install not found: type Standard VM, name.... 尝试删除这些文件: ... / .metadata / .p ...

  7. gcc下inline的一个问题

    今天发现一个问题,与inline有关,也与编译时候是不是优化有关. 大概问题可以用下面的代码来描述: 先写一个libtest1,代码如下 libtest1.h #ifndef LIBTEST_H #d ...

  8. PC端和移动端在前端开发上的一些区别,前端里移动端到底比pc端多哪些知识

    (1)———————— 前端里移动端到底比pc端多哪些知识,为啥面试时好多公司都问h5水平如何?我做过几年的web前端开发,就简单谈谈自己的感受吧.首先来看看PC端和移动端在前端开发上的一些区别: ( ...

  9. Linux 下hosts文件详解

    1.主机名: 无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号. 公网:IP地址不方便记忆,所以又有了域名.域名只是在公网( ...

  10. [Aaronyang] 写给自己的WPF4.5 笔记8[复杂数据处理三步曲,数据视图精讲1/3]

    真的好累了 ,笑了.做回自己吧       -------------      Aaronyang技术分享 www.ayjs.net 博文摘要: 详细介绍了WPF中视图的种类和开始学之前的准备工作 ...