linux引导过程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux引导过程相关的知识,希望对你有一定的参考价值。

首先申明一下,这儿的引导过程是比较简单的,并不涉及到kernel里面的详细引导步骤,希望对刚刚学习linux的朋友有帮助。


1、加电自检

  这基本上是所有计算机开机都需要经过的步骤了,当计算机加电后它首先执行Bios,BIOS对计算机硬件进行检测,当检测通过便完成了硬件的启动。当自检完成后BIOS按照设置的启动顺序寻找系统分区,并读入系统引导扇区,并将系统控制权交给引导程序。 


2、mbr或gpt引导

  mbr和gpt是什么在这儿就不做过多的介绍了,相信了解过计算机的朋友都知道。系统引导程序主要是把系统内核装载到内存,启动盘必须在第一个逻辑磁道上包含引导记录。这512个字节的扇区又被称作是引导扇区,一旦系统装载完毕,BIOS就会将系统的控制权,转交给引导程序 


3、grub(Boot Loader)菜单

  前面的两步基本所有的计算机的开机流程都是这样的,但从这一步开始解释linux自己的引导过程。

grub的主要功能是,提供一个可以供用户选择的图形窗口,编辑引导参数(比如:进入单用户模式等),根据用户选择引导内核


4、加载内核

      当用户选定了引导系统之后,grub将会去唤醒内核,当内核唤醒之后grub将会把系统控制权交给内核,由内核去加载驱动程序并执行/etc/rc.d/rc.sysinit和/sbin/init

               /etc/rc.d/rc.sysinit是一个关键性脚本,主要功能有:

    1.激活udev和selinux

2.根据/etc/sysctl.conf文件给内核设定参数

3.设定时钟

4.装载键盘映射

5.启动交换分区

6.设置主机名

7.根据文件系统检测,以读写方式从新挂载文件系统

8.激活RAID和LVM设备

9.启用磁盘配额

10.根据/etc/fstab,检查和挂载文件系统

     但/etc/rc.d/rc.sysinit执行完之后将会执行/sbin/init脚本,主要用于唤醒init进程(所有进程的父进程)


5、init初始化

      在内核加载之前内核会去运行/sbin/init唤醒init进程,当init进程被唤醒之后init会去检查系统服务,并根据系统配置去开启服务,并在最后执行/etc/rc.d/rc.local脚本


这就是linux系统启动的基本流程,希望对各位朋友有帮助。


本文出自 “自动化运维” 博客,请务必保留此出处http://hongchen99.blog.51cto.com/12534281/1907635

以上是关于linux引导过程的主要内容,如果未能解决你的问题,请参考以下文章

引导过程与服务控制

深入了解linux操作系统引导过程详解

Linux引导过程与服务控制

深入了解linux操作系统引导过程详解

linux系统引导过程及引导修复

Linux引导过程与服务控制