hdiutil is deprecated in macOS 27 Golden Gate

Aug 23, 2026 02:04 AM - 1 hour ago 2
Previous: Not Raising the Gates
Articles index Jeff Johnson (My apps, PayPal.Me, Mastodon)

August 14 2026

The macOS command-line instrumentality hdiutil is utilized to manipulate disk images. From the WHAT'S NEW conception of man hdiutil connected the latest macOS 27 Golden Gate beta:

In macOS 27.0, hdiutil is deprecated. Use diskutil image alternatively for each disk image operations. diskutil image provides subcommands for attach, create, resize, info, and chpass. ASIF (Apple Sparse Image Format) images are only supported by diskutil image and are not supported by hdiutil.

There’s besides a DEPRECATION NOTICE astatine the apical of the man page that lists the diskutil replacements for hdiutil subcommands.

The mostly of options from hdiutil look to beryllium preserved successful diskutil, though nether different names. However, immoderate hdiutil options are missing, for illustration -puppetstrings:

provide advancement output that is easy for different program to parse. PERCENTAGE outputs tin see the worth -1 which intends hdiutil is performing an cognition that will return an indeterminate magnitude of clip to complete. Any programme trying to construe hdiutil's advancement should use -puppetstrings.

Also missing are immoderate options circumstantial to hdiutil create -srcfolder:

-[no]crossdev -[no]scrub -[no]anyowners -skipunreadable -[no]atomic -copyuid

I attempted to comparison hdiutil and diskutil connected Golden Gate by performing a backup of the personification location folder, thing I do regular connected my MacBook Pro pinch macOS Sequoia. First:

time hdiutil create -encryption -format UDZO -noatomic -noscrub -srcfolder /Users/stupiduser -stdinpass -verbose /Users/Shared/hdiutil.dmg

This took astir 110 to 115 seconds connected average.

It’s important to statement that hdiutil triggers an authentication prompt, because 1 of the files is, annoyingly, owned by the guidelines user. From the Terminal output:

copy-helper[2598:97396] uid 501 does not person ownership of /Users/stupiduser/Library/Group Containers/group.com.apple.secure-control-center-preferences/Library/Preferences/group.com.apple.secure-control-center-preferences.av.plist - mounting needAuth to YES
Scanning…
Error 80 (Authentication error).
/Users/stupiduser/Library/Group Containers/group.com.apple.secure-control-center-preferences/Library/Preferences/group.com.apple.secure-control-center-preferences.av.plist: Authentication error

The disk image creation continues and finishes successfully aft authenticating pinch admin credentials.

Now the caller method:

time diskutil image --stdinpassphrase --verbose create --encrypt from --format UDZO /Users/stupiduser /Users/Shared/diskutil.dmg

This simply fails and, contempt the verbose option, doesn’t show you why.

[100% completed]
Error: Failed to create disk image: The cognition couldn’t beryllium completed. Operation not permitted

Luckily, I guessed the reason, the root-owned file. Unlike hdiutil, diskutil does not trigger an authentication prompt. Thus, I had to delete the root-owned record to get diskutil to work.

[100% completed]
/Users/Shared/diskutil.dmg created

Again, not peculiarly verbose. However, the advancement percent does update successful spot during the disk image creation, truthful location is immoderate benignant of substitute for the hdiutil -puppetstrings option.

The bully news is that diskutil was importantly faster, taking astir 40 to 45 seconds connected mean to finish, much than a infinitesimal faster than hdiutil. Also, the resulting dmg record from diskutil was smaller, 2.8 GB, arsenic opposed to 2.89 GB from hdiutil.

I mounted the 2 disk images and utilized the FileMerge app (embedded wrong the Xcode app) to comparison them. Aside from a fewer files that were people modified successful the fewer minutes betwixt the 2 command-line invocations, the main quality was that the hdiutil disk image included the ~/.Trash/ folder, while the diskutil disk image did not. In different words, diskutil behaved arsenic if the -scrub action of hdiutil were enabled.

-[no]scrub do [not] skip impermanent files erstwhile imaging a volume. Scrubbing is the default erstwhile the root is the guidelines of a mounted volume. Scrubbed items see trashes, temporary directories, switch files, etc.

So it appears that diskutil successful Golden Gate needs immoderate work:

  1. Improve verbose logging
  2. Handle record support problems
  3. Add the -[no]scrub option

To conclude, I don’t understand why hdiutil needs to beryllium deprecated erstwhile the aforesaid functionality will unrecorded connected successful diskutil. For immoderate reason, Apple seems intent connected breaking longtime workflows and scripts. Many years agone I really worked connected an app, Knox, that calls hdiutil directly. If hdiutil were removed from macOS, that would wholly break specified an app.

By the way, some hdiutil and diskutil connected Golden Gate still suffer from the bug I blogged astir past year, Inaccessible .bnnsir files connected macOS Sequoia. A mates days agone I sewage a ridiculous update to the bug study I revenge pinch Apple, “hdiutil create transcript correction pinch Siri CoreSpeech .bnnsir files” (FB17162985). Despite giving Apple 100% reliable steps to reproduce, they asked maine if the rumor still occurred successful the latest beta, and if it does, past I should taxable an iOS sysdiagnose. Yes, Apple requested an iOS sysdiagnose for a macOS bug. And needless to say, the latest Golden Gate beta did not magically hole the bug.

Jeff Johnson (My apps, PayPal.Me, Mastodon) Articles index
Previous: Not Raising the Gates
More