November 1, 2007

MacOSX Compact Sparse Image…

Filed under: Apache, MacBook, MacOSX — kenjun @ 10:03 pm

One useful OS X feature is the ability to create disk images. A disk image is a single file that, when double-clicked, appears like a typical hard drive to the operating system. (Most software you download comes on a disk image.) Disk images a great way to store related files that you don’t need to use often, as they can be “out of sight” until you need them. They’re also useful if you want to store something securely, as you can create encrypted disk images that require a password to mount.

There are essentially two types of disk images—a normal disk image and a sparse disk image. With a normal disk image, the disk image will consume as much drive space as its size, even when empty—i.e. a 40MB normal disk image requires 40MB of drive space, even if you’ve never used it. Sparse disk images, on the other hand, are disk image files that require just as much space as their contents require. So a 40MB sparse disk image will only need 40MB of drive space if you’ve saved 40MB of data onto it. The disk image will grow automatically as space is required.

What isn’t so obvious is that a sparse image won’t shrink automatically. Check out the link for a handy article on how to compact a sparse image.


1 Comment »

  1. The will only work on unencrypted sparseimage files. If the sparse image file was created with a password hdiutil will error out reporting that it access is denied (because it expects a password to be entered via stdin and the workflow doesn’t provide one.) Update the script as below to cause hdiutil to open up a GUI window to prompt for the password instead. This works with both encrypted and unencrypted spareimage files.

    hdiutil compact “$@” </dev/null

    Comment by enthemic — September 23, 2011 @ 6:32 pm

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Blog at

%d bloggers like this: