Найти в Дзене
takoedelo

Как извлечь файлы 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 в своей системе.

Проблема с извлечением файлов DMG в Linux

-2

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

Поскольку большинство дистрибутивов Linux используют расширяемые файловые системы, такие как ext2, ext3 и ext4, монтирование образа HFS или HFS + в Linux приведет к несовместимости.

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

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

Самая большая проблема с извлечением файла DMG в Linux заключается в том, что его монтирование приведет к ошибке файловой системы. Чтобы успешно смонтировать DMG, вам необходимо установить утилиту, известную как “hfsprogs”. Этот инструмент командной строки является портом инструмента Apple HFS hdiutil, который позволяет их системе монтировать образы типа HFS.

Установив hfsprogs, ваш компьютер с Linux сможете монтировать образы типа HFS, такие как DMG.

Перед установкой hfsprogs обязательно обновите пакеты на своем компьютере.

Теперь установите hfsprogs на Ubuntu / Debian с помощью:

-3

В Arch Linux установите hfsprogs из AUR с помощью yay:

-4

В Fedora, CentOS и RHEL используйте:

-5

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

-6

Давайте смонтируем файл DMG, выполнив:

-7

Это должно успешно смонтировать файл образа DMG. Но в этом случае нам указывают на ошибку неправильного типа файловой системы.

-8

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

-9

Доступ к сжатым файлам DMG

Чтобы решить проблему, давайте воспользуемся служебным инструментом, известным как dmg2img. Этот инструмент преобразует и распаковывает файл DMG в файл IMG.

Чтобы установить dmg2img в Ubuntu / Debian, выполните:

-10

В Arch Linux:

-11

В дистрибутивах на основе RPM используйте:

-12

Для использования dmg2img используйте:

-13

теперь dmg2img будет сжимать и преобразовывать DMG в файл IMG. Давайте попробуем смонтировать файл образа с помощью:

-14

Обратите внимание, что вам больше не нужно использовать опцию -t hfsplus в команде, поскольку Linux изначально поддерживает файлы IMG.

Теперь, если вы просмотрите содержимое точки монтирования, вы должны увидеть все файлы в файле DMG.

-15

Размонтирование файлов DMG в Linux

Смонтированные файлы образов дисков активно занимают системные ресурсы и ценное пространство памяти. Не забывайте размонтировать файлы образов дисков после каждого использования.

Чтобы размонтировать, используйте команду:

-16

Имейте в виду, что команда umount, а не unmount.

Чтобы проверить, было ли размонтирование успешным, просто вставьте ls или cd в местоположение точки монтирования.

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

-17

Как вы можете видеть, появился значок монтирования; вы можете использовать его для размонтирования образа, щелкнув правой кнопкой мыши значок и выбрав Размонтировать.

-18

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

Следует ли вам монтировать или разархивировать файлы в Linux?

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

Но если вам нужно только извлечь содержимое из файла DMG, то инструменты для разархивирования, такие как dmg2img и 7-Zip, должны выполнить эту работу, хотя и с ограниченными возможностями. Если вам нужно отредактировать, удалить или добавить какие-либо файлы в файл DMG, единственным способом является правильное монтирование.

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

Смотрите другие наши статьи,подписывайтесь на канал чтобы не пропустить интересное.