刚刚做好LFS(6.2),做个总结

本文详细记录了在使用LFS(Linux from Scratch)进行Linux系统从头开始安装的过程中遇到的问题及其解决方法。包括在安装过程中遇到的Linux-libc-headers-2.6.12.0时的错误处理,以及内核引导时出现的Kernel panic错误,并提供了相应的解决方案。通过使用宿主系统的文件和调整内核编译设置,最终成功解决了问题,使得LFS系统得以正常运行。

弄了3天总算是把LFS弄好了,都是按照LFS一步步来的,这里就只说一下有问题的地方。

第一个错误是在第五章第一次安装linux-libc-headers-2.6.12.0时出错

  文档中的命令:

  cp -Rv include/asm-i386 /tools/include/asm

cp -Rv include/linux /tools/include

错误忘了好像是提示没有include/asm-i386这个文件或目录(事实上是有的,有点想不通),我嫌麻烦就直接使用宿主lfs-livecd的/usr/include中的文件,即cd到/usr/include中,再使用:

cp -Rv asm /tools/include/asm

cp -Rv linux /tools/include.

(这里我是先进/usr/include看看然后再操作,可以直接cp -Rv /usr/include/asm/tools/include/asm)

但是在第六章中再次安装是没有这个问题,但是命令有点不一样

文档中的命令:

install -dv /usr/include/asm (

cp -Rv include/asm-i386/* /tools/include/asm

cp -Rv include/linux /tools/include
我想大概是命令的问题(还是想不通,只是猜想),用类似第六章的命令(cp -Rv include/asm-i386/* /tools/include/asm)大概在第五章就不会出错了,没有验证,有人做的话建议可以试一下看看。不过我之前的办法在后面也没有出项问题,当然还是建议根据文档来。

第二个错误是做引导的时候编译完内核,做完引导,重启后遇到Kernel panic ——内核打出类似下面的一段话,然后死机:

VFS: Cannot open root device "sda8" or unknown-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) 

因为我virtualbox里的虚拟机的硬盘是SICI的,所以和文档中grub时使用的hdax不一样,而是使用sdax,所以我开始以为可能是grub中menu.list和fstab中的设置问题。但是试了很多次都没用,后面想了一下内核其实已经引导起来了,应该是内核的编译设置的错误。网上查了一下,得到两个比较有用信息如下,这两个都是说在内核增加SICI的支持,为了不需要在grub设置中再增加init的设置要把它编译进内核不能以模块启动。

1.http://hi.baidu.com/zkheartboy/item/4e3a5af2b0d94d0fc6dc452b

这个是要设置Device Driver
|---->DriverATA/ATAPI/MFM/RLL
|---->Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
|----->generic/default IDE chipset support 
|----->PCI IDE chipset support
|---->Generic PCI IDE Chipset Support

2.http://www.linuxsir.org/bbs/thread244052.html

这个是说要在Device Drivers->SCSI device support->SCSI low-level drivers下加入BusLogic SCSI support的支持

但是这两个我都增加了,重新编译后新内核还是出现同样错误。因为浪费了很多时间,我想暂时先就这样,先把LFS运行起来,错误以后再搞清楚。所以后面我直接使用了livecd的.config。于是问题解决!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值