解压与压缩ramdisk.img文件,生成uramdisk.img文件


1. 在myandroid/out/target/product/imx51_bbg目录下可以找到要解压的ramdisk.img文件。

通过file命令可以查看ramdisk.img文件的类型:

root@mail:/opt/myandroid_R9.2.1/out/target/product/imx51_bbg# file ramdisk.img
ramdisk.img: gzip compressed data, from Unix

由此,可知其文件类型为gzip类型的。解压的步骤如下:

1》.先将ramdisk.img文件重命名为ramdisk.img.gzip文件

2》.使用gunzip ramdisk.img.gz对其进行解压得到ramdisk.img文件。

有人可能要问,怎么文件名又改回去了?其实不然,使用file ramdisk.img查看一下就知道了:
  解压前:ramdisk.img: gzip compressed data, from Unix
  解压后:ramdisk.img: ASCII cpio archive (SVR4 with no CRC)

3》.使用cpio提取ramdisk.img文件中的内容

新建一个temp目录:
  mkdir temp
  cd temp
  cpio -i -F ../ramdisk.img
解压以后可以在temp目录下看到ramdisk.img中的内容。

2. 修改相应要修改的文件后,打包成ramdisk.img文件的步骤如下:

cd /temp
find . |cpio -ov -H newc |gzip > ../ramdisk.img
cd ..
ls
可以看到生成的ramdisk.img文件。

3. 若想将ramdisk.img文件生成uramdisk.img文件
在终端执行下面命令:
/opt/myandroid_R9.2.1/bootable/bootloader/uboot-imx/tools/mkimage -A arm -O linux -T ramdisk -C none -a 0x90C00000 -n "Android Root Filesystem" -d ./ramdisk.img ./uramdisk.img

4.其实由ramdisk.img~uramdisk.img文件的转换过程,就是在ramdisk.img文件中的前加入一些字节。所以由uramdisk.img文件还原到ramdisk.img的步骤如下:

sudo dd if=./uramdisk.img of=./ramdisk.img bs=1024 skip=1

你可能感兴趣的:(解压与压缩ramdisk.img文件,生成uramdisk.img文件)