red hat 7 启动过程(EFI)
不同版本的Linux系统的启动过程在某些地方是不一样的,现在先来介绍一下red hat 7 的启动过程(EFI)。
(加电→图形登录界面)
- 接通电源
- 按下电源键
- EFI固件启动
- 初始化硬件
- 从EFI启动配置表
- 根据配置表,在硬盘的EFI系统分区上找到GRUB
- 启动GRUB
- 读取启动分区内的GRUB.cfg
- 确认要加载的操作系统
- 显示画面,等待用户选择操作系统或等待超时后进入默认的操作系统
- 读取启动分区内所选操作系统的内核并加载到内存上
- 初始化内存盘到内存
- GRUB跳转到内存中的内核的启动地址(启动入口)
- 将控制权交于内核
- 内核初始化
- 内核执行自解压操作,将完整内核释放到内存
- 完成后初始化硬件
- 挂在内存中的初始化内存盘
- 启动初始化内存盘中的初始化管理程序(systemd)
- 加载初始化内存盘中存放的内核模块
- 初始化内存盘中的UDEV硬件管理程序
- 根据内核命令行所指定的信息,由UDEV确定启动设备,搜索根目录
- 只读挂载根目录
- 读取目标根目录的fstab,生成systemd设备的配置文件,并通知UDEV确定具体设备
- UDEV等待内核通知设备上线
- systemd等待UDEV设备上线
- systemd根据配置决定是否检查设备上的文件系统
- 挂载设备到fstab指定位置
- 1号进程systemd chroot exec到新根下的目标init(systemd)
- 目标系统systemd启动系统基本服务(single.target)
- 启动多用户模式和网络服务
- 其中启动用户登录管理服务,此服务负责加载用户登录所需要的必须服务,例如:本地控制台登录、图形登录服务程序
- 图形登录界面加载成功,用户可以登录系统
red hat 7 启动过程(EFI)的更多相关文章
- 分享red hat linux 6上安装oracle11g时遇到的gcc: error trying to exec 'cc1': execvp: No such file or directory的问题处理过程
安装环境:Red Hat Linux 6.5_x64.oracle11g 64bit 报错详情: 安装到68%时弹窗报错: 调用makefile '/test/app/Administrators/p ...
- MBR和EFI启动过程
MBR启动过程 BIOS-->MBR(主引导记录)-->DPT(硬盘分区表)-->DBR(分区引导扇区)-->BootMgr-->BCD-->Winload.exe ...
- 解决问题:Red Hat Enterprise Linux 7 64 位 虚拟机安装后无法启动图形化
原因: 1.系统在创建时,没有安装图形化 2.系统在安装后,有降低内存的操作,内存过低无法启动桌面,以及其他 就原因一进行图形化安装: 1.VMware挂载Red Hat Enterprise Lin ...
- Linux Red Hat 8.0虚拟机安装过程
Linux Red Hat 8.0虚拟机安装过程 一.安装虚拟机所需要的工具: 1.VMware Workstation Pro 2.Red Hat 8.0 虚拟机镜像 3.还有一个就是VMware的 ...
- Red Hat Enterprise Linux 7.x新特性
Red Hat Enterprise Linux 7.x新特性 RHEL7新特性简介 1. RHEL7目前支持架构 64-bit AMD.64-bit Intel.IBM POWER.IBM ...
- 为Azure-云准备一个基于Red Hat 8.x 的虚拟机镜像
由于公司最近要求部分项目上线到Azure云上,要求操作系统使用的Redhat 8.x,而且必须加固 而在Azure官网提供的镜像中,又没有Redhat,于是只有自己自定义Redhat镜像,最后加固,作 ...
- Red Hat Enterprise Server 6.0 安装Sendmail相关包
由于需要在Linux服务器(Red Hat Enterprise Linux Server release 6.0)上配置邮件服务,需要安装Sendmail包,一般Sendmail的安装有两种方式:R ...
- 使用 KGDB 调试 Kernel On Red Hat Linux
1. KGDB 简介 KGDB 提供了一种使用 GDB 调试 Linux 内核的机制.使用 KGDB 可以象调试普通的应用程序那样,在内核中进行设置断点.检查变量值.单步跟踪程序运行 ...
- 如何安装win10+Red Hat Enterprise Linux双系统?
1,如何安装win10+Red Hat Enterprise Linux双系统???? 有很多人(没做过调查,可能就我自己想装吧)想要安装Red Hat Enterprise Linux系统,但是又不 ...
随机推荐
- 在Eclipse中安装JSHint插件
离线安装 1.下载插件包 http://download.eclipsesource.com/~rsternberg/jshint-eclipse-0.9.8.20130728-0004-b94b44 ...
- Selenium2学习(十二)-- alert\confirm\prompt
前言 不是所有的弹出框都叫alert,在使用alert方法前,先要识别出到底是不是alert.先认清楚alert长什么样子,下次碰到了,就可以用对应方法解决. alert\confirm\prompt ...
- github的初步认识
第一部分:我用代码写了一个简单的可以运行的helloworld代码. 其链接为:https://github.com/ljw305503/CK01.git 第二部分:GitHub是一个分布式的版本控制 ...
- 设计模式——代理模式(Proxy Pattern)
代理模式(Proxy),为其他对象提供一种代理以控制对这个对象的访问. UML图: 模型设计: Subject类: package com.cnblog.clarck; /** * Subject 类 ...
- (转)python with as的用法
源地址https://www.cnblogs.com/DswCnblog/p/6126588.html With语句是什么? 有一些任务,可能事先需要设置,事后做清理工作.对于这种场景,Python的 ...
- JS:jquery插件表格单元格合并.
公司需要用到单元格合并,于是动手封装了一个简单的jquery插件,封装的函数是直接写好转的,请多多提意见看代码是否有优化的地方..... 截图: 代码: /* * mergeTable 0.1 * C ...
- 2018_MCM_ICM_C
- Uva 11922 Splay
Splay(伸展树)实现可分裂与合并的序列 对于BST,除了Treap树之外,还有一种Splay的伸展树,他能快速的分裂与合并. 重要的操作是伸展操作,将一个指定的结点 x 旋转到根的过程. 分三种情 ...
- 可持久化线段树(主席树)快速简洁教程 图文并茂 保证学会。kth number例题
如果学不会也不要打我. 假设你会线段树 开始! --- 主席树也叫可持久化线段树 顾名思义,它能够保存线段树在每个时刻的版本. 什么叫每个时刻的版本?你可能对一棵普通线段树进行各种修改,这每种样子就是 ...
- 【洛谷P1966】火柴排队
火柴排队 题目链接 ∑(ai−bi)^2=∑ai^2-2*∑ai*bi+∑bi^2 显然∑ai^2+∑bi^2是不变的,我们要让 2*∑ai*bi最大,才能使原式最小 然后我们一眼就可以看出来, ...