LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1603|回复: 7

请教建造cpio格式的initrd.img问题

[复制链接]
发表于 2006-8-15 13:02:38 | 显示全部楼层 |阅读模式
之前建造intrd.img是使用:
mkintrd intrd.img-2.6.17.7 2.6.17.7

想使用cpio建造,网上找了些资料:
cpio-initrd的制作非常简单,通过两个命令就可以完成整个制作过程
#假设当前目录位于准备好的initrd文件系统的根目录下
bash# find . | cpio -c -o > ../initrd.img
bash# gzip ../initrd.img

请问这两条命令是什么意思?怎么这样子就可以建了。
发表于 2006-8-15 18:54:47 | 显示全部楼层
把目录压成 cpio 档, 把 cpio 档压成 gz 的。
当然,你的目录里要有 initrd 要的东西。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-15 21:42:35 | 显示全部楼层
??initrd想要的东西是什么?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-16 22:34:30 | 显示全部楼层
自己顶一下!!
回复 支持 反对

使用道具 举报

发表于 2006-8-17 20:28:32 | 显示全部楼层
一个多功能 shell ,一般是 busybox 或 nash
启动时必须在 initrd 中装载的模块,比如 kerenl 中没有 xfs, 但 / 是 xfs 的,initrd 里就必须有 xfs.ko
启动脚本。

现在的 mkinitrd 是可以做 cpio 的 initrd 的。会自动解决许多问题。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-18 01:52:02 | 显示全部楼层
Post by VirusCamp
一个多功能 shell ,一般是 busybox 或 nash
启动时必须在 initrd 中装载的模块,比如 kerenl 中没有 xfs, 但 / 是 xfs 的,initrd 里就必须有 xfs.ko
启动脚本。

现在的 mkinitrd 是可以做 cpio 的 initrd 的。会自动解决许多问题。


使用mkinitrd怎么做cpio的initrd?请教
回复 支持 反对

使用道具 举报

发表于 2006-8-18 20:58:20 | 显示全部楼层
根据参数,把需要的文件 cp 到临时目录,改一个启动脚本,然后根据参数(有些脚本默认做 cpio ),做 dd 或 cpio 的 initrd。

许多 mkinitrd 只是一个 shell 脚本,自己看。
回复 支持 反对

使用道具 举报

发表于 2006-10-9 11:39:15 | 显示全部楼层
Post by VirusCamp
把目录压成 cpio 档, 把 cpio 档压成 gz 的。
当然,你的目录里要有 initrd 要的东西。
我用一个cpio格式的initrd
#cpio -i < ../initrd
21534 blocks

然后在解开的某脚本文件里面加了一行shell
#find . | cpio -c -o > ../initrdnew
21477 blocks
少了57个block,为什么?
initrdnew也比initrd小了一些。不对啊,按理说应该大一些的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表