Linux启动流程、模块管理与Loader学习总结
1、Linux不可随意关机,否则容易造成文件系统错乱或者是其他无法启动的问题
2、启动流程主要是BIOS、MBR、Loader、kernel+initrd、/sbin/init等流程
3、loader具有提供菜单、加载内核文件、转交控制权给其他Loader等功能
4、boot loader可以安装在MBR或者是每个分区的bootsector区域中
5、initrd可以提供内核在启动过程中所需要的最重要的模块(通常是与磁盘及文件系统有关的模块)
6、init的配置文件为/etc/initab。此文件内容可以设置默认runlevel、系统初始化脚本、不同执行等级的服务启动等
7、额外的设备与模块对应可写入/etc/modprobe.comf中
8、内核模块的管理可使用lsmod, modinfo, rmmod, insmod, modprobe等命令
9、modprobe主要参考/lib/modules/$( uname -r )/modules.dep的设置来加载与卸载内核模块
10、grub的配置文件与相关文件系统定义文件大多放置于/boot/grub目录中,配置文件名为menu.lst
11、grub对磁盘的代号设置与Linux不同,主要通过检测的顺序来给予设置,如(hd0)及(hd0,0)等
12、menu.lst内每个菜单与title有关,而直接指定内核启动时,至少需要kernel及initrd两个文件
13、menu.lst内设置loader控制权移交时,最重要的为chainloader+1这个选项
14、若想要重建initrd,可使用mkinitrd处理
15、重新安装grub到MBR或boot sector时,可以利用grub shell来处理
16、若想要进入救援模式,可于启动菜单过程中,在kernel的选项后面加入“single”或“init=/bin/bash”等方式来进入救援模式
17、我们可以对grub的各个菜单给予不同的密码