Linux的启动流程详解

您所在的位置:网站首页 linux启动程序 Linux的启动流程详解

Linux的启动流程详解

2022-09-30 00:44| 来源: 网络整理| 查看: 265

第一阶段:BIOS启动引导阶段

在该过程中实现硬件的初始化以及查找启动介质

从MBR中装载启动引导管理器(GRUB)并运行该启动引导管理

第二阶段:GRUB启动引导阶段

装载stage1

装载stage1.5

装载stage2

读取/boot/grub.conf文件并显示启动菜单

装载所选的kernel和initrd文件到内存中

第三阶段:内核阶段

运行内核启动参数

解压initrd文件并挂载initd文件系统,装载必须的驱动

挂载根文件系统

第四阶段:Sys V init初始化阶段

启动/sbin/init程序

运行rc.sysinit脚本,设置系统环境,启动swap分区,检查和挂载文件系统

读取/etc/inittab文件,运行在/et/rc.d/rc.d中定义的不同运行级别的服务初始

化脚本

打开字符终端1-6号控制台/打开图形显示管理的7号控制台

启动流程和细节详解

BIOS ==> bootloader ==> kernel & initrd.img ==> /sbin/init

1.bootloader (grub)

/boot/grub/grub.conf /boot目录下无相关的vmlinuz和initrd.img文件时,安装kernel.rpm包进行修复

--> 无grub.conf时需要手工修复

b.grub成功加载,屏幕出现“grub>”,表示配置文件grub.conf找不到。

--> 手工修复

2.kernel & initrd.img

在加载vmlinuz和initrd时出现:kernel panic情况,基本是grub.conf设置参数出问题。

--> 检查grub.conf编写是否出现问题

--> 也有可能是分区设置或者硬盘损坏等问题,需要进入rescue模式检查

3./sbin/init

/sbin/init的配置文件是/etc/inittab

按照这个配置文件,系统会依次执行以下脚本:

---> /etc/rc.d/rc.sysinit

定义hostname,重新挂载各分区,加载各模块

---> /etc/rc.d/rc[0-6].d/目录下以S开头的脚本

启动各runlevel的服务

---> mingetty /dev/tty[1-6]

启用终端



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3