- 操作系统启动经过
- 加载BIOS的硬件信息和自检,根据设置取得第一个可启动的设备
- 读取并执行第一个启动设备内MBR的启动引导程序,即grub2、spfdisk等程序
- 根据启动引导程序加载kernal,kernal会检测硬件和加载驱动程序
- 硬件驱动成功后,kernal会主动调用systemd程序,并以default.target流程启动:
- systemd执行sysinit.target初始化系统及basic.target准备操作系统
- systemd启动multi-user.target下的本机与服务器服务
- systemd执行multi-user.target下的/etc/rc.d/rc.local文件
- systemd执行multi-user.target下的getty.target及登录服务
- systemd执行graphical需要的服务
- 不同操作系统文件格式不相同,需要一个启动引导程序(boot loader)来处理内核文件加载,boot loader安装载启动设备的第一个扇区中,就是MBR(Master Booter Record,主引导记录)
- boot loader主要功能:提供选项,加载内核文件,转交其他loader
- 虚拟文件系统:一般使用的文件名为/boot/initrd或/boot/initramfs,这个文件的特色是它也能够通过boot loader加载到内存中。
- 内核模块放置在/lib/modules/$(uname -r)/kernel中
- 内核模块扩展名放置是.ko结尾。
- lsmod:显示内核当中的模块,名称、大小、是否被其他模块所使用
- modinfo加上完整文件名可以检查某个模块文件
- modprobe加载模块
- insmod完全由用户自行加载一个完整文件名的模块
- Linux将boot loader的程序代码执行与设置值加载分成两个阶段:stage1执行boot loader主程序,stage2主程序加载配置文件
- superuses指定管理员
- grub2的配置文件与相关文件系统定义文件大多放置于/boot/grub2目录中,配置文件名为grub.cfg
- 重新安装grub2到MBR或boot sector时,可以利用grub2-install来处理
08-11