Comment monter le fichier IMG android sous linux? [fermé]
Récemment, je suis d'intérêt dans la rom android, je veux changer et de les reconstruire.
Donc, j'ai fait quelques tests sur mon XOOM, il est très facile de flash quelque chose dans la machine.
J'ai reçu un peu de ROM de MOTOROLA (http://developer.motorola.com/products/software/),
ce sont des fichiers img, et je veux savoir ce qu'il y a dedans, j'espère les déballer.
j'ai essayé unyaffs, il a dit broken img file
.
J'essaie de les monter, c' fonctionne très bien sur le système.img, et je peux avoir le fichier à l'intérieur.
quand je veux monter userdata.img par mount -o loop userdata.img /mnt/userdata
(le même que system.img
), il me dit mount: you must specify the filesystem type
j'ai donc essayer de l' mount -t ext2 -o loop userdata.img /mnt/userdata
, il a dit mount: wrong fs type, bad option, bad superblock on...
alors, comment obtenir le fichier de l'intérieur de <!--6?
5 réponses
vous devez d'abord" décompresser"userdata.img
simg2img
, alors vous pouvez le monter via le périphérique loop.
j'ai trouvé une solution simple: http://andwise.net/?p=403
Citation
(avec de légers ajustements pour une meilleure lisibilité)
C'est pour tous ceux qui veulent décompresser et de modifier l'original système.img que vous pouvez flash en utilisant la récupération. système.img (que vous obtenez à partir des images de Google factory par exemple) représente un système de fichiers sparse ext4 boucle montée. Il est monté dans / de votre appareil. Notez que ce tutoriel est pour le système de fichiers ext4. Vous pouvez avoir l'image du système qui est yaffs2, par exemple.
La façon dont il est monté sur le Galaxy Nexus:
/dev/block/platform/omap/omap_hsmmc.0/by-name/system /system ext4 ro,relatime,barrier=1,data=ordered 0 0
Prérequis:
- Linux ou de la boîte de la machine virtuelle
- simg2img et make_ext4fs binaires, qui peut être téléchargé à partir d'ici http://andwise.net/?attachment_id=406 (windows), ou en le package linux android-tools-fsutils
Procédure:
système.img et les 2 binaires dans un répertoire, et assurez-vous que les binaires ont la permission exec.
Partie 1 – monter le système de fichiers
mkdir sys
./simg2img system.img sys.raw
sudo mount -t ext4 -o loop sys.raw sys/
Ensuite, vous avez votre partition système monté dans "sys/’ et vous pouvez modifier ce que vous voulez dans" sys/’. Par exemple, les APK de-odex et le cadre pot.
Partie 2 – création d'une nouvelle flashable l'image du système d'
sudo ./make_ext4fs -s -l 512M -a system new.img sys/
sudo umount sys
rm -fr sys
Maintenant, vous pouvez simplement taper:
fastboot flash system new.img
dans le système de fichiers Android, " système.img" et " userdata.img" sont VMS Alpha exécutable. "système.img" et " userdata.img" avoir le contenu de /system et /répertoire de données sur le système de fichiers racine. Ils sont mappés sur les périphériques NAND avec le système de fichiers yaffs2. Maintenant, le fichier image de yaffs2 ne peut pas être monté sur un PC linux. Si vous le pouvez, vous avez peut-être une rom qui n'est pas dans le système de fichiers yaffs2. Vous pouvez vérifier ces fichiers rom en exécutant la commande:
file <system.img/userdata.img>
si elle affiche "VMs Alpha executable" alors vous pouvez utiliser "unyaffs" pour l'extraire.
une autre option serait d'utiliser L'Explorateur de fichiers dans DDMS (Eclipse SDK), vous pouvez voir l'ensemble du système de fichiers et télécharger/télécharger des fichiers à l'endroit désiré. De cette façon, vous n'avez pas à monter et traiter des images. N'oubliez pas de configurer votre périphérique comme déboguable USB (À partir D'outils de développement)
J'ai trouvé que le montage ISO de Furius fonctionne mieux pour moi. J'utilise un distro Knoppix basé sur Debian. Je l'utilise pour Ouvrir system.img
dossiers tout le temps.
Furius ISO mount:https://packages.debian.org/sid/otherosfs/furiusisomount
"Quand je veux le monter userdata.img par mount-o loop userdata.img/mnt / userdata (le même que le système.img), il me dit mount: vous devez spécifier le type de système de fichiers alors j'essaie la boucle mount-t ext2-o userdata.img /mnt/userdata, il dit de montage: wrong fs type, bad option, bad superblock sur...
Donc, comment obtenir le fichier à partir de l'intérieur de userdata.img?"
Pour charger .img
fichiers vous devez sélectionner loop et charger le .img
Sélectionner la boucle
Suivant vous sélectionnez mount Sélectionner mont
Furius ISO mount gère toutes les autres options chargeant le .img
votre fichier /home/dir.