Dmg файл чем открыть linux

Как извлечь файлы DMG в Linux

Файлы DMG — это эксклюзивные для Mac образы дисков, но их можно смонтировать и получить доступ к их содержимому на компьютере с Linux.

Открытие файлов изображений в Linux является простым процессом. Файлы DMG, однако, немного сложнее, поскольку Linux изначально не поддерживает файлы этих типов, а также файловую систему, которую они используют. Но если вам нужно извлечь DMG-файл только для просмотра и копирования его содержимого на ваш компьютер с Linux, есть несколько обходных путей.

Давайте сначала поговорим о том, что такое файл DMG и почему системам на базе Linux сложнее открывать их по сравнению с файлами образов, такими как ISO.

Что такое DMG-файл?

В отличие от кроссплатформенных файлов изображений, таких как ISO и IMG, файлы DMG предназначены только для использования Mac. Это связано с тем, что файлы DMG представляют собой проприетарные форматы файлов образов дисков, созданные Apple для совместного использования и распространения файлов и программного обеспечения для своих продуктов.

Файл образа диска — это тип файла, который действует как физический дисковод. Эти типы файлов клонируются с реальных жестких дисков и предоставляют “байтовую” копию всех сохраненных данных.

Файлы образов дисков, такие как DMG, часто используются для распространения программного обеспечения, поскольку разработчики могут легко создать файл образа своей текущей среды со всеми ее зависимостями и распространять программное обеспечение в виде пакета.

Это упрощает пользователям установку программного обеспечения, поскольку все зависимости, конфигурации и файлы уже присутствуют, точно так же, как разработчики имеют его на своих компьютерах.

Почему вы можете захотеть извлечь файл DMG в Linux

Хотя формат файлов DMG был создан для распространения программного обеспечения Apple, он также используется для создания резервных копий, архивирования сред и совместного использования всех видов носителей в аккуратно сжатом пакете.

И поскольку macOS уже поставляется с собственным инструментом создания DMG, пользователи Mac, скорее всего, будут использовать DMG вместо других форматов файлов образов дисков, таких как ISO.

Поскольку не все используют Mac, извлечение файла изображения DMG за пределы устройства Mac может оказаться проблематичным. Так зачем извлекать такой файл в Linux?

По некоторым данным Mac занимает около 17% рынка ПК в , что ставит его на второе место по популярности среди персональных компьютеров. Многие люди используют Mac, что также означает, что все больше людей используют DMG для сжатия и совместного использования своих файлов.

Читайте также:  Команда установить время линукс

Поэтому, когда друг или родственник отправляет вам DMG-файл, это не так редко, как люди могут подумать. Конечно, могут быть и другие причины, по которым пользователь Linux захочет извлечь файл DMG в своей системе.

Источник

Open DMG File

DMG files use Hierarchical File System (HFS) as a disk file system format. In order for your Linux machine to open DMG files it needs to support HFS and HFS+. To enable HFS and HFS+ support on your Linux machine you will need to install HFS tools and kernel modules.

Ubuntu

Below are instructions on how to install HFS and HFS+ and mount HFS+ drive on Ubuntu.

1) Install hfsprogs which enables operation with HFS and HFS+ on Linux via ports of mkfs and fsck.

sudo apt-get install hfsprogs

2) Mount or remount the HFS+ drive

sudo mount -t hfsplus -o force,rw /dev/sdXY /media/mntpoint

sudo mount -t hfsplus -o remount,force,rw /mount/point

3) If the drive is partially corrupted or was unmounted with an error run:

sudo fsck.hfsplus -f /dev/sdXY

CentOS

Below are instructions on how to mount HFS or HFS+ in CentOS:

1) Install hfs kernel modules and hfs+ tools:

2) Mount or remount the HFS+ drive

sudo mount -t hfsplus -o force,rw /dev/sdXY /media/mntpoint

sudo mount -t hfsplus -o remount,force,rw /mount/point

3) If the drive is partially corrupted or was unmounted with an error run:

sudo fsck.hfsplus -f /dev/sdXY

With HFS and HFS+ enabled you are ready to mount your DMG file.

  • Apple Partition Map
  • CD/DVD (partitioned)
  • CD/DVD (partitioned) with ISO data
  • Hard disk
  • Master Boot Record Partition Map
  • No partition map

Below is a command to mount an image.dmg file using hfsplus file system:

sudo mount -t hfsplus image.dmg /mnt

Here -t hfsplus tells mount command to mount with HFS+ file system. The /mnt specifies a path to where the image will be mounted.

To unmount following command is needed:

sudo mount -t hfsplus image.dmg /mnt

Источник

How can I open a .dmg file?

Next, read the package information page and the manual page to see if it is useful to you.

The application seems to convert .dmg to a file that can be mounted using the mount command:

dmg2img file.dmg imagefile.img 

From your Wikipedia article, the next command seems to be available to do that:

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

In this way, the file imagefile.img is a result from dmg2iso and the contents will be available at /mnt . If the hfsplus type is not detected, you might need to load the kernel module for it:

Читайте также:  Epson perfection 3490 linux

When done, you can unmount it by running:

@tuxdna Do you really have a HFS image? Check the output of file file.dmg . You can also try 7z l file.dmg to list the contents.

I am using dmg2img v1.6.2 . I ran dmg2img on mysql-5.5.28-osx10.6-x86_64.dmg which created mysql-5.5.28-osx10.6-x86_64.img , but it doesn’t mount.

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 

Locate the hfs partition ( here it is 4.hfs file ):

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 

If you succeed with the instructions from Lekensteyn and binfalse more power to you. If you are getting

$ 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, 

Right now Ubuntu only comes with dmg2img version 1.6.2 and version 1.6.4 sometimes makes a difference. Also you can extract specific partitions from a dmg and only some of them are 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 

When using dmg2img file.dmg imagefile.img on linux if you get ERROR: Inflation failed message, just install 7zip as

sudo aptitude install p7zip-full 

and issue the following command on terminal

  • find the InstallMacOSX.pkg/InstallESD.dmg
  • issue the command dmg2img InstallESD.dmg imagefile.img on the terminal.
Читайте также:  Linux mint grub install error

Now you can mount imagefile.img with

mount -t hfsplus -o loop mountain.img /mnt 

In the case of some .dmg s, you can neither 7z x them, nor mount the result of dmg2img .

In that case, the .img resulting from dmg2img your.dmg new.img can have its paritions extracted with 7z x :

$ 7z x factor-macosx-x86-64-0.98.dmg [. ] Extracting archive: factor-macosx-x86-64-0.98.dmg ERROR: factor-macosx-x86-64-0.98.dmg factor-macosx-x86-64-0.98.dmg Open ERROR: Can not open the file as [Dmg] archive $ dmg2img factor-macosx-x86-64-0.98.dmg factor.img [. ] factor-macosx-x86-64-0.98.dmg --> factor.img [. ] Archive successfully decompressed as factor.img $ sudo mount -o loop -t hfsplus factor.img /mnt mount: /mnt: wrong fs type, bad option, bad superblock on /dev/loop5, missing codepage or helper program, or other error. $ 7z x factor.img [. ] Extracting archive: factor.img [. ] Everything is Ok Folders: 2717 Files: 10266 Size: 176431113 Compressed: 264214528 $ ls -lah factor factor/factor/ factor: total 24K drwx------ 6 cat cat 4.0K Jul 30 2018 . drwxr-xr-x 21 cat cat 4.0K Feb 19 16:28 .. drwx------ 8 cat cat 4.0K Jul 30 2018 factor drwx------ 2 cat cat 4.0K Jul 30 2018 '[HFS+ Private Data]' drwx------ 2 cat cat 4.0K Jul 30 2018 '.HFS+ Private Directory Data'$'\r' drwx------ 2 cat cat 4.0K Jul 30 2018 .Trashes factor/factor/: total 97M drwx------ 8 cat cat 4.0K Jul 30 2018 . drwx------ 6 cat cat 4.0K Jul 30 2018 .. drwx------ 163 cat cat 4.0K Jul 30 2018 basis drwx------ 45 cat cat 4.0K Jul 30 2018 core -rw-r--r-- 1 cat cat 702 Jul 30 2018 .dir-locals.el drwx------ 288 cat cat 12K Jul 30 2018 extra -rw-r--r-- 1 cat cat 32 Jul 30 2018 factor drwx------ 3 cat cat 4.0K Jul 30 2018 Factor.app -rw-r--r-- 1 cat cat 97M Jul 30 2018 factor.image -rw-r--r-- 1 cat cat 40 Jul 30 2018 .gitattributes -rw-r--r-- 1 cat cat 43 Jul 30 2018 git-id -rw-r--r-- 1 cat cat 366K Jul 30 2018 libfactor.dylib -rw-r--r-- 1 cat cat 16K Jul 30 2018 libfactor-ffi-test.dylib -rw-r--r-- 1 cat cat 1.3K Jul 30 2018 LICENSE.txt drwx------ 9 cat cat 4.0K Jul 30 2018 misc -rw-r--r-- 1 cat cat 4.6K Jul 30 2018 README.md -rw-r--r-- 1 cat cat 3.6K Jul 30 2018 .travis.yml drwx------ 2 cat cat 4.0K Jul 30 2018 work 

Источник

Оцените статью
Adblock
detector