linux系统引导流程与模块加载卸载

发布时间:2019-10-08编辑:脚本学堂
本文介绍了linux系统引导流程,以及linux模块加载与卸载的方法,需要的朋友参考下。

一,Liunx系统的启动
1,首先,由MBR引导加载引导程序grub
2,grub引导加载虚拟文件镜像initramfs.img。
3,镜像initramfs.img利用命令只读挂在root分区,来加载root分区的中系统驱动,并将内核kernel加载到内存。
4,虚拟磁盘镜像包含基本的内核引导驱动模块,将控制权交给内核。
5,内核使用系统驱动,重新读写挂载根分区,系统开始载入第一个进程init。

如果要为grub引导设置密码则在title字段下增加一行 :
 

复制代码 代码示例:
password   --md5   密文   利用命令grub-md5-crypt得到密文

在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 安装内核文件