Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

I have 3 physical drives in my Mac Pro with OSX 10.6.4. Occasionally after rebooting the machine, the disk numbering changes such that the /dev/disk# does not reference the same drive as it did before the reboot.

Example

/dev/disk0 -> 64GB SSD drive
/dev/disk1 -> 640GB Hitachi
/dev/disk2 -> 160GB WD (BootCamp)

After rebooting the mapping might be

/dev/disk0 -> 160GB WD (BootCamp)
/dev/disk1 -> 640GB Hitachi
/dev/disk2 -> 64GB SSD drive

Even more confusing is that the remapping is not consistent. For most stuff this is irrelevant. However I also have Parallels installed to allow access to the BootCamp partition from within OSX. Parallels uses the /dev/disk# path in it's configuration file so, after rebooting OSX I launch Parallels and it tells me that the disk is no longer present.

Is there a way to tell OSX to always assign a given drive to /dev/disk0?

share|improve this question
    
Is it possible to change the Parallels configuration to use the logical (mounted) path instead of the disk#? –  Jason Salaz Dec 13 '10 at 3:13
add comment

2 Answers

There does not seem to be a way to specify a device for a given drive. Your best bet might be to not auto-mount, then use a LaunchAgent to mount them in the order you want with a pause between each mount, and see if it works that way. This method might get messed up if you have a USB key or something else that auto-mounts available to the system when you boot.

share|improve this answer
add comment

One trick I've used to solve your Parallels use case is to have the config file point to a symbolic link file, and then update the symlink to point to the correct device before starting the vm.

If you're comfortable writing scripts, you could use a shell script like this to determine the device name and update the symlink based on the volume name:

 BOOTCAMP_DEVICE=`mount | grep BOOTCAMP | cut -f 1 -d ' '`
 ln -f -s $BOOTCAMP_DEVICE path_to_symlink
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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