***了解Linux开机启动顺序之前先了解一下Linux运行级别,通过inittab配置文件查看运行级别的定义:

[root@oldboy ~]# cat /etc/inittab

# Default runlevel. The runlevels used are:

0表示系统关机

#   0 - halt (Do NOT set initdefault to this)

1表示单用户模式,一般用于修改root密码或系统救援

#   1 - Single user mode

2表示多用户模式,但没有NFS网络文件系统功能

#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)

3表示多用户模式,一般生产系统就用此级别

#   3 - Full multiuser mode

4表示未使用

#   4 – unused

5表示以图形介面登录

#   5 - X11

6表示重启系统

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

id:3:initdefault:    ##系统修改运行级加就在此修改即可

[root@oldboy ~]# runlevel    ##查看当前系统运行级别

N 3

[root@oldboy ~]# init 5       ##切换运行级别

Linux 开机启动顺序流程图:

一、开机加载BIOS自检设备启动顺序信息、硬盘信息、内存信息等

标注:以VMware WorkStation虚拟机截图

二、MBR引导

标注:还有另外一种开机加载方式GPT(UEFI+GPT)引导,GUID Partition Table全局唯一标识分区表

MBR(Legacy+MBR)引导,Master Boot Record即硬盘主引导记录分区 (硬盘0柱面、0磁头、1扇区,大小为512字节)

(1)、主引导扇区MBR  占446个字节

(2)、分区表DPT 占64个字节(一个硬盘只能分四个主分区,一个分区占用16个字节)

(3)、分区表有效性标记 占用2个字节

三、Boot Loader引导加载(以GRUB引导菜单为例),系统读取内存中的grub配置信息,

并依照此配置信息来启动不同的操作系统,可以通过/boot/grub/grub.conf进行配置

四、加载内核Kernel

五、启动第一个进程init

六、执行/etc/rc.d/rc.sysinit脚本文件初始化设置

七、读取inittab配置文件设定运行等级,执行/etc/rc.d/rc3.d目录相应的脚本程序

标注:kdump 是一个系统意外崩溃时收集错误信息的工具,可以关闭,不影响系统启动

八、启动mingetty进程,进入登录状态

标注:在启动mingetty进程时,系统会先执行/etc/rc/rc.local开机自动启用户自定义的动程序命令的文件

感谢老男孩博客提供参考  https://blog.51cto.com/oldboy

Linux 开机启动顺序_005的更多相关文章

  1. Linux开机启动顺序启动顺序及配置开机启动

    Linux:开机启动顺序启动顺序及配置开机启动 开机启动顺序 1.加载内核 2.启动 init(/etc/inittab) pid=1 3.系统初始化 /etc/rc.d/rc.sysinit 4.运 ...

  2. Linux系统的开机启动顺序

    Linux系统的开机启动顺序加载BIOS–>读取MBR–>Boot Loader–>加载内核–>用户层init一句inittab文件来设定系统运行的等级(一般3或者5,3是多用 ...

  3. linux 开机启动过程详解

    Linux开机执行内核后会启动init进程,该进程根据runlevel(如x)执行/etc/rcx.d/下的程序,其下的程序是符号链接,真正的程序放在/etc/init.d/下.开机启动的程序(服务等 ...

  4. linux开机启动

    开机过程指的是从打开计算机电源直到LINUX显示用户登录画面的全过程.分析LINUX开机过程也是深入了解LINUX核心工作原理的一个很好的途径. 启动第一步--加载BIOS 当你打开计算机电源,计算机 ...

  5. Linux开机启动程序详解

    Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. ...

  6. Linux开机启动程序详解[转]

    Linux开机启动程序详解 我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤 ...

  7. linux系统设置服务开机启动3种方法,Linux开机启动程序详解

    linux系统设置服务开机启动 方法1:.利用ntsysv伪图形进行设置,利用root登陆 终端命令下输入ntsysv 回车:如下图     方法2:利用命令行chkconfig命令进行设置 简要说明 ...

  8. LINUX开机启动过程

    LINUX开机启动过程 启动第一步--加载BIOS当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息 ...

  9. Linux开机启动十步骤

    启动第一步--加载BIOS 启动第二步--读取MBR 启动第三步--Boot Loader 启动第四步--加载内核 启动第五步--用户层init依据inittab文件来设定运行等级 启动第六步--in ...

随机推荐

  1. vue父页面给子页面传递数据

    父页面: <template> <div>{{msg}} <Son title='向子文件传递数据' :data='data' :lifemsg ='lifemsg' : ...

  2. PhotoshopCC 2017安装破解 + cuterman

    之前安装了PhotoshopCC 2017版本的软件,但是绿色版的(安装简介.使用方便).但是在随着Adobe公司对设计的不断追求和工具的不断更新,更加强大.更加优秀的设计插件和工具不断出新,最近朋友 ...

  3. BZOJ2808 : 那些年我们画格子

    若$\min(n,m)=1$,那么设$f[i][j][k]$表示考虑前$i$个格子,改变了$j$次颜色,$i$的颜色为$k$的方案数,直接转移即可. 否则$\min(n,m)\geq 2$,那么有解当 ...

  4. 3. Spring 核心之 IOC(控制反转) & DI(依赖注入)

    注:此文摘自 http://blog.csdn.net/it_man/article/details/4402245 IOC(DI):其实这个Spring架构核心的概念没有这么复杂,更不像有些书上描述 ...

  5. Java 多线程 创建线程的4种方式

    1 继承Thread类,重写run方法.Thread类实现了Runnable接口. 2 实现Runnable接口,重写run方法.相比于继承Thread类,可以避免单继承的缺陷和实现资源共享. 举例: ...

  6. Spring-context 实现Hello World

    Spring-context 实现Hello World 本文作为Spring入门笔记,用Spring-context实现控制台的hello world Spring简介 Spring是一个开放源代码 ...

  7. Vue(二十二)vuex小案例(官网计数案例整合)

    1.使用 vue-cli 创建项目(具体操作可以参考前面的文章) ... 2.下载 vuex - npm install vuex -S 3.将 vuex 添加到项目中 (1)在项目中创建store文 ...

  8. hdu1171 Big Event in HDU(多重背包)

    http://acm.hdu.edu.cn/showproblem.php?pid=1171 多重背包题目不难,但是有些点不能漏或错. #include<iostream> #includ ...

  9. flask之SQLAlchemy

    本篇导航: 介绍 使用 SQLAlchemy-Utils 一. 介绍 SQLAlchemy是一个基于Python实现的ORM框架.该框架建立在 DB API之上,使用关系对象映射进行数据库操作,简言之 ...

  10. C#保存文件为无BOM的utf8格式

    如图所示,发现用C#的 File.WriteAllLines 方法,无论怎么设置,最终生成的文件都是 PC utf8,也就是CRLF,用SVN进行提交的时候,显示左侧为utf8,右侧为utf8 BOM ...