87 votes

Comment puis-je ouvrir un fichier .dmg ?

J'ai un fichier .dmg, et je n'arrive pas à comprendre comment l'ouvrir. Comment puis-je l'ouvrir?

4voto

cat Points 1562

Dans le cas de certains .dmg, vous ne pouvez ni les extraire avec 7z x, ni monter le résultat de dmg2img.

Dans ce cas, le .img résultant de dmg2img votre.dmg new.img peut avoir ses partitions extraites avec 7z x:

$ 7z x factor-macosx-x86-64-0.98.dmg
[...]
Extraction de l'archive : factor-macosx-x86-64-0.98.dmg
ERREUR : factor-macosx-x86-64-0.98.dmg
factor-macosx-x86-64-0.98.dmg
Erreur d'ouverture : Impossible d'ouvrir le fichier en tant qu'archive [Dmg]

$ dmg2img factor-macosx-x86-64-0.98.dmg factor.img
[...]
factor-macosx-x86-64-0.98.dmg --> factor.img
[...]
Archive décomprimée avec succès en tant que factor.img

$ sudo mount -o loop -t hfsplus factor.img /mnt
mount : /mnt : mauvais type de système de fichiers, mauvaise option, mauvais superbloc sur /dev/loop5, codepage manquante ou programme d'aide, ou autre erreur.

$ 7z x factor.img

[...]
Extraction de l'archive : factor.img
[...]
Tout est correct

Dossiers : 2717
Fichiers : 10266
Taille : 176431113
Compression : 264214528

$ ls -lah factor factor/factor/
factor:
total 24K
drwx------  6 cat cat 4.0K 30 juil. 2018  .
drwxr-xr-x 21 cat cat 4.0K 19 févr. 16:28  ..
drwx------  8 cat cat 4.0K 30 juil. 2018  factor
drwx------  2 cat cat 4.0K 30 juil. 2018 '[HFS+ Private Data]'
drwx------  2 cat cat 4.0K 30 juil. 2018 '.HFS+ Private Directory Data'$'\r'
drwx------  2 cat cat 4.0K 30 juil. 2018  .Trashes

factor/factor/:
total 97M
drwx------   8 cat cat 4.0K 30 juil. 2018 .
drwx------   6 cat cat 4.0K 30 juil. 2018 ..
drwx------ 163 cat cat 4.0K 30 juil. 2018 basis
drwx------  45 cat cat 4.0K 30 juil. 2018 core
-rw-r--r--   1 cat cat  702 30 juil. 2018 .dir-locals.el
drwx------ 288 cat cat  12K 30 juil. 2018 extra
-rw-r--r--   1 cat cat   32 30 juil. 2018 factor
drwx------   3 cat cat 4.0K 30 juil. 2018 Factor.app
-rw-r--r--   1 cat cat  97M 30 juil. 2018 factor.image
-rw-r--r--   1 cat cat   40 30 juil. 2018 .gitattributes
-rw-r--r--   1 cat cat   43 30 juil. 2018 git-id
-rw-r--r--   1 cat cat 366K 30 juil. 2018 libfactor.dylib
-rw-r--r--   1 cat cat  16K 30 juil. 2018 libfactor-ffi-test.dylib
-rw-r--r--   1 cat cat 1.3K 30 juil. 2018 LICENSE.txt
drwx------   9 cat cat 4.0K 30 juil. 2018 misc
-rw-r--r--   1 cat cat 4.6K 30 juil. 2018 README.md
-rw-r--r--   1 cat cat 3.6K 30 juil. 2018 .travis.yml
drwx------   2 cat cat 4.0K 30 juil. 2018 work

Succès!

3voto

binfalse Points 859

Tout d'abord, installez DMG2IMG. Maintenant vous pouvez le convertir en IMG:

dmg2img votre.dmg nouveau.img 

Le IMG peut être monté avec :

sudo modprobe hfsplus
sudo mount -t hfsplus -o loop nouveau.img /mnt

Et jetez un œil à /mnt

1voto

Jacek Dominiak Points 314

Suivant la réponse de @aman et @tuxdna, car dmg2img ne semble pas fonctionner sur des images dmg compressées.

j'ai donc créé un script bash (testé sur ubuntu 14.10) pour automatiser le processus de :

  • extraction avec 7z dans un dossier temporaire
  • recherche de la partition à monter
  • copie du dossier/partition hfs/hfsplus ailleurs
  • suppression du dossier temporaire
  • montage de la partition

trouvez le ici: https://github.com/aurelien-rainone/scripts/blob/master/mountdmg.sh

exemple d'utilisation:

panty@Computerino:[~/scripts]: mountdmg.sh -t hfsplus -d /mnt ~/Downloads/cutecom-ng.dmg 

7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,2 CPUs)

Processing archive: /home/panty/Downloads/cutecom-ng.dmg

Extracting  0.MBR
Extracting  1.Primary GPT Header
Extracting  2.Primary GPT Table
Extracting  3.free
Extracting  4.hfs
Extracting  5.free
Extracting  6.Backup GPT Table
Extracting  7.Backup GPT Header

Everything is Ok

Files: 8
Size:       33549312
Compressed: 10059312
mountdmg.sh: successfully mounted 4.hfs on /dev/loop0
mountdmg.sh: run sudo umount /dev/loop0 when finished

0voto

FlexMcMurphy Points 141

Les instructions de certains des messages de ce sujet ne fonctionnent que sur les anciennes versions de 7z.

Si vous souhaitez extraire SEULEMENT le fichier 4.hfs d'un fichier .dmg (c'est-à-dire juste un niveau de profondeur) et que vous utilisez une version récente de 7-zip, vous devez utiliser des paramètres différents:

Dans 7-Zip [64] 9.20, vous pouvez utiliser cette commande:

7z x file.dmg 4.hfs

Dans 7-Zip [64] 16.02, vous devez utiliser cette commande:

7z x -t* file.dmg 4.hfs

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X