如何在 Linux 中提取 .dmg 文件?

qub*_*dup 26 linux dmg-image extract

作为 Linux 用户,我需要获取包含应用程序安装程序的 .dmg(Mac OSX 磁盘映像)文件的内容。

我试过dmg2dir(需要dmg2img)它创建了一个 .img 文件,但没有别的。

$ sudo dmg2dir jdk-8u51-macosx-x64.dmg
==> Routines successfully accomplished. Ready! 
==> Prepare loop device... 
==> Mount block device... 
Error looking up object for device /dev/disk/by-label/JDK\x208\x20Update\x2051 INTENSO openSUSE\x20Live\x20CD\x20GNOME dump
Variable is empty.
Run Code Online (Sandbox Code Playgroud)

我只需要解压 .dmg 文件中的文件,我不想挂载它。

如果您好奇,我需要它来创建一个便携式开发环境,以便在无法预先准备的计算机上的研讨会上使用。

qub*_*dup 43

只需使用7z x.

在例如 Sublime 文本的情况下,7z x "Sublime Text 2.0.2.dmg"将足以提取所有文件。

在其他情况下,例如 JDK,您必须处理某种俄罗斯套娃。

$ 7z x jdk-8u51-macosx-x64.dmg
$ cd JDK 8 Update 51/
$ 7z x JDK 8 Update 51.pkg
$ 7z x Payload~
Run Code Online (Sandbox Code Playgroud)

但最终你会得到一个包含你正在寻找的文件的文件夹。