Hai già risposto alla tua domanda, ma io ti espande un po '. L'SDK Android è dotato di immagini del sistema, ad esempio:
$ cd android-sdk-linux/system-images/android-15/armeabi-v7a/
$ ls *.img
ramdisk.img system.img userdata.img
$ cd ~/.android/avd/<img name>.avd/
$ ls *.img
cache.img sdcard.img userdata.img userdata-qemu.img
Però, non tutte le immagini sono dello stesso tipo:
$ file *.img
cache.img: VMS Alpha executable
sdcard.img: x86 boot sector, code offset 0x5a, OEM-ID "MSWIN4.1", sectors/cluster 4, Media descriptor 0xf8, sectors 2048000 (volumes > 32 MB) , FAT (32 bit), sectors/FAT 3993, reserved3 0x800000, serial number 0x17de3f04, label: " SDCARD"
userdata.img: VMS Alpha executable
userdata-qemu.img: VMS Alpha executable
Da sdcard.img
non contiene partizioni extra, può essere montato direttamente senza un parametro di offset (come -o loop,offset=32256
):
$ fdisk -l sdcard.img
You must set cylinders.
You can do this from the extra functions menu.
Disk sdcard.img: 0 MB, 0 bytes
255 heads, 63 sectors/track, 0 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
$ sudo mount -o loop sdcard.img /mnt/
Gli altri file di immagine che sono descritti come 012.315.330.998.sono infatti file yaffs2. Per quanto ne so non possono essere montati direttamente ma possono essere estratti usando le due utilità unyaffs o unyaffs2.
$ mkdir extract
$ cd extract
$ unyaffs ../userdata.img
o
$ unyaffs2 --yaffs-ecclayout ../userdata.img .
Nota, c'è un altro programma di utilità chiamato simg2img
che può essere trovato nell'albero dei sorgenti di Android sotto ./android_src/system/extras/ext4_utils/
che viene utilizzato su file img ext4 compressi. Tuttavia, se applicato in modo errato alle immagini yaffs2
si lamenta con Bad magic
.