美文网首页
Linux系统的启动过程

Linux系统的启动过程

作者: AdH | 来源:发表于2013-04-24 21:42 被阅读191次

    本文参考:《鸟哥的Linux私房菜》第二十章

    Linux系统的启动过程

    1. 加载BIOS的硬件信息与进行自我检测,并依据设置取得第一可启动的设备;
    2. 读取并执行第一启动设备内MBR的boot loader(grub,spfdisk等程序);
    3. 依据boot loader的设置加载kernel,kernel会自动检测硬件与加载驱动程序;
    4. 在硬件驱动成功后,kernel会自动调用init进程,读取/etc/inittab配置文件,init会取得run-level信息;
    5. init执行/etc/rc.d/rc.sysinit文件准备软件执行的操作环境(如网络、时区等);
    6. init执行run-level的各个服务的启动(以script方式);
    7. init执行/etc/rc.d/rc.local文件;
    8. init执行终端模拟程序mingetty来启动login进程,最后等待用户登录。

    从上面的过程中可以看到,在系统启动的过程中是需要读取配置文件的。以下说明系统在启动过程中读取的文件及注意的地方:

    Linux系统的启动过程

    1. boot loader加载kernel的同时,也同时加载initrd(inital RAM disk虚拟文件系统);
    2. /etc/inittab是init进程第一个读取的配置文件,从上到下分别定义了:系统默认的运行级别(id:N:initdefault,N为运行级别,下同)、系统软件执行的环境的脚本执行文件(/etc/rc.d/rc.sysinit)、7个不同run level的script放置路径(/etc/rc.d/rcN.d),启动mingetty的6个终端机(tty1-tty6);
    3. /etc/rc.d/rc.local的读取在/etc/rc.d/rcN.d最后一个进程S99local。S99local实际是一个符号链接,链接到/etc/rc.d/rc.local;
    4. 读取配置文件或目录的顺序为:/etc/inittab,/etc/rc.d/rc.sysinit,/etc/rc.d/rcN.d,/etc/rc.d/rc.local。

    相关文章

      网友评论

          本文标题:Linux系统的启动过程

          本文链接:https://www.haomeiwen.com/subject/rwvttttx.html