Pour que la commande suivante puisse fonctionner, il faut préalablement "Convertir..." l'image DMG au format "lecture seule" (à l'aide par exemple du programme standard "Utilitaire de disque" ou, bien entendu, de la commande hdiutil elle-même - voir plus bas -), d'où mon suffixe mnémotechnique "RO". [ $ hdiutil convert -format UDRO -o ImageVolumineuseEnLectureSeule.dmg ImageVolumineuse.dmg ] Cette commande n'est indispensable que si l'image de départ n'est pas déjà en "lecture seule". De plus cette modification peut être réalisée via Utilitaire de disque à l'aide de l'action "Convertir..." du menu Images en choisissant "lecture seule" dans le menu déroulant "Format de l'image :" du panneau de sélection du dossier de destination pour l'image convertie. $ hdiutil imageinfo ImageVolumineuseEnLectureSeule.dmg | grep '^Format' Cette commande permet de vérifier les caractéristiques d'une image, en particulier qu'elle soit bien en lecture seule. La même commande appliquée sur l'image source vous épargnera éventuellement la conversion évoquée juste avant si son format mentionne qu'elle est déjà en "lecture seule". $ hdiutil segment -o ImageMorcelee [-verbose] -segmentSize 10m ImageVolumineuseEnLectureSeule.dmg created: /CHEMIN_ACCES_ABSOLU/ImageMorcelee.dmg created: /CHEMIN_ACCES_ABSOLU/ImageMorcelee.002.dmgpart created: /CHEMIN_ACCES_ABSOLU/ImageMorcelee.003.dmgpart created: /CHEMIN_ACCES_ABSOLU/ImageMorcelee.004.dmgpart NOTE : un hdiutil ne montre aucune différence comme le montre l'exemple suivant $ hdiutil pmap ImageMorcelee.dmg Partition List ## Type_________________ Name____________ Start___ Size____ End_____ Sig_ 0 Apple_partition_map Apple 1 63 63 1 Apple_HFS disk image 64 81840 81903 2 Apple_Free 81904 16 81919 Legend - ... extended entry + ... converted entry Type 1 partition map detected. Block0.blockSize 0x0200 NativeBlockSize 0x0200 Options: PMEXTENDEDMODE PMSECTORIZE PMSORTMAP PMFREEGENERATE PMFREECOMBINE PMVOLSYNTH PMSKIPZEROLGH (-options xsSgcvk) Pas plus que n'en montrent la même commande appliquée aux différents fichiers .dmgpart PRESQUE LA MÊME CHOSE mais avec la compression en plus (ce que permet aussi le format "comprimée" de l'option "Convertir..." du programme standard "Utilitaire de disque") ET en ligne de commande : $ hdiutil convert -format UDZO -o ImageCompresseeEnLectureSeule.dmg ImageVolumineuse.dmg (le .dmg dans ImageCompresseeEnLectureSeule.dmg est facultatif. hdiutil l'ajoute tout seul le cas échéant) puis $ hdiutil segment -o ImageMorceleeCompressee -segmentSize 5m ImageCompresseeEnLectureSeule.dmg ET cela marche (montage, exploitation, ?gravage?, ...) tout aussi bien malgré la compression qui persiste même après le découpage de l'image. REMARQUE : sous réserve de les convertir en lecture seule (optionnellement compressées), la dissection d'image ISO "standards" fonctionne tout aussi bien (je n'ai pas encore validé la partie gravage mais seulement les montage et exploitation). REMARQUE : ne pas se laisser déconcerter par l'extension .dmg, cette démarche marche aussi parfaitement avec des images "standard" au format ISO. ASSEZ SURPRENANT : les noms de fichiers des différents morceaux (le premier MAIS AUSSI n'importe lesquels des suivants) peuvent s'appeler de n'importe quelle façon (y compris toute modification ou même suppression du suffixe .dmgpart) DU MOMENT qu'ils résident TOUS dans le même répertoire. Il y a fort à parier que Utilitaire de disque recherche des signatures bien précises à l'intérieur des fichiers disponibles dans le dossier depuis lequel on essaye de monter l'image découpée. AUTRES REMARQUES DU MÊME ACABIT : il est possible de monter une image découpée en montant n'importe lequel de ses morceaux. Le Finder lance automatiquement DiskImageMounter quand on clique sur n'importe lequel des morceaux d'une image découpée ET CE, même en l'absence d'une quelconque extension, MÊME en l'absence de resource fork, et MÊME sans méta données spécifiquement HFS+ du genre "type" ou "creator" (vérifiable avec GetFileInfo). Si cela ne se fait pas en lisant un nombre "magique" (une signature) à l'intérieur du fichier même (que malheureusement le fichier de signatures de la commande file sous Unix ne permet pas de dévoiler), alors je ne comprends pas. D'autant que même en essayant de prendre le système en défaut, je n'arrive pas à le tromper, y compris avec un doublon de morceau ou en remaniant les numéros d'ordre dans les noms de fichiers. MONTAGE/DEMONTAGE : $ hdiutil attach netbsd_next.005.dmgpart Initialisation... Vérification... Somme de contrôle de NetBSD 1.6.2 CD next68kcd (Apple_ISO : 0)... ............................................................................................................... NetBSD 1.6.2 CD next68kcd (Apple_ISO : 0) : vérifiée CRC32 $32CF36E1 Vérification terminée... vérifiée CRC32 $BF847DD0 Ajout en pièce jointe... Presque achevé... Finalisation... /dev/disk2 /Volumes/NetBSD 1.6.2 CD $ hdiutil detach disk2 "disk2" unmounted. "disk2" ejected. hdiutil POURRAIT PEUT ÊTRE FAIRE L'OBJET D'UNE PAGE TERMINAL !!! et une autre page sur rsync pour un emploi autant sur réseau local que de plus en plus sur Internet : rsync rsync://ftp.leo.org/OpenBSD/3.4/macppc/ => lecture (listing) du dossier distant rsync rsync://ftp.leo.org/OpenBSD/3.4/macppc/INSTALL.macppc . => copie du fichier distant en local sous le même nom rsync -P rsync://rsync.fr.NetBSD.org/NetBSD/iso/1.6.2/next68kcd.iso . => avec les options --progress et --partial $ ls -la => PENDANT le transfert ! ... -rw------- 1 yannick admin 15400960 28 Apr 15:26 .next68kcd.iso.HGfymt ... LA CONCLUSION : 58720256 100% 282.71kB/s 0:03:22 ================================================================== OPTIONNEL !!! $ hdiutil imageinfo image.dmg $ hdiutil pmap image.dmg Partition List ## Type_________________ Name____________ Start___ Size____ End_____ Sig_ 0 Apple_partition_map Apple 1 63 63 1 Apple_HFS disk image 64 81840 81903 2 Apple_Free 81904 16 81919 Legend - ... extended entry + ... converted entry Type 1 partition map detected. Block0.blockSize 0x0200 NativeBlockSize 0x0200 Options: PMEXTENDEDMODE PMSECTORIZE PMSORTMAP PMFREEGENERATE PMFREECOMBINE PMVOLSYNTH PMSKIPZEROLGH (-options xsSgcvk)