***了解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. STM32点亮闪烁LED灯

    详解请看其他博客: http://www.cnblogs.com/whik/p/6672730.html http://www.51hei.com/bbs/dpj-38605-1.html /*本程序 ...

  2. 写一个简单的JQ插件(例子)

    虽然现在 vue angular react 当道啊但是那 JQ还是有一席之地很多很多的小单位啊.其实还会用到 我也放一个例子吧虽然我也不是很肯定有没有人写的比我更好啊但是我相信 我这个还是蛮实用的 ...

  3. 轻松掌握Redux-Action使用方法

    轻松掌握Redux-Action使用方法 Redux-Action主要有两个方法,createAction和createAction,只要掌握了这两个方法就会了redux-action的使用. cre ...

  4. 01-HTML

    **今日任务** 网站信息页面案例 网站图片信息页面案例 网站友情链接页面案例 网站首页案例 网站注册页面案例 网站后台页面案例 教学导航 - 了解什么是标记语言 - 了解HTML主要特性,主要变化以 ...

  5. JS_高程5.引用类型(2)Array类型

    Array类型: ECMAScript数组的每一项可以保存任何类型的数据,数组的大小是可以动态调整的. 创建数组的基本方式: (1)使用Array构造函数 var color=new Array(); ...

  6. 使用 OpenSessionInViewFilter 配置加载

    1.使用 OpenSessionInViewFilter

  7. Linux内存管理学习资料

    下面是Linux内存管理学习的一些资料. 博客 mlock() and mlockall() system calls. All about Linux swap space 逆向映射的演进 Linu ...

  8. 加速Android Studio编译速度

    一.修改运行内存 进入项目,菜单栏-help-Edit Custom VM Option   Paste_Image.png 添加或修改为: -Xms2048m -Xmx2048m -XX:MaxPe ...

  9. getParameter() getInputStream()和getReader() 区别 这三种方法是有冲突的,因为流只能被读一次。

    我们经常用servlet和jsp, 经常用request.getParameter() 来得到数据. request.getParameter()request.getInputStream()req ...

  10. windows10创建ftp服务器

    1.创建用户 2.创建FTP服务 3.开通防火墙服务 建立端口21,20入站规则 4.访问测试