最近、私はAndroid ROMに興味があります。それらを変更して再構築したいと思います。
だから、XOOMでテストを行いました。何かをマシンにフラッシュするのはとても簡単です。
MotorolaからROM( http://developer.Motorola.com/products/software/ )を入手しました。そして何が入っているのか知りたいので、開梱したいと思っています.
私はunyaffsを試しましたが、それはbroken img file
と言いました。
私はそれらをマウントしようとしますが、system.imgでうまく機能し、内部にファイルを取得できます。
mount -o loop userdata.img /mnt/userdata
(system.img
と同じ)でuserdata.imgをマウントしたい場合、mount: you must specify the filesystem type
と表示されるので、mount -t ext2 -o loop userdata.img /mnt/userdata
を試して、mount: wrong fs type, bad option, bad superblock on...
と言いました
それで、userdata.img
の内部からファイルを取得する方法は?
回答を参照してください: http://omappedia.org/wiki/Android_eMMC_Booting#Modifying_.IMG_Files
最初に、「圧縮解除」する必要がありますuserdata.img
with simg2img
、それからループデバイス経由でマウントできます。
私は簡単な解決策を見つけました: http://andwise.net/?p=4
(読みやすくするためにわずかに調整されています)
これは、リカバリを使用してフラッシュできる元のsystem.imgをアンパックおよび変更するすべてのユーザー向けです。 system.img(たとえばGoogleファクトリーイメージから取得)は、まばらなext4ループマウントファイルシステムを表します。デバイスの/ systemにマウントされます。このチュートリアルはext4ファイルシステム用です。たとえば、yaffs2のシステムイメージがあります。
Galaxy Nexusでのマウント方法:
/dev/block/platform/omap/omap_hsmmc.0/by-name/system /system ext4 ro,relatime,barrier=1,data=ordered 0 0
前提条件:
- Linuxボックスまたは仮想マシン
- simg2imgおよびmake_ext4fsバイナリ。LinuxパッケージからダウンロードできますAndroid-tools-fsutils
手順:
system.imgと2つのバイナリを1つのディレクトリに配置し、バイナリにexec権限があることを確認します。
パート1-ファイルシステムをマウントする
mkdir sys
./simg2img system.img sys.raw
Sudo mount -t ext4 -o loop sys.raw sys/
次に、システムパーティションを「sys /」にマウントし、「sys /」で必要なものを変更できます。たとえば、de-odex apkおよびフレームワークjar。
パート2 –新しいフラッシュ可能なシステムイメージを作成する
Sudo ./make_ext4fs -s -l 512M -a system new.img sys/
Sudo umount sys
rm -fr sys
これで、次のように入力できます。
fastboot flash system new.img
Androidファイルシステムでは、「system.img」および「userdata.img」はVMS Alpha実行可能ファイルです。「system.img」および「userdata.img」の内容は/ systemおよび/ dataです。ルートファイルシステム上のディレクトリ.yaffs2ファイルシステムを使用するNANDデバイスにマップされています。今、yaffs2イメージファイルはLinux PCにマウントできません。可能であれば、yaffs2ファイルシステムにパックされていないromがあります。次のコマンドを実行して、これらのROMファイルを作成します。
file <system.img/userdata.img>
「VMS Alpha executable」と表示されている場合は、「unyaffs」を使用して抽出できます。
別のオプションは、DDMS(Eclipse SDK)のファイルエクスプローラーを使用することです。そこにあるファイルシステム全体を確認し、目的の場所にファイルをダウンロード/アップロードできます。そうすれば、イメージをマウントして処理する必要がありません。デバイスをUSBデバッグ可能として設定することを忘れないでください(開発者ツールから)