问题描述
我有一个.dmg文件,我无法弄清楚如何打开它。我该怎么打开它?
最佳解决办法
安装dmg2img。
接下来,阅读package information page和manual page以查看它是否对您有用。
该应用程序似乎将.dmg转换为可以使用mount
命令挂载的文件:
dmg2img file.dmg imagefile.img
从您的Wikipedia article,下一个命令似乎可以这样做:
sudo mount -o loop -t hfsplus imagefile.img /mnt
这样,文件imagefile.img
是来自dmg2iso
的结果,其内容将在/mnt
中可用。如果未检测到hfsplus类型,则可能需要为其加载内核模块:
sudo modprobe hfsplus
完成后,您可以通过运行以下命令卸载它:
sudo umount /mnt
次佳解决办法
要提取它,使用7zip要容易得多。简单地说:
7z x file.dmg
第三种解决办法
这对我有用:
-
使用
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
第四种办法
如果你成功接受了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版本在版本14.04中附带1.6.5
第五种办法
在linux上使用dmg2img file.dmg imagefile.img
时,如果收到ERROR:Inflation failed message,只需安装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
第六种办法
首先安装DMG2IMG。现在您可以将其转换为IMG
:
dmg2img your.dmg new.img
IMG
可以安装:
sudo modprobe hfsplus
sudo mount -t hfsplus -o loop new.img /mnt
并看看/mnt