Linux系统启动详解

 


本课程将为您讲解Linux系统启动的流程及相关概念,包括启动流程、MBR及GRUB引导、内核及系统服务等概念


Linux系统启动流程如下:
BIOS
MBR:Boot code
执行引导程序 - GRUB
加载内核
init
runlevel

BIOS:Basic Input Output System
1)基本的输入输出系统,一般保存在主板上的BIOS芯片中
2)计算机启动的时候第一个运行的就是BIOS,BIOS负责检查硬件并且查找可启动设备
3)可启动设备在BIOS设置中定义,如:USB,CDROM,HD

MBR
1)BIOS找到可启动设备后执行其引导代码
2)引导代码为MBR的前446字节

GRUB
1)Grub先现在Linux使用的主流引导程序
2)可以用来引导现在几乎所有的操作系统
3)Grub相关文件保存在/boot/grub中
4)Grum配置文件为/boot/grub/grub.conf
5)配置格式

Kernel
1)MBR的引导代码将负责找到并加载Linux内核
2)Linux内核一般保存在/boot/vmlinuz-2.6.32-279.el6.i686
3)一般还会加载内核模块打包文件:/boot/initramfs-2.6.32-279.el6.i686.img
4)Linux为何保持kernel的精简将一些不常用的驱动、功能模块编译成为模块
  在需要的时候动态加载,而这些模块被打包保存为一个initramfs文件
5)早期版本Linux使用initrd文件,initramfs是initrd的替代优化版本,比其更节省空间、更加灵活。
6)命令dmesg可以查看本次启动时内核的输出信息

Linux内核文件保存在:
/boot/vmlinuz    内核文件
/boot/initramfs   内核模块


命令dmesg显示本次内核启动信息
Init
1)Linux系统运行的第一个进程,pid=1
2)调用/etc/rc.d/rc.sysinit负责对系统进行初始化,挂载文件系统,并且根据运行级别启动相应服务
3) Linux运行级别:
0   关机
1   单用户模式
2   不带网络的多用户模式
3   命令行多用户模式
4   未使用
5   X11图形界面模式
6   重启

4)运行级别保存在配置文件:/etc/inittab
可以修改这个配置文件修改默认的运行级别
5)命令runlevel显示当前及上一个运行级别,上一个没有就是N
6)命令init可修改当前运行级别  init 3
7)每个级别对应的启动服务保存在 /etc/rc.d/rc[0123456].d 中
 
单用户模式下可恢复root密码
1)为内核参数“|”或“single”可系统进入单用户模式
2)单用户模式下不启动任何服务
3)单用户模式直接以root用户登陆,需要密码
4)可以使用passwd修改root密码

Grub加密
1)通过在grub.conf中的启动配置中加入如下参数即可对grub进行加密
 passwd --md5 $l$aoWpTe$/MWUUYbBIF.2RUZK8nbWU0
2)加密后的密码可以通过grub-md5-crypt生成

 

 

你可能感兴趣的:(Linux系统启动详解)