一,Liunx系统的启动
1,首先,由MBR引导加载引导程序grub。
2,grub引导加载虚拟文件镜像initramfs.img。
3,镜像initramfs.img利用命令只读挂在root分区,来加载root分区的中系统驱动,并将内核kernel加载到内存。
4,虚拟磁盘镜像包含基本的内核引导驱动模块,将控制权交给内核。
5,内核使用系统驱动,重新读写挂载根分区,系统开始载入第一个进程init。
如果要为grub引导设置密码则在title字段下增加一行 :
在grub.conf中,硬盘的编号从0开始,不管硬盘是hd类型还是sd类型 ,都以hd开始,
如:sda 为hd0 sdb 为hd1 分区编号也是从0开始 sdb2 为 (hd1,1)。
grub引导程序的配置文件放在/boot/grub/grub.conf 该文件的链接文件为 /etc/grub.conf
内核和虚拟文件镜像的位置为/boot下。
二,模块文件及操作
模块文件编译文件放在 /lib/modules/../kernel/lib下面,模块文件以.ko结尾。
1,lsmod 查看所有系统已经加载的模块文件
2,rmmod 模块绝对路径 卸载指定模块,如果有其他模块正在使用该模块则卸载不了。
3,modinfo modules_name 查询模块信息。
4,insmod模块绝对路径 运行一个模块。
5,modprobe modules_name 运行一个模块
6,modprobe -r modules_name 卸载一个模块,可以解决依赖关系。
7,depmod更新依赖关系。
三,内核编译
make mrproper 编译前的准备。
make menuconfig 编译内核模块选择菜单,确定整合进内核的模块
make开始编译内核
make modules 编译模块
make moudules_install 安装编译的内核模块
make install 安装内核文件