Отварянето на файлове с изображения в Linux често е лесен процес. DMG файловете обаче са малко по-сложни, тъй като Linux не поддържа първоначално тези типове файлове, както и файловата система, която използват. Но ако трябва само да извлечете DMG файл, за да видите и копирате съдържанието му на вашата Linux машина, има няколко заобиколни решения.
Нека първо да поговорим за това какво е DMG файл и защо системите, базирани на Linux, имат по-трудно време да ги отварят в сравнение с файлове с изображения като ISO.
Какво е DMG файл?
За разлика от междуплатформените файлове с изображения като ISO и IMG, DMG файловете са предназначени да се използват само от Mac. Това е така, защото DMG файловете са собствени файлови формати с изображения на дискове, създадени от Apple за споделяне и разпространение на файлове и софтуер за техните продукти.
Файлът с изображение на диск е тип файл, който действа като физическо дисково устройство. Тези типове файлове са клонирани от действителни твърди дискове и предоставят копие „байт на байт“ на всички съхранени данни.
Файловете с изображения на дискове като DMG често се използват за разпространение на софтуер, тъй като разработчиците могат лесно да създават файл с изображение на текущата им среда с всички нейни зависимости и разпространявайте софтуера като a пакет.
Това улеснява потребителите да инсталират софтуера, тъй като всички зависимости, конфигурации и файлове вече са налице точно както разработчиците го имат на своите машини.
Защо може да искате да извлечете DMG файл на Linux
Въпреки че файловият формат DMG е направен за разпространение на софтуер на Apple, той се използва и като начин за създаване на резервни копия, архивни среди и споделяне на всички видове медии в спретнато компресиран пакет.
И тъй като macOS вече идва с естествен инструмент за създаване на DMG, потребителите на Mac вероятно ще използват DMG вместо други файлови формати за изображения на дискове, като ISO.
Тъй като не всеки използва Mac, извличането на DMG файл с изображение извън Mac устройство може да се окаже проблематично. Така че защо да извличате такъв файл на Linux?
Според Statista, Mac заема около 17% от пазара на компютри в САЩ, което го класира като втората най-популярна система за персонални компютри. Това са много хора, които използват Mac, което също означава, че повече хора използват DMG за компресиране и споделяне на своите файлове.
Така че приятел или семейство да ви изпрати DMG файл не е толкова необичайно, колкото хората си мислят. Разбира се, може да има и други причини, поради които потребител на Linux би искал да извлече DMG файл в своята система.
Проблемът с извличането на DMG файлове в Linux
Като собствен формат на изображението, DMG файловете са по-трудни за монтиране и извличане на Linux, тъй като официално не поддържа използването на DMG.
Тъй като повечето дистрибуции на Linux използват разширими файлови системи като ext2, ext3 и ext4, монтирането на HFS или HFS+ изображение на Linux ще доведе до несъвместимост.
Въпреки че тези проблеми правят по-трудно извличането на DMG файлове извън Mac, има няколко заобиколни решения за успешно извличане на файлове в Linux.
Как да извлечете DMG файлове в Linux
Най-големият проблем с извличането на DMG файл на Linux е, че монтирането ще доведе до грешка във файловата система. За да монтирате успешно DMG, ще трябва да инсталирате помощна програма, известна като „hfsprogs”. Този инструмент на командния ред е порт от HFS на Apple hdiutil инструмент, който позволява на тяхната система да монтира изображения от тип HFS.
Чрез инсталиране на hfsprogs, вашата Linux машина ще може да монтира HFS-тип изображения като DMG.
Преди да инсталирате hfsprogs, уверете се, че актуализирайте пакетите на вашия компютър.
Сега инсталирайте hfsprogs на Ubuntu/Debian, като използвате:
sudo apt инсталирайте hfsprogs
В Arch Linux инсталирайте hfsprogs от AUR с помощта на yay:
да -S hfsprogs
Във Fedora, CentOS и RHEL използвайте:
dnf инсталирайте hfsplus-инструменти
За да монтирате DMG файла с изображение, нека създадем нова точка на монтиране, като създадем нова директория:
sudo mkdir /mnt/mntpoint
Нека монтираме DMG файла, като изпълним:
sudo mount -t hfsplus /dmg/location/Image.dmg /mount/mntpoint
Това трябва да монтира DMG файла с изображение успешно. Но в този случай бяхме подканени с грешка в типа на грешна файлова система.
При изпълнение на следната команда можете да видите, че помощната програма извежда грешка във файловата система, тъй като DMG е компресиран. Linux особено не харесва монтирането на компресирани файлове с изображения.
файл image.dmg
Достъп до компресирани DMG файлове
За да разрешим проблема, нека използваме помощен инструмент, известен като dmg2img. Този инструмент ще конвертира и декомпресира DMG файла в IMG файл.
За да инсталирате dmg2img на Ubuntu/Debian, изпълнете:
sudo apt инсталирайте dmg2img
В Arch Linux:
sudo pacman -S dmg2img
В дистрибуции, базирани на RPM, използвайте:
sudo dnf инсталирайте dmg2img
За да използвате dmg2img използвайте:
dmg2img изображение.dmg
dmg2img сега ще компресира и конвертира DMG в IMG файл. Нека се опитаме да монтираме файла с изображението, като използваме:
sudo mount /img/file/location/image.img /mount/point/location
Имайте предвид, че вече не е необходимо да използвате -t hfsplus опция в командата, тъй като Linux първоначално поддържа IMG файлове.
Сега, ако видите съдържанието на точката на монтиране, трябва да видите всички файлове в DMG файла.
Демонтиране на DMG файлове на Linux
Монтираните файлове с изображения на диск активно заемат системни ресурси и ценно място в паметта. Не забравяйте да демонтирате файловете с изображения на диска след всяка употреба.
За да демонтирате, използвайте командата:
sudo umount /mount/point/location
Имайте предвид, че командата е umount и не демонтиране.
За да проверите дали демонтирането е било успешно, просто натиснете l или cd в местоположението на точката на монтиране.
И тъй като повечето дистрибуции на Linux поддържат IMG файлове, трябва също да можете да го монтирате с помощта на GUI, като щракнете с десния бутон върху файла и изберете опцията за монтиране, която за Linux Mint е Отворете с Disk Image Mounter.
Както можете да видите, изскочи икона за монтиране; можете да използвате това, за да демонтирате изображението, като щракнете с десния бутон върху иконата и изберете Демонтиране.
Ако погледнете местоположението на точката на монтиране, ще видите, че файловете вече са изчезнали, което показва, че файлът с изображение е демонтиран успешно.
Трябва ли да монтирате или разархивирате на Linux?
Ако трябва да извлечете файлове от DMG файл с изображение, има няколко инструмента на трети страни, като hfsprogs, които можете да използвате, за да монтирате DMG файлове в Linux.
Но ако трябва само да извлечете съдържание от DMG файла, тогава инструменти за разархивиране като dmg2img и 7-Zip трябва да свършат работата, макар и с ограничени възможности. Ако трябва да редактирате, изтриете или добавите някакви файлове към DMG файла, правилното монтиране е единственият начин.
Независимо дали изберете да монтирате или разархивирате DMG файл на Linux, и двата метода все още може да са ненадеждни при пъти поради разликата във файловите системи, вида на Linux дистрибуцията, която използвате, и DMG файла себе си. Като жизнеспособна последна мярка, извличането на DMG файла на VM, инсталиран с macOS, вероятно ще бъде по-надеждно решение.