✳ OMNIVIEWER

Inspect your DMG in hex.

safe · secure · no server · works offline · fast

…or just start typing at the cursor.

Or try it now

↓ scroll for about & FAQ

See the exact bytes behind a disk image — without uploading it

Drop a .dmg and OmniViewer shows its exact bytes in a hex view: offsets, hexadecimal and a decoded ASCII panel. Jump to the end of the file and read the koly magic in the ASCII column, find the <plist> property list, or scan the compressed data fork. It reads only the bytes on screen, so it opens a multi‑gigabyte image as readily as a small one.

Hex is where you settle questions the structural tabs can’t — a truncated download, an unexpected trailer, or whether a file is really a UDIF image at all. The same drop also lists partitions, decodes the koly trailer, and reports stats.

It’s one lens on OmniViewer’s DMG Viewer — Inspect Apple Disk Images: drop a file and every tab is one click away. OmniViewer opens every file format, entirely in your browser — no upload, no server.

FAQ

Is my disk image uploaded anywhere?

No. OmniViewer is a static page with no server-side processing: your .dmg is read directly by your browser, and every tab — partitions, metadata, stats and hex — runs locally in a Web Worker. The image never leaves your computer.

Can I open a DMG without a Mac?

Yes. OmniViewer reads the UDIF structure — the koly trailer, the property list and the blkx block map — in pure JavaScript, so it works in any modern browser on Windows, Linux, macOS or a phone. No Mac, no hdiutil, no install.

Does OmniViewer mount or extract the DMG?

No. It inspects the image’s structure — the partitions, their sizes and their compression — without mounting the filesystem or decompressing the contents. That is deliberate: it lets you see what a .dmg contains without trusting the image enough to mount it, and it is what keeps the whole thing local and fast.

How large a DMG can I open?

Effectively unlimited. To read an image OmniViewer needs only two small reads — the 512-byte koly trailer at the end of the file, and the property list it points at (kilobytes to a few megabytes). The multi-gigabyte data fork is never read, so a 20 GB installer opens as fast as a tiny one.

What is the koly trailer?

A .dmg keeps its index at the end of the file, not the front: the last 512 bytes are a fixed structure whose magic number is the ASCII string "koly". It records the UDIF version, the uncompressed sector count, the checksums, and — most importantly — where the XML property list that maps the partitions begins. OmniViewer decodes it in the METADATA tab.

What compression formats does a DMG use?

Each run of sectors is stored with a method named by a four-letter code: UDZO (zlib/DEFLATE, the classic default), UDBZ (bzip2), ULFO (LZFSE, Apple’s modern default) or ULMO (LZMA), plus raw (uncompressed) and zero-fill runs that cost nothing. OmniViewer shows the mix per partition in the PARTITIONS tab, the same codes you pass to hdiutil convert.

What is UDIF, and how does it relate to .smi and .img?

UDIF (Universal Disk Image Format) is the modern Apple disk-image format behind the .dmg extension. .smi is a "self-mounting image" variant, .dmgpart files are segments of a split image, and .img is the older NDIF extension — OmniViewer opens all of them in the same toolkit and reads them as UDIF where the koly trailer is present.