VM cannot be shutdown properly under VB 3.2.x - Problem Fixed!
If your VM cannot shutdown properly (i.e. the VM stops with the message "CPU halted" displayed) and you have installed fakeSMC.kext in your VM, then you can try removing fakeSMC.kext as described below. This should solve the problem.
Removing the fakeSMC Kernel Extension
As usual, taking a Snapshot of your VM first is recommended.
- Start up your SL VM as usual.
- At the top menu bar, select "Go | Computer". Then go to the folder "/System/Library/Extensions/" and delete the file fakesmc.kext.
- After removing the fakesmc.kext file, we still need to do a kext cache rebuild.
This can be done by:- issuing commands (as we have done when installing kext files manually).
- deleting the whole "com.apple.kext.caches" folder in "/System/Library/Caches".
- Shut down your VM (as usual, the VM will 'hang') and simply power off it.
- Modify your VM's xml file by adding the following line to the <ExtraData> section:
<ExtraDataItem name="VBoxInternal2/SmcDeviceKey"
value="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"/>
This can also be done by issuing the following command in your host machine (with the param myVM_Name replaced with the name of your VM):
VBoxManage setextradata "myVM_Name" "VBoxInternal2/SmcDeviceKey"
"ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
Note: you may need to go the VB's installation folder if that command is not within your path environment.
Done!
Start VB and boot up your VM. It may take a little bit longer than expected as the system needs to rebuild the cache. Trying shuting it down afterwards..... the VM should be able to power off itself now!
Note:
- I will update my guide later.... at the time of writing the guide, I have tried this "SmcDeviceKey" but my VM cannot be started at that moment and so I keep using the fakesmc.kex. May be I have typed the wrong value at that time.