bless --nextonly parameter fails I am using the bless command to reboot my Mac mini into VMware ESX.

sudo bless --device /dev/disk3s1 --setboot --nextonly &amp;&amp; sudo reboot


Booting ESX works but after the next reboot the Mac reboots into ESX again, despite the "--nextonly" parameter.

The same command (with a different device) works for rebooting into Windows on the Boot Camp partition once, i.e. after booting into Windows the Mac mini reboots into OS X again. But it doesn't work with booting into ESX.

Any ideas?

Update: With the --legacy switch the nvram variable is changed to boot from USB and uses the BIOS emulator, which promptly boots from the Windows partition. So that doesn't work.
Try using the --legacy flag:

sudo bless --device /dev/disk3s1 --legacy --setboot --nextonly reboot


(not sure why you're using the &amp;&amp; operator; try the command without it)

I encountered a similar issue a while back; the --legacy flag apparently was needed due to the EFI compatibility at the time. Apple's man page reads:


--legacy     If --setBoot is given, set the firmware to boot a legacy BIOS-based
             operating system from the specified disk. The active flag of an
             MBR-partitioned disk is not modified, which can be done with fdisk(8).
             This is only supported on EFI-based systems.



In VMWare ESX you will need to have EFI selected in the boot manager. It's possible that creating a boot.efi file could help solve your issue as well.

-> bless (OS X Man Pages)