工作,学习,生活,这里将会有一些记录. 备用域名:http://meisw.wdlinux.cn 注册 | 登陆

修改 i9000 rom 内容的方法

一、准备
可用 root 账户的 Linux 操作系统,建议 Ubuntu 10.1
ROM 升级包(通常为 *.tar 文件)
i9000 刷机程序

刷机方法请自行研究,本文仅对修改做一个简单说明。

二、开始
Ubuntu 默认提供了图形化的应用程序来加压 tar 文件。
我们需要将其解压,得到 factoryfs.rfs 文件。
将其件塞到 Linux 任意一个地方,这里假设保存在 ~/factoryfs.rfs。
在任意地方新建一个空白目录,这里假定名为 ~/rfs。
运行终端,键入下列命令挂载 factoryfs.rfs 为一个磁盘。
此时终端的默认目录应该就是 ~ 了。

1
mount -o loop factoryfs.rfs rfs

如果你之前没有用超级用户权限登录系统,那么此时系统会提示你没有权限,没关系,你可以这样执行:

1
sudo mount -o loop factoryfs.rfs rfs

然后系统会提示你输入超级用户密码,有效期为 15 分钟。
也就是说,在 15 分钟内如果你不使用超级用户权限进行操作,那么超时后你需要重新输入。
而且,不同操作系统的“借用权限命令”是不同的,“sudo”是 Ubuntu 中的做法,其他系统请自行搜索。

此时我们可以用图形化“资源管理器”也就是“文件夹”视图来打开 rfs 文件夹,你会发现这里面就是我们 factoryfs.fs 里面的内容了。
你将可以随心所欲地,或者按照 HTC 设备 rom 修改的方法来修改这里面的文件、应用程序等。
修改完成后在终端执行下面的语句卸载该“磁盘”:

1
umount ~/rfs

同样的,你可能会被要求提供超级用户权限。

值得注意的是,如果你先前没有使用超级用户登录,那么通过图形化界面删除、重命名或者添加文件是非常麻烦的,
因为该“磁盘”是由超级用户权限加载的,所以普通用户不能修改。
除非你修改权限,或者通过终端并使用“sudo”命令来操作,
不过切记,当你改变权限后在卸载该“磁盘”前必须将权限改回去,否则刷机时可能发生不可预料的问题。

还有一个问题,由于你将一个文件加载为磁盘,那么对于该磁盘来说,容量就等于文件大小,正常情况下是不可改变的,
当然你可以通过磁盘管理工具扩充磁盘空间,不过要小心,这样的改动可能删除 RFS 文件系统的特性,导致刷机失败。
此操作未经 LittleDai 测试。

如果一切正常,那么此时你可以将先前的 tar 文件打开,然后将先前解压处理的 factoryfs.rfs 拖入 tar 文件中的文件列表,
然后请稍等一会儿,等打包过程结束。

此时你将可以使用这个更新过的 tar 文件作为新的刷机包了。

« 上一篇 | 下一篇 »

Trackbacks

点击获得Trackback地址,Encode: UTF-8

发表评论

评论内容 (必填):