内核初始化后,启动init进程/sbin/init,读取/etc/inittab文件进行初始化。

参考链接

http://wenku.baidu.com/view/5a82b5f67c1cfad6195fa76f.html

http://www.linux178.com/linux/inittab.html

http://www.mask.org.tw/old/favorite/linux/inittab.html

http://leejia.blog.51cto.com/4356849/788895

inittab格式

inittab中每行的格式:

id:runlevels:action:process

id

标识符,不能重复。

runlevels

表示运行级别。共六个级别。如果不填表示所有级别。例如2345,表示在级别是2,3,4,5的时候才会执行。

  • 0:表示关机
  • 1:表示单用户模式,在这个模式中,用户登录不需要密码,默认网卡驱动是不被加载,一些服务不能用。
  • 2:表示多用户模式,NFS服务不开启
  • 3,表示命令行模式
  • 4,这个模式保留未用
  • 5,表示图形用户模式
  • 6,表示重启系统

action

表示采取的动作。

  • sysinit: 表示系统启动。

  • respawn: 表示process结束后会重新启动。

  • ctrlaltdel: 表示键盘输入组合件ctrl+alt+del的动作。

  • initdefalt: 设置默认的运行级别。

  • askfirst: 运行程序之前会先询问,输出“Please press Enter to active this console"

  • wait: 等相应的进程完成才继续执行。

process

表示要运行的程序。

例如

id:3:initdefault:
# 设置默认的运行级别。 ttymxc0::once:/bin/login root
# id为ttymxc0表示imx6的串口0,
# levels为空,表示所有的级别都执行。
# once表示只执行一次,如果退出了就不会再次执行。
# /bin/login表示运行的程序,root是传给/bin/login的参数

Tony Liu

2016-12-11, Shenzhen

inittab 分析的更多相关文章

  1. 第4阶段——制作根文件系统之分析init进程(2)

    本节目标: (1) 了解busybox(init进程和命令都放在busybox中) (2) 创建SI工程,分析busybox源码来知道init进程做了哪些事情 (3)  分析busybox中init进 ...

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

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

  3. ubuntu为什么没有/etc/inittab文件? 深究ubuntu的启动流程分析

    Linux 内核启动 init ,init进程ID是1,是所有进程的父进程,所有进程由它控制. Ubuntu 的启动由upstart控制,自9.10后不再使用/etc/event.d目录的配置文件,改 ...

  4. Linux之RHEL6的开机流程分析

    开机——很多人觉得很简单的事情,只要按下电源开关,然后系统就会自然启动,没有什么需要学习的.其实不然,如果系统没有什么问题,可以正常登陆的时候,当然开机很简单.但更多的时候,我们需要知道当机子不能正常 ...

  5. Linux学习 :Uboot, Kernel, 根文件系统初步分析

    1.U-Boot启动内核的过程可以分为两个阶段: 1)第一阶段的功能 硬件设备初始化 加载U-Boot第二阶段代码到RAM空间 设置好栈 跳转到第二阶段代码入口 2)第二阶段的功能 初始化本阶段使用的 ...

  6. linux 文件系统sysvinit 流程分析

    参考网上许多的教程. 然后有一下相关的笔记: kernel 在挂载完文件系统后,会执行第一个进程init 这个进程的PID为1 这个进程是所有进程的父进程 init 进程,首先要去读取inittab中 ...

  7. busybox rootfs 启动脚本分析(一)

    imx6文件系统启动脚本分析.开机运行/sbin/init,读取/etc/inittab文件,进行初始化. 参考链接 http://blog.163.com/wghbeyond@126/blog/st ...

  8. 转:嵌入式linux启动时运行的inittab文件

    嵌入式系统下的linux启动配置文件,不同与普通的PC linux启动配置,启动相关文件与文件的内容也要少得多.嵌入式系统下的linux启动过程一般是:     1 在bootloader中制定各种要 ...

  9. linux串口驱动分析

    linux串口驱动分析 硬件资源及描写叙述 s3c2440A 通用异步接收器和发送器(UART)提供了三个独立的异步串行 I/O(SIO)port,每一个port都能够在中断模式或 DMA 模式下操作 ...

随机推荐

  1. BZOJ3740 : pku2842 N-dimension Matching N维匹配

    做$n$次递推求出$n$维Hash值即可,时间复杂度$O(nk)$. #include<cstdio> #define N 500010 int n,i,j,t,delta,ca,cb,a ...

  2. POJ 3061 (二分+前缀和or尺取法)

    题目链接: http://poj.org/problem?id=3061 题目大意:找到最短的序列长度,使得序列元素和大于S. 解题思路: 两种思路. 一种是二分+前缀和.复杂度O(nlogn).有点 ...

  3. Android 魅族等SmartBar适配

    通过反射获取是否含有SmartBar: /** * 判断是否有SmartBar */ private boolean hasSmartBar() { // SP存储是否显示SmartBar if (! ...

  4. android service 如何弹出dialog

    在service中弹出toast,需要使用handler, handler.post(new Runnable() { @Override public void run() { Toast.make ...

  5. Android js相互调用

    一.webview相当于android中的浏览器,基于webkit开发,可以浏览网页文件,支持css javas cript 以及html webview.getSettings().setJavaS ...

  6. 洛谷 P1341 无序字母对 Label:欧拉路 一笔画

    题目描述 给定n个各不相同的无序字母对(区分大小写,无序即字母对中的两个字母可以位置颠倒).请构造一个有n+1个字母的字符串使得每个字母对都在这个字符串中出现. 输入输出格式 输入格式: 第一行输入一 ...

  7. jQueryUI日期显示

    <script type="text/javascript" src="js/My97DatePicker/WdatePicker.js">< ...

  8. display: block; -webkit-margin-before: 1em; -webkit-margin-after: 1em; -webkit-margin-start: 0px; -webkit-margin-end: 0px;

    总的来说:这是CSS3.0的对于文章段P容器的定义方法语句! display:block这个样式,只定义了P容器为一个块; 后面四句是CSS3中的样式定义方法: -webkit-margin-befo ...

  9. JavaScript进阶(三)之对象

    返回星期方法 getDay() 返回星期,返回的是0-6的数字,0 表示星期天.如果要返回相对应“星期”,通过数组完成,代码如下: <script type="text/javascr ...

  10. The beatles-Yesterday

    轉載自https://www.youtube.com/watch?v=XNnaxGFO18o Yesterday Lyrics:Paul Mccartney Music:Paul Mccartney ...