Как открыть файл .dmg?

59

У меня есть файл .dmg , и я не могу понять, как открыть Это. Как я могу открыть его?     

задан jrg 29.04.2011 в 20:01
источник

7 ответов

47

Установите dmg2img .

Затем прочитайте страницу с информацией о пакете и страница руководства , чтобы узнать, полезен ли он вам.

Приложение, похоже, конвертирует .dmg в файл, который можно установить с помощью команды mount :

dmg2img file.dmg imagefile.img

Из статьи в Википедии , следующая команда, похоже, доступна для этого:

sudo mount -o loop -t hfsplus imagefile.img /mnt

Таким образом, файл imagefile.img является результатом dmg2iso , и содержимое будет доступно в /mnt . Если тип hfsplus не обнаружен, вам может потребоваться загрузить модуль ядра:

sudo modprobe hfsplus

Когда закончите, вы можете размонтировать его, выполнив:

sudo umount /mnt
    
ответ дан Lekensteyn 29.04.2011 в 20:11
источник
34

Чтобы извлечь его, гораздо проще использовать 7zip. Просто выполните:

7z x file.dmg
    
ответ дан rumpel 15.02.2013 в 10:19
27

Это работает для меня:

  • Извлечение с использованием 7z x
  • Найдите файл раздела hfs
  • Установите его в каталог

Извлечь, используя 7z x

root # aptitude install p7zip-full
root # 7z x ../mysql-5.5.28-osx10.6-x86_64.dmg 

7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=en_IN,Utf16=on,HugeFiles=on,4 CPUs)

Processing archive: ../mysql-5.5.28-osx10.6-x86_64.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:       125475840
Compressed: 117543935
root # ls
0.MBR  1.Primary GPT Header  2.Primary GPT Table  3.free  4.hfs  5.free  6.Backup GPT Table  7.Backup GPT Header

Найдите раздел hfs (здесь это файл 4.hfs ):

root # ls -l
total 122548
-rw-r--r-- 1 root root       512 Feb  5 16:06 0.MBR
-rw-r--r-- 1 root root       512 Feb  5 16:06 1.Primary GPT Header
-rw-r--r-- 1 root root     16384 Feb  5 16:06 2.Primary GPT Table
-rw-r--r-- 1 root root      3072 Feb  5 16:06 3.free
-rw-r--r-- 1 root root 125435904 Feb  5 16:06 4.hfs
-rw-r--r-- 1 root root      2560 Feb  5 16:06 5.free
-rw-r--r-- 1 root root     16384 Feb  5 16:06 6.Backup GPT Table
-rw-r--r-- 1 root root       512 Feb  5 16:06 7.Backup GPT Header

Установите его в папку:

root # mkdir t
root # mount -oloop 4.hfs t
root # cd t/
root # ls
mysql-5.5.28-osx10.6-x86_64.pkg  MySQL.prefPane  MySQLStartupItem.pkg  ReadMe.txt
    
ответ дан tuxdna 05.02.2014 в 12:11
5

Если вам удастся с инструкциями от Lekensteyn и binfalse больше силы для вас. Если вы получаете

$ lsmod | grep hfs
hfs                    54782  0 
hfsplus                84912  0
$ sudo mount -o loop,ro -t hfsplus imagefile.img /mnt
mount: wrong fs type, bad option, bad superblock on /dev/loop0,

Прямо сейчас Ubuntu поставляется с версией dmg2img версии 1.6.2, а версия 1.6.4 иногда имеет значение. Также вы можете извлечь определенные разделы из dmg, и только некоторые из них - hfs +

$ dmg2img -l file.dmg
partition 0: Protective Master Boot Record (MBR : 0)
partition 1: GPT Header (Primary GPT Header : 1)
partition 2: GPT Partition Data (Primary GPT Table : 2)
partition 3:  (Apple_Free : 3)
partition 4: disk image (Apple_HFS : 4)
partition 5:  (Apple_Free : 5)
partition 6: GPT Partition Data (Backup GPT Table : 6)
partition 7: GPT Header (Backup GPT Header : 7)
$ dmg2img -p 4 file.dmg imagefile.img
  • Текущие версии Ubuntu поставляются с 1.6.5 с версии 14.04
ответ дан user107033 22.12.2012 в 02:37
3

При использовании dmg2img file.dmg imagefile.img на linux, если вы получаете ОШИБКА: сообщение об ошибке, связанное с инфляцией, просто установите 7zip как

sudo aptitude install p7zip-full

и выполните следующую команду на терминале

7z x your_file.dmg
- найдите InstallMacOSX.pkg / InstallESD.dmg
- введите команду dmg2img InstallESD.dmg imagefile.img на терминал. Теперь вы можете смонтировать файл imagefile.img с помощью

modprobe hfsplus

, а затем

mount -t hfsplus -o loop mountain.img /mnt
    
ответ дан aman 07.05.2014 в 10:22
2

Прежде всего установите DMG2IMG . Теперь вы можете преобразовать его в IMG :

dmg2img your.dmg new.img 

IMG можно установить с помощью

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

И посмотрите на /mnt

    
ответ дан binfalse 29.04.2011 в 20:09
1

после ответа @aman и @tuxdna, поскольку dmg2img, похоже, не работает с сжатыми изображениями dmg.

, поэтому я создал скрипт bash (проверенный на ubuntu 14.10), чтобы автоматизировать процесс:

  • извлечение с 7z во временную папку
  • поиск раздела для монтирования
  • скопируйте папку / раздел hfs / hfsplus в другое место
  • удалить временную папку
  • установить раздел

найти его здесь: Ссылка

пример использования:

[email protected]:[~/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
    
ответ дан arainone 02.08.2015 в 17:04