LFS 笔记

使用的版本是6.3,下面摘录构建的时候的注意事项和问题,前后用了5天时间

1. livecd启动的时候,从lfs用户切换会root,用命令exit;

2. lfs 预先的设定:把源码包从/lfs-sources复制到/mnt/lfs/sources目录,然后你会解压文件源码包,然后进入需要源码包的目录,然后就是文档第5章中的操作了;

3. 5.4编译gcc的时候,不要先打补丁;

4. 在非gui界面,用 lynx 阅读lfs文档,运行greeting命令,可以查看lfs文档在哪里,6.3是/usr/share/LFS-BOOK-6.3-HTML中;

如果要运行命令,命令选项太长,怕打错,需要复制文档中的命令,但是lynx没法直接复制,可以先用p命令打印到文件中,然后用vim打开文该文件,然后再用split命令新建一个专门保存需要执行的命令的文件,然后用vim复制到新建的文件中,保存后,在终端用source command-file执行该命令,有点曲折,至少不用怕打错字,影响后面的编译了;

5. 执行6.3 中的命令之前要先切换到 root 帐号,但是文档未说明这个切换,切换之后没有产生权限问题,之后lfs帐号基本被搁置了;

6.  6.12 GCC-4.1.2 是第三次编译gcc,由于前面第二次对gcc源码包做了修改还打了补丁,这里不要使用前一次遗留下来的源码,重新解压gcc-4.1.2.tar。

这个应该又是LFS一个没有说明的默认操作方式:每次编译需要重新解压源码包,如果上次没有修改,当然可以重新使用;

7.  系统构建完成后,启动出现问题:

Root-NFS: No NFS server available, giving up.
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Insert root floppy and press ENTER

VFS: Cannot open root device "sda9" or unknow-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)

最后参考:http://www.linuxeden.com/html/newbie/20100220/70680.html,确实是SATA 驱动的问题,解决方法也摘录下来:

--- 在宿主机查看硬件配置
$ lspci | grep -i "sata"
00:1f.2 SATA controller: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA AHCI Controller (rev 01)
$ lspci | grep -i "ide"
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 01)

--- 内核选项配置
$ make menuconfig

Device Drivers
|---> SCSI device support
      |---> <*> SCSI device support
      |---> <*> SCSI disk support
|---> <*> Serial ATA (prod) and Parallel ATA (experimental) drivers
      |---> <*> AHCI SATA support
      |---> <*> Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support (NEW)
      |---> <*> Intel PATA old PIIX support (NEW)
File systems
|---> <*> Ext3 journalling file system support
|---> [*]   Ext3 extended attributes
|---> [*]     Ext3 POSIX Access Control Lists

--- 验证配置选项
$ grep -i sata .config | grep "^[^#]"
CONFIG_SATA_AHCI=y
$ grep -i scsi .config | grep "^[^#]"
CONFIG_SCSI=y
CONFIG_SCSI_NETLINK=y
CONFIG_SCSI_WAIT_SCAN=m
CONFIG_SCSI_SPI_ATTRS=y
CONFIG_SCSI_FC_ATTRS=y
CONFIG_SCSI_AIC7XXX=y
CONFIG_SCSI_AIC79XX=y
$ grep -i ahci .config | grep "^[^#]"
CONFIG_SATA_AHCI=y
$

Q.E.D. 重新编译内核,重启,引导成功




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值