首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Android改包3

2. ROM的提取 这一节介绍如何从ROM中提取文件。最常用的就是提取apk文件。在论坛中经常看到求救帖子:“大侠,救命哇,我把XXXX.apk给删掉了,手机出错。。。”。我说,你完全可以自救,不必在论坛里跪求他人或在线等。出路很简单:就是自己先做备份或有手段去提取文件。另外,如果你掌握了文件的提取方法,你就可以从其它ROM中方便地移植你喜欢的应用程序和功能了。例如,移植输入法,更换主题或桌面,等等。 所谓ROM的提取或从ROM中“提取”文件,实际上就是要对factoryfs.rfs文件进行解包,把里面要用的文件复制出来。factoryfs.rfs是镜像文件,用了三星自定义的格式。RFS是Robust File System的缩写。在刷机包里还有cache.rfs和dbdata.rfs,都是同类镜像文件。对它们的解包打包方法是相同的。下面来介绍几种常用解包方法。 1) 直接从卡刷ROM包提取 如果你的ROM是“卡刷”包,直接提取就好啦,不需要解包。卡刷包是zip格式的压缩文件。用WinRAR或WinZip直接解压ROM文件就得到所有的原文件。一个典型的ROM打开后有三个文件夹:    META-INF      签名文件和刷机脚本文件    system          这就是factoryfs.rfs内的所有内容    updates         存放内核和基带 进入/system/app目录,一切apk程序都在这里,对应于factoryfs.rfs内的内容和手机的/system目录。刷机就是把/system下的内容复制到规定的分区 2) 用RE管理器从手机里提取,复制到SD卡 还有一种ROM的提取方法,不需要其它软件。用RE管理器,利用它的“多选”-“全选”-“复制”功能,一次把多个文件复制到手机的SD卡上。然后,进入“大容量存储”把文件拷贝到计算机里。这也是做备份的一种常用方法。 3) 利用91手机助手从手机提取 还有一种不需要对ROM解包就可以提取到文件的途径。如果你是91手机助手的使用者,你一定熟悉它。打开91手机助手的文件管理,想提取那个就提取那个。把文件直接拖出来放到你的计算机里就行了。 4) MagicISO/UltraISO/WinImage软件 由于factoryfs.rfs是镜像文件,你可以用某些镜像解包软件来打开刷机文件factoryfs.rfs。常用的软件有MagicISO和UltraISO。论坛里有介绍和下载链接。我在上一节的例子中就是用到MagicISO。类似的软件有很多,你们可能各有利器。最近,也用过WinImage,结果相同。 注意:这些软件只能用于解包提取文件之用,不能进行RFS打包操作。 5) 在Linux下通过对factoryfs.rfs的解包 在Linux环境下,通过对factoryfs.rfs进行解包操作是提取ROM的高级手段。在下一节详细叙述。 3. RFS的解包和打包 先强调一下,我们这一节讲的RFS文件的解包和打包不是为了提取文件之用。我们的目的并不仅仅停留在提取ROM文件上的层面上。更重要的是,我们不但要对factoryfs.rfs能解包,我们需要对包内的内容进行修改后还要能够再打包成RFS文件格式。其最终目的是为了定制自己的ROM刷机包。从技术上讲,RFS文件的打包只能在Linux系统下进行。我们在这一节就介绍如何在Linux系统下对RFS文件的解包和打包。 1) 在计算机的Linux系统下 计算机已经安装了Linux操作系统和配置了java环境。下面是对factoryfs.rfs的解包和RFS打包过程。在Linux下主要使用mount和umount两个命令,要求具有超级用户权限。操作步骤如下:   a)先创建一个子目录:/home/sunny/Work   b)把factoryfs.rfs复制到/home/sunny/Work这个子目录   c)再在Work之下创建一个子目录System   d)在用户终端/home/sunny/Work输入     $ su       Password:XXXXXXXX(你的Root口令) 输入“Password”后,获得超级用户权限,提示符变成 root@ubuntu:/home/sunny/Work#   e)在超级用户终端/home/sunny/Work# 输入下列命令,挂载 RFS文件factoryfs.rfs 为一个磁盘:     # mount –o loop factoryfs.rfs System 进入“磁盘”System目录,你就可以看到factoryfs.rfs解包后的所有内容。像对待正常文件夹一样,你可以用“文件夹”浏览器查看 System文件夹里面的内容,但是不能删除

01

如何使用Linux dd命令克隆磁盘

在本教程中,我们将参考Linux dd命令的一个实际示例,系统管理员可以使用该命令将以MBR或GPT布局样式分区的较大HDD的Windows操作系统或Linux操作系统迁移到较小的SSD。 在本节摘录中,我们将使用安装在具有多个分区的硬盘上的Windows系统作为示例。 在HDD以MBR方案分区并且包含具有多个逻辑分区的扩展分区或分区无序的情况下,该方法可能变得相当复杂。 如果是这样,我建议你不要使用这种方法。 在这种情况下,使用ddrescure更安全,它可以克隆整个磁盘布局(分区表和每个分区内的已使用块),而不会实际传输空的空间。 可以通过从Ubuntu主存储库安装gddrescue包获得DDrescure。

02

git 使用小结大全

git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息 git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可 git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容 以下是一些reset的示例: #回退所有内容到上一个版本(HEAD回退add的版本):git reset HEAD^ #回退a.py这个文件的版本到上一个版本:git reset HEAD^ a.py #向前回退到第3个版本:git reset –soft HEAD~3 #将本地的状态回退到和远程的一样 :git reset –hard origin/master #回退到某个版本(–hard回退commit的版本) ,使用git log查询提交日志

02
领券