After several days of attempts and findings, finally, I managed to install Mac OS X Snow Leopard on VirtualBox with my Windows OS PC. We are going to use the original OS medium for this installation purpose. That will give the freedom to have the vanilla kernel and possible software updates from the official Apple website.
This method is completely for testing and learning purposes. Please buy the original Mac OS and Apple hardware. From version 3.2, the Oracle VirtualBox officially supports Mac OS X as the guest virtual machine on Apple hardware. So, technically you can virtualize macOS on Apple devices only. But still, we can do some workarounds to install Mac OS X on non-Apple hardware with different bootloaders on Windows computers.
Note: This post was originally published in the year 2010. You may find the older version of products on the screenshots. But still, these methods are applicable for the latest version including Windows 10 and VirtualBox 6 x. But there will not be many valid reasons to try an older version of Mac OS 10.6 when we have macOS 11.0 Big Sur now. If you are a developer who wants to test several older versions of macOS, then you can try these methods.
Requirements
- Oracle VirtualBox
- Mac OS X 10. 6 Snow Leopard Retail DVD or ISO (You may need to search for ISO on the Internet)
- EmpireEFIv1085.iso for Intel Processors (This is the boot loader we will be using to boot Mac OS DVD/ISO, download the correct version here)
- Hardware VT Checker (Read more here and make sure Hardware Virtualization is enabled on the host computer BIOS)
- Sound driver (Mentioned under sound)
Installation Steps of Mac OS X 10.6 on VirtualBox
1) Create a Mac OS X Virtual Machine with the following configuration (If you have the latest VB, then select Mac Server version)
Memory – Minimum 1GB
Processor Cores – 1 or more (Change it to one core if you face any issues. Two cores worked for me)
Enable PAE/NX, VT-x,
Nesting Page – Enabled
Enable IO APIC and Enable Absolute pointing device.
Remove Enable EFI. Built-in EFI loader may work with Apple hardware only.
Enable 3D Acceleration under the display and set up maximum video memory.
Storage Controller type ICH6 and create a 20 GB Hard disk.
2) Mount empireEFIv1085.iso to CD drive. Make CD ROM the first bootable device. Keep your Snow Leopard DVD or ISO file ready.
3) Start the virtual machine. When the following screen appears, eject bootloader ISO and load Mac installation DVD or ISO.
To do it, right-click on CD drive and select drive or ISO image. Wait for a while and press F5 then ENTER key when DVD loaded.
4) Wait for some time. If you see the installation screen, you are almost done. Go through the installation process.
Go to disk utility and create a partition if you can’t see the installation disk.
5) I got the following warning message at the end of the installation. It’s not an issue, just restart the Virtual machine.
Note – Shutdown or Restart will not happen normally, you have to do it manually from the VirtualBox console. You have to load the empireEFI ISO again to boot the OS from the installed hard disk.
6) This time, select Mac OS hard disk by right arrow key and press Enter to boot. I’m sure after several initial configurations you will land on the Snow Leopard desktop successfully.
Let’s Fix Some Issues on Snow Leopard Virtual Machine
1) Network worked straight away. NAT and Bridged type worked without any patches.
2) Software Update: Yes, it worked. Since we used the vanilla kernel, this VM can be updated. I managed to update till 10.6.4.
3) USB Support: It worked well. Somehow data transfer is slow but manageable. It detected my USB hard disk and flash drive.
4) The sound in Mac OS X Guest: Sound is a little issue here but worked. I’m sure it will not bother you much.
Follow these steps to install sound drivers. For me it worked, one side speaker worked with little distraction. Something is better than nothing. You need to follow this guide to install sound drivers.
5) Screen Resolution and Screen Size: Follow these steps to adjust the screen size. Widescreen size didn’t work for some users.
6) Shutdown and Restart: We can’t shut down or restart Mac VM in a normal way. You may see the messages ‘CPU halted’ (for Shutdown) or ‘MACH Reboot’ (for restart), this means nothing will happen after it. We need to power off or reset the virtual machine from the VirtualBox console. Here is the working Snow Leopard on VirtualBox.
7) Update 1
Install Boot Loader permanently and some fixes
To avoid attaching empireEFI ISO every time to boot OS X virtual machine, we can install bootloader permanently on Mac hard disk. This method will install the Chameleon bootloader and some other drivers.
Go to Empire EFI CD which is already mounted and open the Post Installation folder. Take a snapshot before doing anything at this point. Run myHack Installer Package.
Select Customize in Installation Type.
Read each package description and select it if you need it for your computer hardware. I recommend not deselecting anything selected by default. Press the Install button to continue.
After successful installation, remove empireEFI ISO and start the virtual machine, it should boot from the hard disk as shown below.
If this doesn’t work, restore the virtual machine to the latest snapshot and install the Chameleon bootloader from a separate installation file in the Post Installation folder. This might fix the boot loader issue and improve performance.
8) Some fixes for booting issues
a) Mac DVD reading error – EBIOS read error: Error 0×0c Block 0×1ed48a Sectors 0
This is due to accessing data from a Mac retail DVD. Convert the DVD with some cloning software to ISO. Most people faced this issue and that was the solution.
b) Booting errors after installation.
Try Boot verbose or Boot Ignore Caches options. In the empireEFI bootloader, go to Mac disk by pressing the right arrow key. Once it’s selected, press the down arrow key which will bring more options. Select and press Enter.
c) Change boot loader for old type of processors: Select legacyempire_efi1085.iso, which is inside the same folder.
If this bootloader and method didn’t work on the Intel processor then try this method with a different iboot loader.
I hope these methods will be helpful to install the original Mac OS 10.6 Snow Leopard on Oracle VirtualBox with your Windows 10 or 8.1 computer. I mentioned a few troubleshooting steps which may be helpful as well.
UPDATE: Must have hung, restarted from the top and install went through mind it took 2-3 hours. Installing myHack has taken 1 hour so far.
Intel Core 2 Duo L9400 @ 1.86
3GB RAM
Windows XP
Virtual Machine
1GB RAM
42Mb Graphics
How can I speed this thing up?
No disks appear in the “Select the disk where you want to install Mac OS X” box… why?
@Luca,
by the time now you could have figured out.
” Go to disk utility and create a partition if you cant see installation disk.” already mentioned in this post.
It works! sorry :p
how long is it supposed to take after you load the sl disc with efi.
I appear to be stuck with an empty black screen.
thanks
@gastromagig,
It should start immediately. Can’t you see anything after loading disk? Is it retail DVD version? Just check the virtual machine’s disk activity.
Tell me about the processor and OS version. It can be an issue with boot loader or installation DVD. Good luck.
i’m having an intel core i3 530 ;ram{2+2}gb; 500gb cgate hard disk; &windows 7 .im very much desirant of having mac os x snow leopard installed on my pc.can you suggest me wether it is possible.
@ joshua,
Yes, you can. Make sure your computer supports Virtualization Technology ( VT) in BIOS.
Dinesh, thanks for the guide. I followed the instruction but stuck after F5 and enter. I got error message stating Darwin x86:
ACPI Table not found: DSDT.aml
Starting Darwin X86
Press any key to continue…
Here is the screenshot:
http://lh3.ggpht.com/_VpAReqNKg50/TKnX8Dm568I/AAAAAAAAApU/_YLyR_4jPF8/oxsinstallhung.png
After a pressed any key at that point, it simply hung.
Would you please offer some advice. My system is
Software: Windows 7 32bit, VB 3.2.6, Snow Leapard 10.6.3.
Hardware: Lenovo X201 Laptop with Core i5 M520 CPU.
Thanks much!
@gastromagig,
I’m having exactly same problem as you did. Did you solved your problem?
OK, I fixed my problem. The empire EFI doesn’t work with my i5 CPU. I used the iBoot-supported from here: http://tonymacx86.blogspot.com/2010/04/iboot-multibeast-install-mac-os-x-on.html, and it is installing now. Will update once it is completed.
OK, installed successfully with iBoot that I mentioned in my last comment. Thanks!
I am hoping someone can answer a pretty simple question for me. I am assisting on a hackintosh install in VirtualBox out of Linux on a Lenovo W510 notebook. Are the hardware kexts specific to the host machine’s physical hardware or is every install the same despite the host machine. I mean the hardware that the guest sees is emulated right? Excuse the ignorance.
@flynflip,
This method will work on Linux too as long it detects VT. Recently one reader confirmed the successful installation on Fedora host.
You can try without any doubts.
Just FYI, for folks like to stick with empire EFI, I found out that the latest-to-date iso that supports Core i CPUs works fine too. I didn’t actually do the installation but was I able to boot up the SL installer DVD.
http://prasys.info/2010/07/empireefi-1-085-for-osx-10-6-3-is-out/
@Kenneth,
Thanks for your comments and inputs.I started checking with latest release of EFI especially for Intel i series processors. You gave an idea to publish a new post 😉
Yes, iBoot works well on latest Intel processors which already covered in Sysprobs here,
https://www.sysprobs.com/iboot-loader-virtualbox-install-snow-leopard
@gastromagig,
Try the latest EFI or iBoot loader as mentioned here.
Let us know the status.
Yes Dinesh, we have successfully installed SL 10.6.3 in VirtualBox with some limitations. My question though is if the kexts needed to get things like graphics and sound are specific to the host machine’s hardware or are the kexts all the same no matter what the host machine is because the hardware is emulated? In other words, if I did this install on 30 different host machines with different hardware would the kexts be the same for each install or different depending on the host’s hardware. Thanks a lot for your help
@flynflip,
I got your question.
I’m not expert in kexts but based on this installation and your question I can answer as below,
If we install directly on physical computer ( several methods available to install SL on Intel,AMD hardware directly), yes, kexts should be modified to communicate to physical hardware. Here, its installed on virtual platform which is same for all. OS works with virtual devices which is not having direct access on physical hardware.
we can expect some improvements after VirtualBox release guest additions for Mac OS X which will never happen due to licensing and conditions.
Hope I answer your question.
can some one help i install the ma on my pc
and it work but if i try to get update to ver 10.64 what is need to the new safari my computer crash after the reast and
i try to to the update from apple web site
@gil,
Did you install any hacked version SL? if you installed original retail version, then update should not be an issue.
If you used hazard hackintosh version, use the following method to update to 10.6.4
https://www.sysprobs.com/install-update-snow-leopard-hazard-1064-vmware-player
@Dinesh, thank you for your response. I didn’t know the existence of your iBoot page. Otherwise it would have saved my day. Google search always led to this page. So it would be great if you can mention this in the empire EFI part of this guide to warn readers with Core i series CPUs to use iBoot instead. Actually even the latest EFI failed post-installation steps. Only EasyBeast works, and you must upgrade to 10.6.4 to get it work. The order is very important. And getting screen resolution working is also tricky. I have noted down those things in this post: http://kennethxu.blogspot.com/2010/10/install-snow-leopard-on-virtualbox-with.html
@Kenneth,
Yes, thats a good suggestion.
Checked your blog post and blog. Special thanks for linking back to my blog.
Keep up your good work.
Wonderful article , i was trying to install vm for a year but no luck.. i m going to try your steps…
Yes, Dinesh. You answered perfectly. Thanks a whole lot. I have set up a page at http://www.flynflip.com/Hackintoshing/WIP/W510_VB.asp helping out a fella installing Snow Leopard on VirtualBox running out of Linux Mint. I actually ran it out of Ubuntu to assist him. There might be information there to help someone else. I used info from your webpage in creating it. Just wanted to say Thanks! I will organize the page better once we are completely done. I am going to link your page from mine if that’s OK.
@flynflip,
That would be great if you give a back link.
Checked your post, its having very useful screen shots.
For Intel i series processors, check this post for using different boot loader,
https://www.sysprobs.com/iboot-loader-virtualbox-install-snow-leopard
Thanks for your response and back link.
I am using Darwin bootloader and Oracle VirtualBox 3.2.10…
While loading TMSafetyNet.kext from the Snow Leopard DVD(retail) I am getting an error message called
“Invalid Front Side Bus Frequency 45Hz…..Disabling the CPU”
My specs
Processor: Intel Core 2 Duo (2.8GHz)
Motherboard: DG41RQ
RAM: 4GB
Hard disk: 500GB
I don’t have any graphic cards
My pc is not a notebook but a desktop computer
@Suchith.J.N,
Can you boot the OS from darwin boot loader in VB? I suggest to use empireEFI boot loader with VB. Darwin never worked for me in VB except VMware for some reasons.
Kext installation may fail on virtual machine without physical environment, I’m not sure it will work perfectly.
I switch out for the leopard ISO and hit F5 and enter… and it runs through a bunch of cmd line stuff, ends with System uptime in nanoseconds: 612384449, and then just sits there.
Doesnt move on to install or anything, any ideas?
Thanks for the help and the tutorial so far,
Ryan
@Ryan, Whats your computer processor config and which boot loader you are using?
Something wrong on them.
@Dinsesh
Intel T8300, 2.4 ghz. I attempted both the boot loader from this tutorial, Empire EFI (tried mounting both the normal and the one labelled legacy) and I’ve tried another method just checking off the chameleon boot loader in OSX86 install options, both to no avail.
I consider myself very proficient in PCs but when it comes to virtualization, this is my first steps into the field haha. Hopefully that info helps, thank you
@Ryan,
I should have asked this question earlier.
‘ Is your processor supports Virtualization Technology? ‘
Please enable it and try.
Hope this will give some ideas and prove your self ‘proficient in PCs ‘ haha 😉
Let me know the outcome
Virtualization is supported and enabled, that’s whats so confusing. As far as I know I followed the directions to a T. I’m starting to question if it’s my copy of OSX86 that could be the issue?
@Ryan,
The error related to processor, that means boot loader issue. I don’t think it will be a problem with installation medium.
Have you tried iBoot loader?
What ever boot loader you use, next time boot it with -v -legacy ( verbose and legacy mode) options. you can see the last error message, just share it here.
Sorry for late response.
When I hit F5, A message appears at the top left of the screen, under where the memory is displayed, saying:
“Memory allocation error (0xdaa2680, 0x20498)”
And it just sits there at the empire efi screen. The install never starts.
Experiencing exactly the same as Ryan
After swapping to snow leopard ISO, F5 and enter, I end up with the System uptime message too.
Prior to this message (further up the command line output) there are loads of messages for example:
Kext com.apple.iokit.IOACPIFamily failed to load
Kext com.apple.driver.AppleACPIPlatform failed to load
Kext es.osx86.driver.EvOreboot failed to load
(Each with error codes)
A bit further and:
Couldn’t alloc class “AppleACPIPlatformExpert”
Couldn’t alloc clas “es_osx86_EvOreboot”
Then my favourite bit:
“Please contact someone with a photo of the information printed below, along with a description of your system configurationa nd what you were doing at the time that the kernel panic occured. We apologize for the inconvenience.”
Experiencing exactly the same as Ryan
After swapping to snow leopard ISO, F5 and enter, I end up with the System uptime message too.
Prior to this message (further up the command line output) there are loads of messages for example:
Kext com.apple.iokit.IOACPIFamily failed to load
Kext com.apple.driver.AppleACPIPlatform failed to load
Kext es.osx86.driver.EvOreboot failed to load
(Each with error codes)
A bit further and:
Couldn’t alloc class “AppleACPIPlatformExpert”
Couldn’t alloc clas “es_osx86_EvOreboot”
Then my favourite bit:
“Please contact someone with a photo of the information printed below, along with a description of your system configurationa nd what you were doing at the time that the kernel panic occured. We apologize for the inconvenience.”
Running a AMD Phenom X4 9950 BE with Gigabyte GA-MA-790FX board (virtualization on in BIOS)
@Anon,
Running this methods on AMD is really difficult. Anyhow, are you trying correct boot loader for AMD? its available here,
http://www.mediafire.com/?m5wzzwyfg4m
Yeah urm because this install guide is a little complex, i made a short video on how to install it very very easily.
Its only 8mins 30 and by the end you will have fully functioning OS X 10.6.
http://www.youtube.com/watch?v=NRsg1wGESIk
Your guide is good, but I haven’t got the file ISO of Mac Snow Leopard. Have you got it, or do you know where i download it?
Torrent sites should be your friend 😉 , look for retail version.