linux征途之系统开机流程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux征途之系统开机流程相关的知识,希望对你有一定的参考价值。
CentOS 6.x版本开机流程
1. 按下开机按钮,主板加电读取Bios信息;
2. BISO载入CMOS的信息寻找启动项,并读取第一启动项的MBR
3. 根据MBR的设置,加载bootloader,6.x版本使用grub
4. grub读取/boot/grub/menu.lst文件获得内核文件vmlinuz和initrd的位置
5. 根据/boot/grub/menu.lst文件内的配置读取vmlinuz和initrd文件
6. 解压initrd文件在内存中,生成根目录,加载核心vmlinuz,利用核心的功能开始侦测硬件,并加载驱动程序。
7. 内核加载驱动程序释放虚拟文件系统,并挂载实际的根目录文件系统,读取硬盘文件,调用init进程开始系统初始化
8. init进程读取/etc/initab文件取得开机等级(runlevel),调用/etc/rc.d/rc.sysinit文件来准备软件运行环境(网络,时区等)
9. 根据开机等级读取/etc/rc.d/rc[0-6].d/和/etc/sysconfig目录下的配置文件初始化相关服务,运行rc.local配置个人设置
10. init运行终端模拟程序mingetty来启动login程序,等待用户登录
开机过程中要用到的主要配置文件
/boot/grub/menu.lst
/etc/rc.d/rc.sysinit
/etc/rc.d/rc[0-6].d/*
/etc/sysconfig/*
CentOS 7.x版本开机流程
1. 按下开机按钮,主板加电读取BIOS信息;
2. BISO根据设置信息寻找启动项,并读取第一启动项的MBR
3. 根据MBR的设置,加载bootloader,7.x版本使用grub2
4. grub2读取/boot/grub2/grub.cfg文件获得内核文件vmlinuz和initrd的位置
5. 根据/boot/grub2/grub.cfg文件内的配置读取vmlinuz和initrd文件
6. 解压initrd文件在内存中,生成根目录,加载核心vmlinuz,利用核心的功能开始侦测硬件,并加载驱动程序。
7. 内核调用systemd程序,以default.target流程开机8. systemd执行sysinit.target初始化系统和basic.target准备操作系统
9. systemd启动multi-user.target下的本机和服务器服务
10. systemd执行multi-user.target下的/etc/rc.d/rc.local文件
11. systemd执行multi-user.target下的getty.target和登陆服务
12. systemd执行graphical需要的服务(图形化界面需要)
开机过程中用到的主要配置文件
/etc/modprobe.d/*.conf
/etc/modules-load.d/*.conf
/etc/sysconfig/*
以上是关于linux征途之系统开机流程的主要内容,如果未能解决你的问题,请参考以下文章