Linux启动流程简述
记录Linux启动流程。
Linux启动的简要流程
Linux-MBR启动流程
POST – GRUB(Bootloader-MBR) – Kernel – init
详细描述及说明
- 在触发开机通电之后,计算机读取BIOS中CMOS芯片的已经写好的程序进行主板设备的通电自检.
- 在自检完成后将读取硬盘上的前512个字节,通过前面的446个字节载入grub的bootloader及硬盘相关驱动.
- 同时引导grub进入stage1.5,stage1.5指向了定义在boot分区下的grub.cfg,及相关的grub图形文件.
- grub的stage2进行了grub的菜单展示及内核选择的界面.
- 通过grub的引导,计算机挂载内核,识别的根文件系统.
- 启动init进程,通过SysV管理其他进程的启动及执行.
Grub 内核参数
grub的菜单里面有几个参数, 这几个参数是用来控制内核行为的.
AWS ec2 的串行端口是通过这个东西控制的, 如果不添加这个参数, 串口就是黑的.
linux /boot/vmlinuz-linux-zen root=UUID=7a1c634b-4d44-4136-87b1-6232d31b7c3b rw console=ttyS0 earlyprintk=serial,ttyS0,keep transparent_hugepage=never
- 初始化 Serial Console.
console=ttyS0
- 设置初始化端口的选项.
- Append “,keep” to not disable it when the real console takes over.
earlyprintk=serial,ttyS0,keep
- 关闭透明巨页.
transparent_hugepage=never
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Liarlee's Notebook!