LFS 安装过程中遇到的问题

Posted by 老沙
1月 12 2010

手册的前4章要认真看,否则后边可以会有麻烦

第5章的问题
1. 安装:binutils-pass1如果用6.1里自带的版本安装会有问题
所以建意用2.16.1这个版本
http://ftp.gnu.org/gnu/binutils/binutils-2.16.1.tar.bz2

===========================================
2.安装Tcl时lfs:/mnt/lfs/sources/tcl8.4.9/unix$ ./configure –prefix=/tools出错
checking how to build libraries… shared
checking for ranlib… ranlib
checking if 64bit support is requested… no
checking if 64bit Sparc VIS support is requested… no
checking system version (for dynamic loading)… ./configure: line 7338: syntax error near unexpected token `)’
./configure: line 7338: ` OSF*)’
在运行.configure之前先运行
sed -i “s/relid’/relid/” configure
再运行
./configure –prefix=/tools
就OK了

==========================================

lfs6.1,安装到最后编译完内核,修改完fstab,最后安装grub后,启动lfs报错提示

VFS:Cannot open root device “sda” or unknow-block(0,0)
Please append a correct “root=” boot option
kernel panic:VFS:Unable to mount root fs on unknown-block(0,0)

这是在编译内核时没有加入硬盘驱动的结果

虚拟机一般使用的设备有

BusLogic
LSI Logic

在编译内核时加入

这个是SCSI磁盘设备模块,必须选择。
Linux Kernel Configuration
-> Device Drivers
-> SCSI device support
– > SCSI disk support
这个是BusLogic设备驱动模块。
Linux Kernel Configuration
-> Device Drivers
-> SCSI device support
-> SCSI low-level drivers
-> BusLogic SCSI support
这个是LSI Logic设备驱动模块。
Linux Kernel Configuration
-> Device Drivers
-> Fusion MPT device support
-> Fusion MPT (base + ScsiHost) drivers

网卡加入

Linux Kernel Configuration
-> Device Drivers
-> Networking support
-> Ethernet (10 or 100Mbit)
-> AMD PCnet32 PCI support

vmware默认的是LSI Logic,找到 “.vmx” 文件 里的scsi0.virtualDev = “lsilogic”
改为 scsi0.virtualDev = “buslogic”

编译完成后,用这个内核就可以了

============================================

恢复chroot环境

export LFS=/mnt/lfs

mkdir -pv $LFS

mount /dev/sda2 $LFS

swapon /dev/sda1 (加载交换分区,可跳过)

mount –bind /dev /mnt/lfs/dev (这个非常重要,关系到grub能不能找到设备,这个要在进入chroot环境之前做

2)加载必要的文件系统(jhalfs执行完毕后的起点)

mount -vt proc proc $LFS/proc

mount -vt sysfs sysfs $LFS/sys

mount –vt devpts devpts $LFS/dev/pts

mount –vt tmpfs shm $LFS/dev/shm

3)Chroot到目标系统下

chroot “$LFS” /usr/bin/env -i

HOME=/root TERM=”$TERM” PS1=’u:w$ ‘

PATH=/bin:/usr/bin:/sbin:/usr/sbin

/bin/bash –login

============================================

One Response

Trackback URL for this entry