Lezers zoals jij steunen MUO. Wanneer u een aankoop doet via links op onze site, kunnen we een aangesloten commissie verdienen. Lees verder.

Het openen van afbeeldingsbestanden op Linux is vaak een eenvoudig proces. DMG-bestanden zijn echter een beetje gecompliceerder omdat Linux dit soort bestanden niet standaard ondersteunt, evenals het bestandssysteem dat ze gebruiken. Maar als u alleen een DMG-bestand hoeft uit te pakken om de inhoud ervan te bekijken en naar uw Linux-machine te kopiëren, zijn er een paar tijdelijke oplossingen.

Laten we het eerst hebben over wat een DMG-bestand is en waarom op Linux gebaseerde systemen het moeilijker hebben om ze te openen in vergelijking met afbeeldingsbestanden zoals ISO.

Wat is een DMG-bestand?

In tegenstelling tot platformonafhankelijke afbeeldingsbestanden zoals ISO en IMG, zijn DMG-bestanden alleen bedoeld voor gebruik door een Mac. Dit komt omdat DMG-bestanden eigen bestandsindelingen voor schijfafbeeldingen zijn die door Apple zijn gemaakt om bestanden en software voor hun producten te delen en te distribueren.

Een schijfimagebestand is een type bestand dat werkt als een fysiek schijfstation. Dit soort bestanden worden gekloond van echte harde schijven en bieden een "byte-per-byte" kopie van alle opgeslagen gegevens.

Schijfimagebestanden zoals DMG worden vaak gebruikt om software te distribueren, aangezien ontwikkelaars eenvoudig een image-bestand van hun huidige omgeving met al zijn afhankelijkheden en distribueer de software als een pakket.

Dit maakt het voor gebruikers gemakkelijker om de software te installeren, aangezien alle afhankelijkheden, configuraties en bestanden al aanwezig zijn, net zoals de ontwikkelaars het op hun machines hebben.

Waarom u een DMG-bestand op Linux zou willen extraheren

Hoewel het DMG-bestandsformaat is gemaakt om Apple-software te distribueren, wordt het ook gebruikt als een manier om back-ups te maken, omgevingen te archiveren en allerlei soorten media te delen in een netjes gecomprimeerd pakket.

En aangezien macOS al wordt geleverd met een native DMG-creatietool, zullen Mac-gebruikers waarschijnlijk DMG gebruiken in plaats van andere bestandsindelingen voor schijfafbeeldingen, zoals ISO.

Aangezien niet iedereen een Mac gebruikt, kan het extraheren van een DMG-afbeeldingsbestand buiten een Mac-apparaat problematisch blijken te zijn. Dus waarom zo'n bestand op Linux extraheren?

Volgens Statistisch, neemt de Mac ongeveer 17% van de Amerikaanse pc-markt in beslag, waarmee het het op één na populairste pc-systeem is. Dat zijn veel mensen die een Mac gebruiken, wat ook betekent dat meer mensen DMG gebruiken om hun bestanden te comprimeren en te delen.

Het is dus niet zo ongewoon als mensen denken dat een vriend of familie je een DMG-bestand stuurt. Er kunnen natuurlijk ook andere redenen zijn waarom een ​​Linux-gebruiker een DMG-bestand op zijn systeem zou willen extraheren.

Het probleem met het extraheren van DMG-bestanden in Linux

Omdat het een eigen afbeeldingsformaat is, zijn DMG-bestanden moeilijker te koppelen en uit te pakken op Linux, omdat het het gebruik van DMG niet officieel ondersteunt.

Aangezien de meeste Linux-distributies Extensible File Systems gebruiken, zoals ext2, ext3 en ext4, leidt het monteren van een HFS- of HFS+-image op Linux tot incompatibiliteit.

Hoewel deze problemen het moeilijker maken om DMG-bestanden buiten een Mac uit te pakken, zijn er enkele oplossingen om met succes bestanden in Linux uit te pakken.

Hoe DMG-bestanden in Linux te extraheren

Het grootste probleem met het uitpakken van een DMG-bestand op Linux is dat het aankoppelen ervan zal resulteren in een slechte bestandssysteemfout. Om een ​​DMG met succes te koppelen, moet u een hulpprogramma installeren dat bekend staat als "hfsprogs”. Deze opdrachtregeltool is een port van Apple's HFS hdiutil tool waarmee hun systeem afbeeldingen van het HFS-type kan koppelen.

Door hfsprogs te installeren, kan uw Linux-machine afbeeldingen van het HFS-type, zoals DMG, aankoppelen.

Voordat u hfsprogs installeert, moet u ervoor zorgen dat werk de pakketten op uw computer bij.

Installeer nu hfsprogs op Ubuntu/Debian met behulp van:

sudo apt hfsprogs installeren

Installeer op Arch Linux hfsprogs van de AUR met yay:

yay -S hfsprogs

Gebruik op Fedora, CentOS en RHEL:

dnf hfsplus-tools installeren

Laten we, om het DMG-afbeeldingsbestand te koppelen, een nieuw koppelpunt maken door een nieuwe map te maken:

sudo mkdir /mnt/mntpoint

Laten we het DMG-bestand koppelen door uit te voeren:

sudo mount -t hfsplus /dmg/location/Image.dmg /mount/mntpoint

Dat zou het DMG-afbeeldingsbestand met succes moeten koppelen. Maar in dit geval is ons gevraagd om een ​​verkeerd type bestandssysteemfout.

Bij het uitvoeren van de volgende opdracht kunt u zien dat het hulpprogramma een slechte bestandssysteemfout genereert omdat de DMG is gecomprimeerd. Vooral Linux houdt er niet van om gecomprimeerde afbeeldingsbestanden te monteren.

bestand afbeelding.dmg

Toegang tot gecomprimeerde DMG-bestanden

Laten we om het probleem op te lossen een hulpprogramma gebruiken dat bekend staat als dmg2img. Deze tool converteert en decomprimeert het DMG-bestand naar een IMG-bestand.

Voer het volgende uit om dmg2img op Ubuntu/Debian te installeren:

sudo apt dmg2img installeren

Op ArchLinux:

sudo pacman -S dmg2img

Gebruik op op RPM gebaseerde distro's:

sudo dnf installeer dmg2img

Om dmg2img te gebruiken:

dmg2img afbeelding.dmg

dmg2img zal nu de DMG comprimeren en converteren naar een IMG-bestand. Laten we proberen het afbeeldingsbestand te mounten met behulp van:

sudo mount /img/file/location/image.img /mount/point/location 

Merk op dat u de -t hfsplus optie in de opdracht omdat Linux standaard IMG-bestanden ondersteunt.

Als u nu de inhoud van het koppelpunt bekijkt, zou u alle bestanden in het DMG-bestand moeten zien.

DMG-bestanden ontkoppelen op Linux

Aangekoppelde schijfimagebestanden nemen actief systeembronnen en waardevolle geheugenruimte in beslag. Vergeet niet om schijfkopiebestanden na elk gebruik te ontkoppelen.

Gebruik de opdracht om te ontkoppelen:

sudo umount /mount/punt/locatie

Houd er rekening mee dat de opdracht is umount en niet ontkoppelen.

Om te controleren of het ontkoppelen is gelukt, hoeft u alleen maar ls of cd naar de locatie van het koppelpunt te plaatsen.

En aangezien de meeste Linux-distributies IMG-bestanden ondersteunen, zou je het ook moeten kunnen mounten met behulp van de GUI door met de rechtermuisknop op het bestand te klikken en de mount-optie te selecteren, wat voor Linux Mint is Openen met Disk Image Mounter.

Zoals je kunt zien, is er een mount-pictogram verschenen; u kunt dit gebruiken om de afbeelding te ontkoppelen door met de rechtermuisknop op het pictogram te klikken en te selecteren Ontkoppelen.

Als u naar de locatie van het koppelpunt kijkt, ziet u dat de bestanden nu verdwenen zijn, wat aangeeft dat het afbeeldingsbestand met succes is ontkoppeld.

Moet je op Linux mounten of unzippen?

Als u bestanden uit een DMG-afbeeldingsbestand moet extraheren, zijn er enkele hulpprogramma's van derden, zoals hfsprogs, die u kunt gebruiken om DMG-bestanden binnen Linux te koppelen.

Maar als u alleen inhoud uit het DMG-bestand hoeft te extraheren, dan zouden uitpaktools zoals dmg2img en 7-Zip het werk moeten doen, zij het met beperkte mogelijkheden. Als u bestanden moet bewerken, verwijderen of toevoegen aan het DMG-bestand, is de juiste montage de enige manier.

Of je er nu voor kiest om een ​​DMG-bestand op Linux te mounten of uit te pakken, beide methoden kunnen nog steeds onbetrouwbaar zijn keer vanwege het verschil in bestandssystemen, het type Linux-distro dat u gebruikt en het DMG-bestand zelf. Als levensvatbaar laatste redmiddel is het uitpakken van het DMG-bestand op een VM die is geïnstalleerd met macOS waarschijnlijk een betrouwbaardere oplossing.