I have an encrypted, password-protected sparsebundle that I occasionally mount and unmount from the terminal. I want the system to ask for the password every time I mount it, but for some reason it keeps remembering.

This is how I mount it: hdiutil attach ~/path/to/my/bundle -mountpoint ~/my/mountpoint

These are some of the ways I've tried to unmount it:

hdiutil detach -force ~/path/to/my/bundle
hdiutil detach -force /Users/me/path/to/my/bundle
hdiutil eject -force ~/path/to/my/bundle
diskutil eject ~/path/to/my/bundle
diskutil unmount force ~/path/to/my/bundle

(I've read here that hdiutil unmount is not sufficient to make the system forget the password.)

However, whatever I try, the system "helpfully" remembers the password each time.

Only when I use the eject button in Finder, does the system forget the password.

Also, there is no entry in my keychain that suggest the password has been cached. (At least, I can't find it. There are none with kind disk image password.)

I've even created a new sparsebundle, with a new name and a different password, but the problem persists.

What am I missing here? How can I make sure the sytem always asks for the password, each time I mount the sparsebundle?

  • In this post the following procedure was suggested: "I had to first use unmount force option, then open the volume again in the script, then eject it. And that worked." – harrymc Nov 29 '18 at 10:04
  • Tried it, but sadly doesn't work for me. – jqno Nov 29 '18 at 13:26
  • Using detach, then closing the terminal session. Will opening a new terminal session still allow you to mount without password? – Elmo Nov 29 '18 at 15:46
  • 2
    Another case of Apple saving you from yourself. Ease of use is more important than security. – HackSlash Nov 29 '18 at 21:56
  • @Elmo Nope. Only the eject button in finder seems to work reliably so far. And rebooting the system. – jqno Nov 30 '18 at 10:50

It feels kind of sad, but in the end I managed to find a way to do it using AppleScript:

osascript -e 'tell application "Finder" to eject "<name>"'

The <name> should match the name in Finder's sidebar.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.