Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 08/10/2014, à 11:42

Patrice Allais

[LTS 12.04 & 14.04] HFSPLUS : certains fichiers sont vides

Bonjour,

J'essaye d'accéder à l'arborescence du SDK  IOS 7.1 au travers du .dmg
de XCode 5.1.1. Je l'ai converti en  un .img avec dmg2img. Je cible la
3ème partition. Quand je monte le  .img, des milliers de fichiers sont
considérés comme vides.  L'auteur de l'outil me  conseille de regarder
du côté du module hfsplus.

Toute piste sera la bienvenue. Voici les commandes passées (12.04):

allais@legolas:~$ uname -a
Linux legolas 3.2.0-69-generic #103-Ubuntu SMP Tue Sep 2 05:02:14 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

allais@legolas:~$ dpkg -l | grep hfs
ii  hfsplus        1.0.4-12build3      Tools to access HFS+ formatted volumes
ii  hfsprogs       332.25-10           mkfs and fsck for HFS and HFS+ file systems
ii  hfsutils       3.2.6-11build3      Tools for reading and writing Macintosh volumes
ii  libhfsp0       1.0.4-12build3      Shared library to access HFS+ formatted volumes

root@legolas:/media/dmg# ls -ltr
total 17231596
-rw-rw-r-- 1 allais allais 2285917493 sept. 24 18:17 xcode_5.1.1.dmg

root@legolas:/media/dmg# dmg2img -l xcode_5.1.1.dmg

dmg2img v1.6.5 (c) vu1tur (to@vu1tur.eu.org)

xcode_5.1.1.dmg --> (partition list)

partition 0: Driver Descriptor Map (DDM : 0)
partition 1:  (Apple_Free : 1)
partition 2: Apple (Apple_partition_map : 2)
partition 3: disk image (Apple_HFS : 3)
partition 4:  (Apple_Free : 4)

root@legolas:/media/dmg# dmg2img -p 3 -i xcode_5.1.1.dmg -o xcode_5.1.1-p3.img

dmg2img v1.6.5 (c) vu1tur (to@vu1tur.eu.org)

xcode_5.1.1.dmg --> xcode_5.1.1-p3.img


decompressing:
opening partition 3 ...             100.00%  ok

Archive successfully decompressed as xcode_5.1.1-p3.img

You should be able to mount the image [as root] by:

modprobe hfsplus
mount -t hfsplus -o loop xcode_5.1.1-p3.img /mnt

root@legolas:/media/dmg# ls -ltr
total 20031184
-rw-rw-r-- 1 allais allais 2285917493 sept. 24 18:17 xcode_5.1.1.dmg
-rw-r--r-- 1 root   root 2866774016 oct.   2 12:26 xcode_5.1.1-p3.img

root@legolas:/media/dmg# modprobe hfsplus
root@legolas:/media/dmg# mkdir xcode-5.1.1
root@legolas:/media/dmg# mount -t hfsplus -o loop $PWD/xcode_5.1.1-p3.img $PWD/xcode-5.1.1
root@legolas:/media/dmg# cd /media/dmg/xcode-5.1.1
root@legolas:/media/dmg/xcode-5.1.1# ls
Applications  Resources  Xcode.app

root@legolas:/media/dmg/xcode-5.1.1# find . -type d -name '*[Ss][Dd][Kk]*'
./Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs
./Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk
./Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs
./Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk
./Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Interface Builder/Plug-ins/IBSDKPlugin.ibplugin
./Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
./Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk
./Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk

root@legolas:/media/dmg/xcode-5.1.1# find ./Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk -type f ! -empty -ls
86225 18544 -rwxr-xr-x   1 root     root     18985184 mars  29 2014 ./Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/PrivateFrameworks/FaceCore.framework/FaceCore
87030 85048 -rwxr-xr-x   1 root     root     87086496 avril  2 2014 ./Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/PrivateFrameworks/iWorkImport.framework/iWorkImport
86952 61016 -rwxr-xr-x   1 root     root     62478768 mars  29 2014 ./Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/PrivateFrameworks/WebCore.framework/WebCore

J'ai aussi essayé avec kpartx mais je n'arrive pas plus à accéder à tous les fichiers "pleins" du SDK.

Le problème est similaire avec une Fedora 20.

Avec mes salutations,
Patrice Allais.

Dernière modification par Patrice Allais (Le 10/10/2014, à 15:38)

Hors ligne

#2 Le 08/10/2014, à 20:50

jacobus77

Re : [LTS 12.04 & 14.04] HFSPLUS : certains fichiers sont vides

Si c'est un dmg récent possible qu'Apple ai encore modifié le format, regardes sur le site de dmg2img si c'est bien la dernière version dans ubuntu.
Sinon tu es sûr que ces fichiers ne sont pas réellement vide dans le dmg ?

Dernière modification par jacobus77 (Le 08/10/2014, à 20:50)

Hors ligne

#3 Le 10/10/2014, à 10:08

Patrice Allais

Re : [LTS 12.04 & 14.04] HFSPLUS : certains fichiers sont vides

Bonjour,

Pour la 12.04 qui n'était pas à jour, j'ai généré le binaire de la dernière version; pour la 14.04 il y avait déjà la dernière version de l'outil. Le .dmg a été téléchargé du site Apple et est le paquet officiel de XCode 5.1.1. Lorsque le .img résultant est accédé sous MacOS, les fichiers ne sont pas vides. L'auteur de l'outil dmg2img suggère de chercher du côté d'une défaillance de hfsplus.

Avec mes salutations,
Patrice Alllais.

Hors ligne

#4 Le 10/10/2014, à 23:09

jacobus77

Re : [LTS 12.04 & 14.04] HFSPLUS : certains fichiers sont vides

ls -lha ./Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/PrivateFrameworks/FaceCore.framework/FaceCore
-rwxr-xr-x 1 root root 19M mars  29  2014 ./Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/PrivateFrameworks/FaceCore.framework/FaceCore

J'avais XCode 5.1.1 de côté j'ai donc testé pour voir et pas de soucis.
Effectivement possible que ce soit un défaut de hfs corrigé depuis, pour info, j'utilises le  noyau 3.17.0 d'ubuntu mainline kernel.
L'autre possiblité est que le dmg soit corrompu mais normalement dmg2img l'aurait détecté.

Dernière modification par jacobus77 (Le 10/10/2014, à 23:10)

Hors ligne

#5 Le 18/11/2014, à 15:12

Patrice Allais

Re : [LTS 12.04 & 14.04] HFSPLUS : certains fichiers sont vides

Bonjour,

J'ai essayé sur la 12.04 les noyaux 3.11, 3.13, 3.16 et 3.17 sans plus de succès : la commande "find .... ! -empty" ne retourne que 3 fichiers qui ne sont pas vides : ceux que j'indique dans mon post originel. Les .h et les .a sont tous vides.

Les fichiers sont par contre "pleins" lorsque j'accède le fichier .dmg avec l'utilitaire darling-dmg. Je vais me contenter de cette solution pour l'instant.

Avec mes salutations,
Patrice Allais.

Hors ligne

#6 Le 20/11/2014, à 19:02

jacobus77

Re : [LTS 12.04 & 14.04] HFSPLUS : certains fichiers sont vides

ah ay temps pour moi, j'avais juste cheké les fichiers pas vide, forcément... Merci pour l'info sur darling-dmg, je garde ça sous le coude.

Hors ligne