Linux 操作系统启动流程
1.加载bios
bios中包含的硬件CPU 内存 硬盘等相关信息
2.读取MBR
读取完bios信息之后,计算机会查找bios制定的硬盘MBR引导扇区,将其内容复制到 0x7c00 地址所在的物理内存中。被复制到物理内存中的内容是bootloader,然后开始进行引导。
3.GRUB引导
GRUB 启动引导器是计算机启动过程中运行的第一个软件程序,当计算机读取内存中的GRUB配置信息后,会根据其配置信息来启动硬盘中不同的操作系统。
4 加载 kernel
计算机读取内存映像,并进行解压缩操作,系统将解压后的内核放置在内存之中,并调用start_kernel()函数来启动一系列的初始化函数,并初始化各种设备来完成linux核心环境的建立
5 设定inittab 运行等级
内核加载完毕后,会启动linux操作系统第一个守护进程 init ,然后通过该进程读取/etc/inittab文件,/etc/inttab 文件的作用是设定 Linux 的运行等级,Linux 常见运行等级如下:
0:关机模式
1:单用户模式
2:无网络支持的多用户模式
3:字符界面多用户模式
4:保留,未使用模式
5:图像界面多用户模式
6:从新引导系统,重启模式
6.加载 rc.sysinit
读取完运行级别,Linux系统执行的第一个用户层文件/etc/rc.d/rc.sysinit,该文件功能包括设定 path 运行变量、设定网络配置、启动 swap 分区、设定/ proc/系统函数、配置SELinux 等。
7.加载内核模块
读取 /etc/modules.conf 文件及 /etc/modules. d 目录下的文件来加载内核模块、该模块文件,可以后期添加或者修改及删除。
8.启动运行级别程序
根据之前的运行级别,操作系统会运行rc0.d 到 rc6.d 中的相应的脚本程序,来完成相应的初始化工作和启动相应的服务,其中以 S 开头表示系统即将启动的程序,如果以 K 开头,则代表停止该服务。 S 和 K 后的数字为启动顺序编号。
9.读取 rc.local 文件
操作系统启动完相应的服务之后,会读取执行etc/rc.d/rc.local 文件,可以将需要开机的启动的任务加入到该文件末尾,系统会逐行去执行并启动相应命令,
10.执行 /bin/login
执行 /bin/login 程序,启动到系统登陆界面,操作系统等待用户输入用户名和密码,即可登陆到 shell 终端,输入用户名密码即可登陆 Linux操作系统,至此 Linux 操作系统完整启动流程完毕
Linux 操作系统启动流程的更多相关文章
- Linux操作系统启动流程梳理
接触linux系统运维已经好几年了,常常被问到linux系统启动流程问题,刚好今天有空来梳理下这个过程:一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可以简单总结为以下 ...
- Linux操作系统启动流程
一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可以简单总结为以下几步:1)开机BIOS自检,加载硬盘.2)读取MBR,进行MBR引导.3)grub引导菜单(Boot L ...
- [转] Linux操作系统启动流程
总启动流程 这部分转自:https://www.cnblogs.com/liang-io/p/9651656.html 一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可 ...
- 简述linux操作系统启动流程
Linux启动流程 POST-->BootSequence(BIOS)->Bootloader(MBR,grub)-->kernnel(ramdisk,initrd)-->ro ...
- Linux操作系统启动流程浅析
启动BIOS程序 当电源键按下之后,BIOS(Basic nput Output System)就会由主板上的闪存来运行.BIOS程序会把自己解压缩到系统的内存之中,然后读取CMOS(Compleme ...
- linux文件系统启动流程、启动脚本
linux文件系统启动流程.启动脚本 下面是一张Linux启动流程图: 在了解启动流程之前,我们应该先知道系统的几个重要脚本和配置文件,他们对应的路径为: 1. /sbin/init 2. /etc/ ...
- Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例
Linux操作系统启动故障排错之"/sbin/init"文件被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.删除"/sbin/ini ...
- Linux操作系统启动故障排错之"/etc/fstab"文件被删除恢复案例
Linux操作系统启动故障排错之"/etc/fstab"文件被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模拟故障 [root@yinzhe ...
- Linux操作系统启动故障排错之/boot目录被删除恢复案例
Linux操作系统启动故障排错之"/boot"目录被删除恢复案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模拟删除/boot分区 1>.查看/b ...
随机推荐
- 指针FHQTreap
不太友好的代码 题面依旧是普通平衡树 //Writer : Hsz %WJMZBMR%tourist%hzwer #include <bits/stdc++.h> #define LL l ...
- Problem 5
Problem 5 # Problem_5.py """ 2520 is the smallest number that can be divided by each ...
- 性能测试之Jforum平台的搭建
学习Jmeter性能基础,想要借助1款现有的软件平台,来练习jmeter基础,<Jmeter实战>书籍上给出样例软件平台:Jforum 一.环境准备 准备:tomcat9.mysql5.5 ...
- mac下连接本地安装的mysql报错提示密码过期
前提: mac中之前安装了mysql,一段时间没使用,今天使用mysql客户端去连接,报错提示密码过期,原因是mysql5.7之后版本有密码过期这个功能. error: Your password h ...
- Swift入门(四)——可选类型(Optionals)与断言(Assert)
可选类型是什么? 首先看一个问题,Swift中String类型的变量有一个叫做toInt的方法,能够把String类型变量转换为Int类型变量. var stringValue = "5&q ...
- wifi共享精灵2014.04.25.001已经更新,wifi热点中文名走起!
五一回来后,有个惊喜,wifi共享精灵有了最新动向.不晓得wifi共享精灵是啥的朋友,我来解释下,它就相当于一个无线路由器.说起来,Wifi共享精灵正式版2014.04.25.001(http://w ...
- 【翻译自mos文章】怎么startup/shutdown PDB?
怎么startup/shutdown PDB? 来源于: 12c: How to Startup/Shutdown PDB's? (文档 ID 1592247.1) 适用于: Oracle Datab ...
- [Android]RecyclerView的简单演示样例
去年google的IO上就展示了一个新的ListView.它就是RecyclerView. 下面是官方的说明,我英语能力有限,只是我大概这么理解:RecyclerView会比ListView更具有拓展 ...
- SVG中一些较为具体的文档
绘制线头尾标记 http://tutorials.jenkov.com/svg/marker-element.html 微软关于svg的文档 http://msdn.microsoft.com/zh- ...
- POJ1274 The Perfect Stall 二分图,匈牙利算法
N头牛,M个畜栏,每头牛仅仅喜欢当中的某几个畜栏,可是一个畜栏仅仅能有一仅仅牛拥有,问最多能够有多少仅仅牛拥有畜栏. 典型的指派型问题,用二分图匹配来做,求最大二分图匹配能够用最大流算法,也能够用匈牙 ...