Name

vndevice

Synopsis

vndevice { attach | shadow } device pathname
vndevice detach device
                  

Attaches or detaches a virtual device node to or from a disk image file. (Note that the functionality of vndevice is incorporated within hdiutil.) Modifications to data on the attached disk image will instead be written to the virtual node, or shadow image, and subsequent access to that data will be from the shadow. This allows effective read/write access to data on a disk image which shouldn’t or can’t be modified.

Options

attach

Attach a device node to a disk image designated by pathname.

detach

Detach a device node from a disk image.

shadow

Associate an attached device node to a shadow disk image designated by pathname.

device

The device node filename, e.g., /dev/vn0.

Examples

Create a disk image, attach a virtual device node to it, and mount it:

$ hdiutil create test.dmg -volname test -size 5m -fs HFS+ -layout NONE
$ sudo vndevice attach /dev/vn0 test.dmg
$ mkdir mount_point
$ sudo mount -t hfs /dev/vn0 mount_point

Wait a minute, and then:

$ touch mount_point/test_file
$ ls -l test.dmg

Note that the modification time on the disk image is current, reflecting the change you made by creating a test file.

Now set up shadowing. Unmount the volume first, then create the shadow disk image, attach the virtual node to it, and mount it again:

$ sudo umount /dev/vn0
$ hdiutil create shadow.dmg -volname shadow -size 5m -fs HFS+ -layout NONE
$ sudo vndevice shadow /dev/vn0 shadow.dmg
$ sudo mount -t hfs /dev/vn0 ...

Get Mac OS X Panther in a Nutshell, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.