北京SEO

Linux kernel在“make install”时的问题分析总结

2019/10/10/17:46:43  阅读:2153  来源:谷歌SEO算法  标签: Safari浏览器

编译KVM后安装时的经常有错误提示,make install 也可能会遇到类似的 “ERROR:modinfo:could not find module XXX”的问题,现在我们来分析一些这些问题然后解决掉.

在编译内核后,make install 时可能遇到“ERROR:modinfo: could not find module XXX”的问题,命令行中操作看到的内容如下:

  1. [root@smilejaylinux-3.12]#makemodules_install
  2. ..........
  3. INSTALLsound/soundcore.ko
  4. INSTALLsound/synth/emux/snd-emux-synth.ko
  5. INSTALLsound/synth/snd-util-mem.ko
  6. INSTALLsound/usb/snd-usb-audio.ko
  7. INSTALLsound/usb/snd-usbmidi-lib.ko
  8. INSTALLsound/usb/usx2y/snd-usb-usx2y.ko
  9. DEPMOD3.12.0
  10. [root@smilejaylinux-3.12]#makeinstall
  11. sh/root/linux-3.12/arch/x86/boot/install.sh3.12.0arch/x86/boot/bzImage
  12. System.map"/boot"
  13. ERROR:modinfo:couldnotfindmodulepower_meter
  14. ERROR:modinfo:couldnotfindmodulenf_conntrack_ipv4
  15. ERROR:modinfo:couldnotfindmodulenf_defrag_ipv4
  16. ERROR:modinfo:couldnotfindmodulenf_conntrack_ipv6
  17. ERROR:modinfo:couldnotfindmodulenf_defrag_ipv6
  18. ERROR:modinfo:couldnotfindmodulext_state
  19. ERROR:modinfo:couldnotfindmodulenf_conntrack
  20. ERROR:modinfo:couldnotfindmodulei2c_piix4
  21. ERROR:modinfo:couldnotfindmodulesg
  22. ERROR:modinfo:couldnotfindmoduleext4
  23. ERROR:modinfo:couldnotfindmodulembcache
  24. ERROR:modinfo:couldnotfindmodulejbd2
  25. ERROR:modinfo:couldnotfindmodulesr_mod
  26. ERROR:modinfo:couldnotfindmodulecdrom
  27. ERROR:modinfo:couldnotfindmodulepata_acpi
  28. ERROR:modinfo:couldnotfindmoduleata_generic
  29. ERROR:modinfo:couldnotfindmoduleata_piix

原因分析:在make install时,为了让新内核中不缺少所需module,会先检查当前系统已经加载了的module(lsmod命令可查看),然后对比新安装的内核模块,如果新的内核模块中缺少一些module(和当前lsmod命令的输出做对比),就会报“ERROR: modinfo: could not find module power_meter”这样的错误信息.

具体来说,缺少相应module而报错,大致可分为3种情况:

1.确实是缺少了某个module,其解决方法是:如果报的module对于你来说是有用,检查编译kernel时的.config文件,加上对应的配置(配为=m),重新编译和安装modules即可,如果你觉得这个module没啥用,大可不必管它了.

2.新编译的kernel已经将该选项编译进kernel了(.config中选择为=Y),从而不需要生成这个module的.ko文件,系统找不到对应的.ko文件,但是已经在新内核中了,不必理会这个报错,例如,上面的“ERROR: modinfo:could not find module ext4”是因为我将EXT4文件系统模块编译为built-in了,如下:

  1. [root@smilejaylinux-3.12]#grepEXT4.config
  2. CONFIG_EXT4_FS=y--phpfensi.com
  3. #CONFIG_EXT4_FS_POSIX_ACLisnotset
  4. #CONFIG_EXT4_FS_SECURITYisnotset
  5. #CONFIG_EXT4_DEBUGisnotset

3.模块的名称变了,用当前系统lsmod命令查找的模块名称,在新编译的内核中找不到module了,只需要检查确认即可,如这里的“ERROR: modinfo:could not find module power_meter”就是这种类型,检查方式如下:

  1. #当前系统已经加载了power_meter模块
  2. [root@smilejay~]#lsmod|grepmeter
  3. power_meter91691
  4. #但是kernel3.12中该module名称为acpi_power_meter,和'lsmod'查到的power_meterb不一致。
  5. [root@smilejay~]#find/lib/-name"*power_meter.ko"
  6. /lib/modules/2.6.32-358.el6.x86_64/kernel/drivers/acpi/power_meter.ko
  7. /lib/modules/3.12.0/kernel/drivers/hwmon/acpi_power_meter.ko

最后,如果那些错误报的内核模块,你认为不重要或者都经过上面的分析解决后,你就可以忽略这些错误提示了,尽管有这些“ERROR:modinfo:”错误提示,但是kernel还是被正确安装了的,往下继续操作使用即可.

广告内容

Linux kernel在“make install”时的问题分析总结 Linux kernel在“make install”时的问题分析总结 Linux kernel在“make install”时的问题分析总结

相关阅读

热门评论

木木老贼 木木老贼

互联网营销达人~

总篇数181

精选文章

RMAN中catalog和nocatalog区别介绍 小技巧:为Linux下的文件分配多个权限 zimbra8.5.1安装第三方签名ssl证书的步骤 解决mysql不能远程连接数据库方法 windows服务器mysql增量备份批处理数据库 mysql中slow query log慢日志查询分析 JavaScript跨域问题总结 Linux下负载均衡软件LVS配置(VS/DR)教程 mysql中权限参数说明 MYSQL(错误1053)无法正常启动

SEO最新算法