手斧Linux – 从LFS到Funtoo (124)

原创 2015年07月09日 17:30:47

第13章 LiveCD问题分析

1,关于qemu命令行里的  -boot d -cdrom myfuntoo.iso。

-cdrom myfuntoo.iso 让qemu虚拟机里输出一个cdrom设备,并有光盘output.iso在里面。 

-boot d 让qemu从cdrom里开始加载。

如果output.iso正常,qemu会从iso里找到isolinux/isolinux.bin,开始从光盘引导。

为什么是isolinux/isolinux.bin?这个是在mkisofs时指定的。 isolinux/isolinux.bin会开始解释isolinux/isolinux.cfg里参数,开始一个启动选择菜单或简单的交互,开始一个内核的启动。

2,关于iso里的长文件名,

为了能在光盘的文件系统里存放非8.3的文件名,需要在mkisofs时,带上  -joliet -joliet-long -full-iso9660-filenames -allow-leading-dots。

3,在启动过程中停下来检查。

在做iso时,isolinux/isolinux.cfg里要指定kernel/initrd/loop,将loop指定的文件更名,让启动走到initrd时,做不成根文件系统,就可以进入一个busybox的shell里。

4,内核对文件系统的支持。

内核被加载后,如果内核的配置正确,工作正常,会生成设备/dev/sr0,对应于光驱设备,如果没能有/dev/sr0生成,需要检查内核的编译配置。

initrd会执行其中的/linuxrc来执行最后的根文件系统的加载,需要mount /dev/sr0,这需要内核对iso文件系统的支持,在内核配置里要找开isofs的相关支持,ISO9660_FS  JOLIET   ZISOFS 几项。如果isofs以module方式编译支持,而要在/usr/share/genkernel/arch/x86_64/modules_load里加上isofs的支持,使得genkernel时,将模块带上,启动地会加载。否则,linuxrc会报出不认得/dev/sr0里的介质。

initrd在linuxrc里去mount /dev/sr0并不是最后的根目录,livecd启动还要将iso里的squashfs映象文件mount上来,做为最后的根文件系统。因此,要打开内核配置里和SQUASHFS有关的选项。如果是以模块方式编译,也要将它加到/usr/share/genkernel/arch/x86_64/modules_load里。

LFS详细搭建指南——适合初学者使用

LFS详细的搭建指南,适合初学者使用,不需要有Linux基础也可以实现,但如果有Linux基础掌握得会更快些...
  • u012333520
  • u012333520
  • 2016年01月17日 18:39
  • 9962

LFS进阶版(QT)——GUI界面的实现

LFS进阶版——BLFS的搭建,实现用QT开发一个简易的记事本软件
  • u012333520
  • u012333520
  • 2016年01月22日 17:42
  • 2139

Lua学习之为lua 5.1加入LuaFileSystem,一个文件系统访问的库

LuaFileSystem(简称lfs)是一个用于lua进行文件访问的
  • hzl877243276
  • hzl877243276
  • 2014年08月29日 10:31
  • 7979

手斧Linux – 从LFS到Funtoo (152)

wget http://mirrors.xmu.edu.cn/gentoo/distfiles/Module-Load-Conditional-0.52.tar.gz wget http://mir...
  • sanitywolf
  • sanitywolf
  • 2015年07月09日 18:04
  • 341

手斧Linux – 从LFS到Funtoo (149)

wget http://mirrors.xmu.edu.cn/gentoo/distfiles/bash42-033 wget http://mirrors.xmu.edu.cn/gentoo/di...
  • sanitywolf
  • sanitywolf
  • 2015年07月09日 18:02
  • 356

手斧Linux – 从LFS到Funtoo (102)

199. ebuild /usr/portage/virtual/perl-ExtUtils-Install/perl-ExtUtils-Install-1.54.ebuild clean insta...
  • sanitywolf
  • sanitywolf
  • 2015年07月01日 22:36
  • 203

手斧Linux – 从LFS到Funtoo (32)

第15节 再次调整工具链分布 ln -sv /tools/bin/x86_64-wolf-linux-gnu-addr2line  /tools/bin/addr2line ln -sv /too...
  • sanitywolf
  • sanitywolf
  • 2014年12月24日 21:06
  • 197

手斧Linux – 从LFS到Funtoo (97)

第3节 安装第一批软件包 接下来,可以用ebuild...qmerge来安装软件包了,portage系统将完成源码包的定位、下载、解开、编译、安装、管理等工作。 1. ebuild /usr/...
  • sanitywolf
  • sanitywolf
  • 2015年06月27日 05:16
  • 211

手斧Linux – 从LFS到Funtoo (150)

wget http://mirrors.xmu.edu.cn/gentoo/distfiles/eselect-python-20111108.tar.bz2 wget http://mirrors...
  • sanitywolf
  • sanitywolf
  • 2015年07月09日 18:02
  • 291

手斧Linux – 从LFS到Funtoo (151)

wget https://nodeload.github.com/gentoo/hwids/tar.gz/hwids-20121202 -O hwids-20121202.tar.gz wget h...
  • sanitywolf
  • sanitywolf
  • 2015年07月09日 18:03
  • 392
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:手斧Linux – 从LFS到Funtoo (124)
举报原因:
原因补充:

(最多只允许输入30个字)