内核模块功能及模块使用

内核模块功能及模块使用

一、以U系为例,/boot及文件夹下文件介绍

config-4.19.0-11-linx-security-amd64 编译好的内核的配置文件,内核文件装载了哪些模块、配置等都有说明

System.map-4.19.0-11-linx-security-amd64 内核模块间依赖关系文件,在修改了/lib/modules/4.19.0-11-linx-security-amd64/目录下文件后,需要更新此文件

initrd.img-4.19.0-11-linx-security-amd64 简化版的根文件系统,系统从内核加载后,先挂载Initrd.img文件,完成初始化工作后,切换到真正的根

vmlinuz-4.19.0-11-linx-security-amd64 内核文件

二、模块的使用

lsmod 显示所有已装在的内核模块

读取自/proc/modules

modinfo mpt3sas 显示mptsas内核模块的信息

modinfo -n mptsas #显示mpt3sas内核模块文件路径

modprobe mpt3sas #加载mpt3sas模块

modprobe -r mpt3sas #卸载mpt3sas模块

depmod 内核模块依赖关系文件生成工具

depmod -a -F /boot/System.map-4.19.0-11-linx-security-amd64 强制更新依赖,生成符号表文件

insmod ../dirmod/mpt3sas.ko 装载一个模块

rmmod mpt3sas 卸载一个模块

update-initramfs #基于 Debian 或 Ubuntu,用于更新或重新生成初始 RAM 文件系统(initramfs)镜像

update-initramfs -u 更新initramfs镜像文件,即查找/boot/vmlinuz-4.19.0-11-linx-security-amd64

三、测试:

删除update下mpt3sas模块,使用kernel下模块,然后复原

如图,mpt3sas模块存在于update和kernel,update版本高,kernel版本低

移除update下mpt3sas,更新符号表文件,更新内核文件,查看mpt3sas模块路径为

/lib/modules/4.19.0-11-linx-security-amd64/kernel/drivers/scsi/mpt3sas/mpt3sas.ko

拷贝回update下mpt3sas,更新符号表文件,更新内核文件,查看mpt3sas模块路径为/lib/modules/4.19.0-11-linx-security-amd64/updates/scsi/mpt3sas/mpt3sas.ko

linx:~# find /lib/ -name "mpt3sas.ko"
/lib/modules/4.19.0-11-linx-security-amd64/kernel/drivers/scsi/mpt3sas/mpt3sas.ko
/lib/modules/4.19.0-11-linx-security-amd64/updates/scsi/mpt3sas/mpt3sas.ko
linx:~# mv /lib/modules/4.19.0-11-linx-security-amd64/updates/scsi/mpt3sas/mpt3sas.ko /root
linx:~# depmod -a -F /boot/System.map-4.19.0-11-linx-security-amd64 
linx:~# update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.19.0-11-linx-security-amd64
linx:~# modinfo -n mpt3sas 
/lib/modules/4.19.0-11-linx-security-amd64/kernel/drivers/scsi/mpt3sas/mpt3sas.ko
linx:~# cp /root/mpt3sas.ko /lib/modules/4.19.0-11-linx-security-amd64/updates/scsi/mpt3sas/
linx:~# depmod -a -F /boot/System.map-4.19.0-11-linx-security-amd64
linx:~# update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.19.0-11-linx-security-amd64
linx:~# modinfo -n mpt3sas
/lib/modules/4.19.0-11-linx-security-amd64/updates/scsi/mpt3sas/mpt3sas.ko
linx:~#

四、补充:

1、查看可执行程序共享库;手动链接库

ldd

ldd todesk #查看todesk二进制文件所需要的库文件

ldconfig #更新动态链接库

2、R系系统更新ram文件initramfs工具

mkinitrd

mkinitrd /boot/initramfs-4.19.90-2206.2.0.0154.vlx30.v99_2003.x86_64.img 4.19.90-2206.2.0.0154.vlx30.v99_2003.x86_64 -f #为指定内核版本生成内核文件,强制

dracut

dracut -f #更新内核文件,强制

dracut比mkinitrd更好

posted on 2025-04-22 16:09  赛博狗尾草  阅读(18)  评论(0)    收藏  举报

导航