如何将IMG解包及重新打包

如何将IMG解包及重新打包,第1张

修改中文化菜单,以及修改开机画面都需要将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画面做扫描转发器画面。

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

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

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

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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7437115.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存