本站文章(技术文章和tank手记)均为社长矢量比特工作.实践.学习中的心得原创,请勿转载!

回眸总结linux的启动过程

linux系统 矢量比特

学弟问我linux的启动过程,突然被雷到了,竟然忘的那么透彻,脑袋飘来6个字——“岁月是把杀猪刀”。1、系统加电后,bios读取硬件信息,读取启动设备,读取0磁头0柱面的1扇区的主引导记录mbr,并将启动控制权移交给mbr;2、mbr有512字节三部分组成,其中前446字节是bootl

        学弟问我linux的启动过程,突然被雷到了,竟然忘的那么透彻,脑袋飘来6个字——“岁月是把杀猪刀”,于是恶补 ,写成日志,起码原理上的东西不能丢,发展才是硬道理,最近做一个高并发(70万)的服务测试中也深深感受到对linux系统的理解还需要更加的深刻,废话不多说,总结如下:
 

1、系统加电后,bios读取硬件信息,读取启动设备,读取0磁头0柱面的1扇区的主引导记录mbr,并将启动控制权移交给mbr;

2、mbr有512字节三部分组成,其中前446字节是bootloader主引导程序,64字节的分区表,2字节的结束符,mbr得到控制权后,执行bootloader的主引导程序,解析linux的grub.conf文件,通过grub的配置文件加载内核和启动文件(initrd),并将启动控制权移交给linux内核;

3、linux内核拿到启动控制权后,进行初始化,先执行initrad里面init脚本,init脚本主要加载各种存储介质相关的设备驱动程序,执行结束后,挂载并转换到真正的根文件系统上,由内核启动系统的1号进程/sbin/init,读取启动级别,读取并执行/etc/rc.d/sysinit脚本进行系统的初始化,直至执行系统启动的最后一个脚本rc.local;

4、加载文本模式资源;

5、加载图形模式资源;

6、登录后加载环境变量,启动结束。


运维网咖社”原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://www.net-add.com


©本站文章(技术文章和tank手记)均为社长"矢量比特"工作.实践.学习中的心得原创或手记,请勿转载!

喜欢 (5) or 分享 (0)
欢迎扫描关注微信公众号【运维网咖社
社长"矢量比特",曾就职中软、新浪,现任职小米,致力于DevOps运维体系的探索和运维技术的研究实践.