linux解包img命令 linux解gz包

如何将IMG解包及重新打包

修改中文化菜单,以及修改开机画面都需要将IMG解包unpack,修改后重新

创新互联专注于张家川回族自治网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供张家川回族自治营销型网站建设,张家川回族自治网站制作、张家川回族自治网页设计、张家川回族自治网站官网定制、微信小程序开发服务,打造张家川回族自治网络公司原创品牌,更为您提供张家川回族自治网站排名全网营销落地服务。

打包repack。解包、打包都需要Dreambox的linux环境,当时你也可以自己

配置一个支持squashFS的linux来搞。

DM500S的存储空间十分有限,故需要mount一个NFS磁盘来操作。为什么一定

要NFS磁盘?windows机器共享出来的CIFS磁盘不行吗?不行!只有NFS磁盘

上才可以执行解包、打包工具,而且解包后的IMG里,有很多是符号连接文

件,也只有NFS磁盘才能支持。mount NFS及swap的方法见satfan大侠的文

章,已经写得很详细:

代码:

root@dreambox:/var/mnt/nfs df -h

Filesystem Size Used Available Use% Mounted on

/dev/root 3.8M 3.8M 0 100% /

/dev/mtdblock/1 2.8M 444.0k 2.3M 16% /var

192.168.1.8://home/nfs 9.2G 516.4M 8.2G

6% /var/mnt/nfs

root@dreambox:/var/mnt/nfs dd if=/dev/zero

of=/var/mnt/nfs/ram

bs=1M count=128

128+0 records in

128+0 records out

root@dreambox:/var/mnt/nfs mkswap -c /var/mnt/nfs/ram

Setting up swapspace version 1, size = 134213632 bytes

root@dreambox:/var/mnt/nfs losetup /dev/loop/0

/var/mnt/nfs/ram

root@dreambox:/var/mnt/nfs free

total used free shared

buffers

Mem: 30116 29612 504

0 760

Swap: 131064 0 131064

Total: 161180 29612 131568

root@dreambox:/var/mnt/nfs cat /proc/meminfo

MemTotal: 30116 kB

MemFree: 504 kB

Buffers: 760 kB

Cached: 20012 kB

SwapCached: 0 kB

Active: 9408 kB

Inactive: 16576 kB

HighTotal: 0 kB

HighFree: 0 kB

LowTotal: 30116 kB

LowFree: 504 kB

SwapTotal: 131064 kB

SwapFree: 131064 kB

Dirty: 4 kB

Writeback: 0 kB

Mapped: 9220 kB

Slab: 2176 kB

Committed_AS: 44240 kB

PageTables: 168 kB

VmallocTotal: 475136 kB

VmallocUsed: 28748 kB

VmallocChunk: 443900 kB

root@dreambox:/var/mnt/nfs

解包、打包工具见附件压缩包

解压缩后,和原版IMG文件一起放到NFS磁盘下,一共有五个文件:

- mkcramfs

- mkdreamboxfs

- mksquashfs

- uncramfs

- undreamboxfs

为这几个文件增加执行权限:

为这几个文件增加执行权限:

代码:

root@dreambox:/var/mnt/nfs chmod +x *

OK,接下来就可以做解包及打包工夫了。

*将原版的pli IMG解包到img1这个目录下:

代码:

root@dreambox:/var/mnt/nfs ./undreamboxfs pli-Helenite-dm500-

20070417-2696.img ./img1

9928+0 records in

9928+0 records out

Done!

root@dreambox:/var/mnt/nfs

将完成修改的IMG重新打包,这个步骤挺费时间的:

代码:

root@dreambox:/var/mnt/nfs ./mkdreamboxfs img1 new.img

Directory data: 164 bytes

Everything: 1000 kilobytes

Super block: 76 bytes

CRC: 72538600

155648+0 records in

155648+0 records out

Ready to make the squashFS part! This can take 1 or 2 minutes!

Creating big endian 2.1 filesystem on tmp_mkdreambox_3, block

size 65536.

Big endian filesystem, data block size 65536, compressed data,

compressed metadata, compressed fragments

Filesystem size 4963.29 Kbytes (4.85 Mbytes)

35.86% of uncompressed filesystem size (13840.55 Kbytes)

Inode table size 6016 bytes (5.88 Kbytes)

24.73% of uncompressed inode table size (24324 bytes)

Directory table size 7914 bytes (7.73 Kbytes)

50.69% of uncompressed directory table size (15614 bytes)

Number of duplicate files found 49

Number of inodes 1086

Number of files 788

Number of fragments 57

Number of symbolic links 199

Number of device nodes 0

Number of fifo nodes 0

Number of socket nodes 0

Number of directories 99

Number of uids 1

root (0)

Number of gids 0

Done!

root@dreambox:/var/mnt/nfs

解包插件 打包插件下载

img解包后修改开机logo和搜索转发器背景教程

作者: 武汉卫星天线安装网 来源: 酷维科技 加入日期:2010-4-16 点击率:3

img解包后修改开机logo和搜索转发器背景教程

.

首先解包后进入 \etc\init.d 文件夹 找到 RCS 这个文件,用文本编辑器打开,找到 /bin/showlogo 这个语句所在位置,一般原版img这里应该是个 if判断语句,建议将这里的整个判断语句组修改成如下

if [ ! -e /var/etc/logo ] ; then 判断个人用户是否在etc下放了自定义开机画面是的话用自定义画面开机

/bin/showlogo /var/etc/logo

else

/bin/showlogo /share/tuxbox/enigma/pictures/logo 用户没自定义的话用系统自带的开机

fi

这里就需要把系统默认开机画面放到/share/tuxbox/enigma/pictures文件夹里取名为 logo 用户要自己定义的话可以直接FTP上传到VAR/ETC/下面取名logo就可以实现更改开机画面了.

MP3和搜索转发器背景的画面在share\tuxbox\enigma\pictures 文件夹里,共有三个

SCan.mvi mp3.mvi radio.mvi 建议这里可以用快捷方式定义到 系统logo一个文件【用来减少img文件大小】快捷方式命令在telnet 下运行,命令为 ln -s 文件路径 快捷方式名

比如: LN -s /var/etc/logo scan.mvi 就是把var/etc/文件夹下的logo画面做扫描转发器画面。

查看linux内核文件initrd.img

1、解包

2.6及以后内核中的initrd.img采用cpio压缩,不再是2.4内核使用的ext2格式,无法使用mount -o loop 挂载。需要使用gunzip解压缩,然后再使用cpio解包。以下作为示例:

2、压包

通过以上命令就将initrd.img解压了,现在就可以对其进行编辑,完成后使用以下命令重新压制。示例如下:

再将其改名拷贝至/boot目录,重启就可以观察修改后的效果。重启后 无法成功引导 。这是因为生成的initrd.img不对。解决如下:

3、重新生成initrd

initrd.img是一个用gzip压缩的文件,这主要是为了制作启动盘,因为启动盘只有1.44M,这个文件的原始大小是几个M,压缩后大概3、4百K。这个文件使用mkinitrd命令产生。

在2.6以前版本中的Initrd.img采用的ext2经gzip压缩而成。要看到其里面的内容,首先是解压该文件,由于gunzip解压的文件有扩展名要求,所以:

关于Linux下解包boot.img问题

boot.img 是特殊格式,应该现在见到的基本都是 uboot 的 img 吧?

我记得这个格式其实就是 boot.img.gz 前面加上 512字节的表头。用 dd 读出后面的数据就能用 gz 解压缩了。

这种嵌入式 ROM 都是有专门解包工具的,不是随便找个解压缩软件就能解压缩的。

如果可以,还是去找专门的解包工具吧。


分享文章:linux解包img命令 linux解gz包
本文链接:http://scyanting.com/article/ddseooe.html