加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Linux内核模块文件大小

发布时间:2020-12-14 03:00:38 所属栏目:Linux 来源:网络整理
导读:我正在尝试使用vanilla 3.1.0-rc10内核在CentOS 6机器上更新内核.它似乎有效,除了创建的模块的大小明显大于来自发行版RPM的模块.这是一个问题,因为mkinitrd命令最终会创建一个大小为100M的initram文件(因为其中包含了一些所有模块). Grub需要永远在启动时加
我正在尝试使用vanilla 3.1.0-rc10内核在CentOS 6机器上更新内核.它似乎有效,除了创建的模块的大小明显大于来自发行版RPM的模块.这是一个问题,因为mkinitrd命令最终会创建一个大小为100M的initram文件(因为其中包含了一些所有模块). Grub需要永远在启动时加载和解压缩100M initram文件.

简而言之:

>我下载了内核代码.
>在我的内核代码目录中将正在运行的内核配置从/ boot / config-2.6.xxx复制到.config.
>运行make oldconfig并接受默认值
>跑了make&& make modules_install
> run mkinitrd /boot/initramfs-3.1.0-rc10.x86_64.img 3.1.0-rc10

生成的/boot/initramfs-3.1.0-rc10.x86_64.img的大小为100M.

很明显,因为模块的尺寸要大得多;选择qla4xxxx你可以看到我的编译版本是3.6M与发行版116K.所有模块都是这种情况.

[root@localhost ~]# ls -lh /lib/modules/2.6.32-71.el6.x86_64/kernel/drivers/scsi/qla4xxx/qla4xxx.ko
-rwxr--r--. 1 root root 116K May 19 23:37 /lib/modules/2.6.32-71.el6.x86_64/kernel/drivers/scsi/qla4xxx/qla4xxx.ko
[root@localhost ~]# ls -lh /lib/modules/3.1.0-rc10+/kernel/drivers/scsi/qla4xxx/qla4xxx.ko
-rw-r--r--. 1 root root 3.6M Oct 21 12:57 /lib/modules/3.1.0-rc10+/kernel/drivers/scsi/qla4xxx/qla4xxx.ko

我之前没有问题就做过这件事;我在这里俯瞰什么?

解决方法

在模块上运行strip –strip-unneeded以删除无关的符号.如果没有这样做,请在两个模块上运行大小以查看差异所在.请注意,这使调试更加困难.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读