嵌入式视频行业。
分类: LINUX
2008-03-28 14:08:29
在这里总结一下网上的在编译内核出现问题中出现的问题的解决办法:
编译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)