手斧Linux – 从LFS到Funtoo (125)

5,“/dev/sr0可以正常mount上来,但squashfs文件mount不上来。”的排查过程。

这样系统的引导卡住了。如果故意弄错loop参数里的文件名,让启动停下来,进到busybox里,手动mount /dev/sr0成功,mount --bind 也能成功,但mount squashfs时就是会卡住。

a, 做iso的过程有问题?

将install-amd64-minimal-20120112.iso的包解开,重新制作image.squashfs和iso文件,用qemu加载,可以,说明做包的过程正确。

b,自己做的squashfs有问题?

将自己做的squashfs换进install-amd64-minimal-20120112.iso包里,可以mount上来。没有问题。

c,image文件较大,mount时不能取完?

在自己做的包里,qemu时,多带个一个虚拟硬盘文件,做为数据盘用,在shell里将image.squashfs文件拷到虚拟硬盘文件里,然后在宿主系统里mount虚拟硬盘文件。

可以成功mount虚拟硬盘文件,并能成功mount里面的image.squashfs,说明数据是对的,qemu里,能取完image.squashfs文件。

d,busybox mount有问题?

initrd里的busybox都是静态链接的和系统里的不一样。用install-amd64-minimal-20120112.iso里的busybox

。将iso里的initrd文件解开(如何解开,书中有说。)取出里面的busybox,这个是静态链接的。在$LFS/var/tmp/portage/sys-kernel/debian-sources-3.2.29/temp/cache/busybox-1.20.1-x86_64.tar.bz2,有一个己编译好的busybox,将它换掉,再用genkernel重新快速生成initramfs(具体做法,书中有说。),再次生成iso文件。

可是情况还是一样。

阅读更多
上一篇手斧Linux – 从LFS到Funtoo (124)
下一篇手斧Linux – 从LFS到Funtoo (126)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭