make install时出现错误及解决方法

发布时间:2019-08-18编辑:脚本学堂
本文为大家介绍在编译内核出现的一些及相关解决办法。

本文为大家介绍在编译内核出现的一些及相关解决办法。

编译linux内核到make install出现:"No module Buslogic Found for kernel 2.6.20xiaoxie"

网上办法一:
Device Drivers--->SCSI device support--->SCSI low-level drivers--->; BusLogic SCSI support没有被编译进模块(亦有说内核),可是我看了看,只有可以选模块方式,而且我已经选上了。

网上办法二:
此问题一般只出现在SCSI硬盘+VMWARE redhat架构中,因为BusLogic被编译进了内核而不是一个module的形式(2.4内核的Buslogic模块即使静态编译进内核也不行)。解决方式是直接将BusLogic.o文件复制过去:
# cp /usr/src/linux-2.6.20/drivers/scsi/BusLogic.o /lib/modules/2.6.20/kernel/drivers/scsi 复制过后再执行一下make install。(我亦是在vmware中所以试了试,结果错误信息改为“All of your loopback devices are in use”)

网上办法三:
(此办法经试用,会出现错误)编辑文件 /etc/modules.conf
将"alias scsi hostadapter BusLogic"这行注释掉,
即#alias scsi hostadapter BusLogic
保存 /etc/modules.conf,退出
# make install

网上办法四:
手动添加启动项 (经试用不能启动)
 

复制代码 代码如下:
#depmod -a
#cp /usr/src/linux/System.map /boot/System.map-2.6.0
#cp /usr/src/linux/arch/i386/bzImage /boot/vmlinuz-2.6.0

解决“All of your loopback devices are in use”的问题

网上办法一:
(未解决)
# insmod /lib/modules/kernelversion/kernel/drivers/block/loop.[ko,o]
原因在于loopback设备没有编译到kernel里

由于没有make install成功,没有产生initrd-2.6.20.img文件,所以在grub.conf添加入下:
 

复制代码 代码如下:
title Red Hat Linux (2.6.20-X)
root (hd0,0)
kernel /vmlinuz-2.6.20-X ro root=LABEL=/
no initrd

结果reboot时,在如下错误处中止:
VFS:Cannot open root device "LABEL=/" or unkown-block(0,0)
Please append a correct "root=" boot option
Kernel panic - not syncing :VFS:Unable to mount root fs on unknown-block(0,0)