How to install Snow Leopard on Virtualbox

I decided to write an article on installing snow leopard on VM since I spent quite a big of time trial and error. (And also as a record for myself).

Most of it is taken from http://www.taranfx.com/install-snow-leopard-virtualbox together with some of my experience.

Requirements:

  • Windows XP 32bit system (tried on Win7 x64)
  • Virtualbox v3.2 Beta 3 (v3.2 Beta 1 doesn’t work properly on win7 64bit)
  • Leopard distro (iAtkos 7, iDeneb v1.3 10.5.5, etc
    (I tested and both iAtkos 7 and iDeneb v1.3 seems to work, didn’t test the rest)
  • Snow Leopard Retail CD converted to ISO format so that you can mount the image on virtual box
    (If it’s in DMG format, use UtraISO or PowerISO to convert it to ISO)
  • Download and attach this Addon Util image[iso]. (contains few Kexts, utils). (link taken from taranfx)

Basically how we go about installing snow leopard on virtualbox is to first install leopard on a “harddisk”(virtualbox harddisk) and then boot up leopard and install snow leopard on another virtualbox harddisk. Installing leopard is generally no problem if you set the virtualbox settings correctly.

Install Leopard

I tried installing leopard for virtualbox 3.1.2, 3.1.4, 3.1.8. Didn’t try for 3.2 beta though, just upgraded my virtualbox and it still works, I believed it should be the same for 3.2. But in case it doesn’t install leopard using virtualbox 3.1.4 and then install virtualbox 3.2 over it.

Virtualbox Settings:

One new feature of Virtualbox is support for Mac OS X. Choose Mac OS X. Choose BSD/FreeBSD for Operating System/Version for versions earlier than 3.2.

Under System

  • Boot Order, check “CD/DVD-ROM”
  • Check “Enable IO APIC”
  • Probably you want to choose 1gb or more for the Base Memory
  • For Processor, choose 1 (or more – if it doesn’t work, choose 1)
  • For Acceleration,  check “Enable VT-x/AMD-V” (This is very important, if your computer does not support this option, you will not be able to install successfully or even reach the leopard installation screen)
  • you can check “Enable Nested Paging” (this shouldn’t matter from my experience)

Under Display(optional)

  • Enable 3D Acceleration

Under Storage

  • Add a IDE Controller and a Harddisk under the IDE controller  for installing Leopard (10gb or more)
  • Add a CD/DVD device and select your leopard distro image
  • Make sure the IDE Controller type is “ICH6”

Under Network

  • Check “Enable Network Adapter”
  • Choose “Bridge Adapter” (it should work for NAT etc also – you can change the settings for this, I don’t think it matters)

Under Serial Port

  • Uncheck “Enable Serial Port” (default settings, I didn’t test with serial port)

Under USB

  • Check “Enable USB Controller”

Installation process is straight forward.

  • If you are using iAtkos 7, you need to choose System->PS/2 mouse/keyboard->Apple PS/2 driver-Driver (there should be 3 options under this section, select only 1)
  • You might want to choose Ethernet driver (based on your Virtualbox Network settings), I chose the Intel ethernet drivers
  • When you’re done, it will want to restart your (virtualbox) machine
  • Allow it to restart and power off your system

Install Snow Leopard

The VM settings should be the same except that now you need to add another IDE harddisk under the IDE controller for your snow leopard installation and you need to moun the Util.iso and the Snow Leopard image.

You also need to choose the Boot Order to Hard Disk instead of CD/DVD-ROM

  • Power up your VM
  • Boot up your Leopard as usual (go through the usual registration process)
  • When you are on Leopard, Open up your Disk Util under Utility and format your snow leopard harddisk using the Volume Format Mac OS Extended(Journaled) (Assume the name given is “Snow”)
  • You should see the MacUtils on your leopard, open it and run the “unHideIt” application (you might need to do this twice)
  • Open you the Snow Leopard disk and browse to /System/Installation/Packages and run OSInstall.mpkg (note that there’s also another OSInstall.pkg, make sure you run the correct one if not you will not see the snow leopard installation screen)
  • Install Snow Leopard (you might want to customize your installation according to your needs – e.g. removing the printer drivers)
  • Install Chameleon which is found in the MacUtils to Snow Leopard drive. Refer to this if you need help installing Chameleon (Correction : Step 3 should be sudo dd if=boot1h of/dev/rdisk0s2)

You should do these changes to /Volumes/Snow:

  • Remove /Extra/Extensions (if any)
  • Copy from MacUtils/Mac/Extra/Extensions to Extra/Extensions
  • Delete SMBIOSResolver.kext
  • Copy from MacUtils/Mac/System/Library/Extensions to System/Library/Extensions
  • Navigate to System/Library/Extensions and delete “AppleIntelCPUPowerManagement.kext”
  • Fix permissions by using Terminal (from Applications > Utilities):
su
cd /Volumes/Snow/System/Library
chown -R root:wheel Extensions/
cd /Volumes/Snow/Extra
chown -R root:wheel Extensions/
kextcache -a x86_64 -K /Volumes/Snow/mach_kernel -m /Volumes/Snow/System/Library/Extensions.mkext /Volumes/Snow/System/Library/Extensions
kextcache -a x86_64 -K /Volumes/Snow/mach_kernel -m /Volumes/Snow/Extra/Extensions.mkext /Volumes/Snow/Extra/Extensions

(taken from taranfx)

Note: Keep your Leopard machine as there might be some problems with your snow leopard partition and you might want to edit it.

Configure Snow Leopard

Create another machine on Virtualbox with the same settings as before except that there’s some changes to the storage (the Leofx name in the pic would be better named as Snow Leopard or something) (snow.vdi in my case is my snow leopard harddisk)

  • Power up your system and boot snow leopard with the -v option (type -v when you are at the Chameleon boot screen so you will be able to know if there’s any problems)
  • My experience is that different machine has different kinds of problems
  • If you get some error messages while loading some kext, power up the previous leopard system and access your snow  leopard volume  and go to System/Library/Extensions and delete the kext, usually those kext will be in another color (Red or Orange etc) – backup and delete it, then boot up your snow leopard machine
  • From my experience, i get slightly different problems on my Win7 x64 and Win xp so it’s quite difficult to set exactly what needs to be deleted etc
  • You might also get problems with DSDT (refer to http://www.projectosx.com/forum/index.php?showtopic=121, basically you have to copy the dsdt.dsl to your /Volume/Snow root directory)
  • You can update to 10.6.3 through the usual Software Update on Snow Leopard. However, you might need to boot up your leopard machine and remove the DMOS.kext from /System/Library/Extensions because it will have some DMOS kext loading problem.

Some of the details might not be very details and accurate because I’m writing this based on what I remember from my few days of frustrating experience.

Sound

Check out http://forums.virtualbox.org/viewtopic.php?f=4&t=30843 and try the manual method. The first package didn’t work for me. Works for 32-bit OS. Didn’t work on Win7 64bit.

What doesn’t work?

  • sound
  • virtualbox shared folder (there’s no installation package for Mac) 0 refer to bottom for guide how to share folder
  • Taking screenshot

Share folder between Windows and Mac (on VM) both of them have to be on the same network, your Mac (on VM) will be connected to the network as if it were another physical machine

  • Go to System Preferences->Network
  • Select your connected connection
  • Click Advanced…
  • Select WINS
  • Type in the same workgroup as your windows system
  • Create a share folder on windows (let’s call this “win_machine”)
  • On Mac, Go->Connect to Server…
  • Type “smb://win_machine” (without the quotes)

42 thoughts on “How to install Snow Leopard on Virtualbox

  1. Great. Thanks for your instructions – though I still haven’t succeeded in getting Leopard up and running on Vbox yet (however – your instructions are more detailed and helpful to me than Taranfx’s). I have a couple of comments / questions:

    After configuring Virtualbox, do you need to add to the following string to the virtual machine xml?:

    Here is where I got stuck (using Windows 7, iDeneb 1.3 OS X 10.5.5, and trying both Vbox 3.1.4 and 3.2):

    I was able to get the iDeneb screen to open up in Vbox, and I used Disc Utility to erase the 10 gb hard disk. Do I need to “prep” this drive in order for it to accept the iDeneb installation? Because, after I got to the point of “Selecting Destination Drive” and started the installation – it appeared to be installing (the progress bar progressed about 98% of the way after waiting about 25 minutes) – but then it just stalled – and would not complete the installation. The “Installation Log” reported that there seemed to be some kind of “crash”.

    I looked at your other guide: “How to install Mac OSX 10.5.7 on hp Elitebook 2730p (dual boot with win7)” but was somewhat confused because it’s a totally different set-up. Should we begin reading from the paragraph titled “Installing Mac OS”? Or should start at the beginning, applying the method at the beginning (“restoring” our OSX86 iso onto a partition like a USB disk)?

    It would be great if you could expand your instructions to clarify what should be done during this phase.

    Thanks!

  2. I meant this string, above:

    (ExtraDataItem name=”VBoxInternal2/SupportExtHwProfile” value=”on”/)

  3. From my experience, if you are using Virtualbox 3.20 beta then you do not have to put in the strings so its much easier.

    I think there might be some problems with your iDeneb distro. Maybe you can try another one. It shouldn’t stuck so long.

    If you are installing on Virtualbox, you can refer to step 4 (onwards) of that guide for the installation process.

  4. I was able to install Deneb 1.3 10.5.5 on vbox 3.1.8 under ubuntu
    I had to use these boot flags: (sometimes I think it worked without -legacy):
    -x -legacy -v
    I upgraded to vbox 3.2.0 (r61806) – and I had to switch the machine type to MacOS/MacOS in order to boot leopard again.
    Note: I had to try several times to install iDeneb – and I was only able to do it with customizing the install.

    I still haven’t gotten Snow Leopard working yet. I’ve completed all the steps for installing it under leopard, but can’t get it to boot.
    The last lines are (after all the .kexts):
    efi_inject_get_devprop_string NULL trying stringdata
    Patched DMI Table.
    No DSDT replacement found. Leaving ACPI data as is
    Starting Darwin x86

    … does this mean I need the DSDT.dsl? I haven’t yet been able to understand this, and wondered what your experience might be. Note: I’m using a Snow Leopard 10.6.3 disc.
    Thanks for any tips/ideas (and for writing this article)

  5. I try to use tour instruction guide, and i recipient that error massage. link: http://dl.dropbox.com/u/1381136/leopard_error.JPG
    someone know why i recipient that error??
    my pc:
    tx-2520 hp laptop
    3G ram
    cpu: AMD Turion X2 Ultra zm80 2.1Ghz; support AMD-V (and i enable this in my biose)
    OS:win7 64 bit.
    virtual box v3.2

    thank you for your help.

    Nicolas

  6. @Nicolas
    try the

    su
    cd /Volumes/Snow/System/Library
    chown -R root:wheel Extensions/
    cd /Volumes/Snow/Extra
    chown -R root:wheel Extensions/
    kextcache -a x86_64 -K /Volumes/Snow/mach_kernel -m /Volumes/Snow/System/Library/Extensions.mkext /Volumes/Snow/System/Library/Extensions
    kextcache -a x86_64 -K /Volumes/Snow/mach_kernel -m /Volumes/Snow/Extra/Extensions.mkext /Volumes/Snow/Extra/Extensions

    commands

  7. @xh

    I recipient the error on startup.
    before installation.
    how i can use those commands?

    Nicolas

  8. @Nicolas
    When you are installing leopard? Haven’t seen that problem with leopard. Maybe try another distro?

  9. Hi, first of all thanks for you help.

    I have installed iAtkos 4a Leopard 10.5.4 correctly. And follow all steps for install Snow Leopard 10.6, all right, but when boot the snow machine (with -v command), stop in:

    No DSDT replacement found, Leaving ACPI data as is
    Starting Darwin x86

    and nothing more, then boot freeze here.
    What I can do?

  10. Hi:

    I have installed leopard in a VB Machine, but when I try to execute “unHideIt” the screen just flashes, the process start and inmmediatly ends again. I am unable to start that program.

    Any help?

  11. That’s correct. You can try again. Probably after 2 runs. You should be able to see the hidden files

  12. Hi again!

    I have installed Snow Leopard in the other partition but when I try to get this commands done I get an error:

    “kextcache -a x86_64 -K /Volumes/Snow/mach_kernel -m /Volumes/Snow/System/Library/Extensions.mkext /Volumes/Snow/System/Library/Extensions”

    Error says: “couldn’t find any bundles to archive”

    Any help…??

    Thank you so much for your answers!

  13. Hi… I get over the error I described up there but now when I try this:

    “kextcache -a x86_64 -K /Volumes/Snow/mach_kernel -m /Volumes/Snow/Extra/Extensions.mkext /Volumes/Snow/Extra/Extensions”

    I get this error:
    “warning: kernel extension /Volumes…/Extensions/fakesmc.kext is missing dependencies (including in cache anyway; dependencies may be available from elsewhere”

    For both kext, I don’t now what to do. I googled and saw that in the taranfx commented the same, but there’s no solution for me.

    Thanks for any help you could give me!

  14. I searched a little bit more and I found out that the warning could be ignored because it included it anyway.

    So I tried to boot the machine with that hard disk (the one in wich I installed Snow Leopard) and I get the Mac logo and nothing else happens. If I try to enter in verbose mode (tab, and then “-v”) it loads a lot of things and then shows me a black screen, nothing else happens.

    I’ve tried this to:
    -v arch=i386 cpus=1 busratio=20
    -v cpus=1
    -v busratio=20
    -v arch=i386
    -v cpus=1 busratio=20

    And other combinations more…

    In the taranfx they say that changing the OS type to FreeBSD(64x) fixes the problem, but in my case it didn’t too…

    Thanks for the help! =)

    V3NOM

  15. i tried with FreeBSD previously but it didn’t work for me. That’s why i ended up working with the beta version of virtualbox which supports Mac OSX virtualization.

    ok you have to get the

    “kextcache -a x86_64 -K /Volumes/Snow/mach_kernel -m /Volumes/Snow/System/Library/Extensions.mkext /Volumes/Snow/System/Library/Extensions”

    command working if not it will not work properly from my experience

    try

    “sudo kextcache -a x86_64 -K /Volumes/Snow/mach_kernel -m /Volumes/Snow/System/Library/Extensions.mkext /Volumes/Snow/System/Library/Extensions”

    (then enter your mac login password)

  16. Hi xh:

    I do have VB 3.2.2 and I selected MAC OS X as operative system.

    I will try to get that kext althought, as I said, someone wrote that you could ignore that warning without anyproblem because it’s just that, a warning.

    Any other ideas?
    Is your PC an intel or amd setup?

    Many thanks!

  17. I’m using VirtualBox 3.2, managed to get leopard working, but after running osinstall.mpkg I get empty alert message which closes entire installation, anyway how to go around this?
    Thanks!

  18. I have followed your instructions on this webpage. I am running VB 3.1 or whatever, and I am using iAtkos v7. Why does it get stuck at the grey screen with the dark grey apple logo? It won’t go passed. Just has the thing spinning.. What am I doing wrong? This is the second distro I have tried that did the same thing. Thanks for you help!

  19. I have gotten Leopard to install, but now when I boot the Virtual Box, it just sits at a grey screen with the apple logo in the middle.

    Anyone seen this before?

    Running Virtual Box version 3.2.6

    AMD Athlon 64×2 Dual Core 2.6ghz
    4 GB ram – 1.5 for VB
    Windows 7 32bit

  20. Leopard seems to boot up but there’s just a black screen after all the verbose code goes by. No error messages.

    Video driver issues? Should I switch to onboard or something?

    Phenom II x4 555BE
    ATI x1950 Pro

  21. You mentioned deleting the SMBIOSResolver.kext. Where would this file be located, and is it necessary, as it’s not mentioned in Taranfx’s tut.

    Also, I’m having the same issue with “No DSDT replacement found” like a couple other people here. Would patching the DSDT help? The process looks rather complex, involving patching Chameleon, the DSDT table, and moving various files around.

    Thanks

  22. Thank you for this, the extra detail was helpful. So far I am doing pretty well. If I am successful with Virtual Box, does that mean my hardware should be able to work and than dual boot. My hardware isn’t listed as support over at osx86 so I thought the VBox was a good way to get my feet wet. Now that it is working, should it work in the same way if I actually install it on another partition and dual boot win 7 pro?

  23. @Joel Not necessarily. Virtualbox usually works cos it is able to create a specialized hardware/system environment

  24. Okay, That is what I suspected but this is new to me so thanks for the help. I think I’ll return to this blog. Verry friendly…

  25. Best you could edit the post title How to install Snow Leopard on Virtualbox A Developer's blog to something more generic for your content you create. I loved the post even sononetheless.

  26. Hi, sorry for the newbie questions. Im having the dsdt problem 😦
    How do i copy the dsdt file to the /Volume/Snow root directory?
    Also how/where do you write the commands? sudo doesnt work. I get the the chameleon startup screen. If i dont do anything i get to a grey screen witht he apple logo. If i press enter i see a list and can type things. But sudo comands etc say “can’t find sudo”
    Please can someone help

  27. please help, i try to install iatKOS S3 v2 on my virtualbox. i follow your instructions above, booting dvd successfully.
    1. select languages.
    2. preparing… install iatKOS, continue.
    3. select disk to install –> there is no disk display on the screen.
    so i can’t continue installation.

  28. hi,
    i tried to install snow leopard (from dvd / host=lion).
    During installation there´s a screen asking me to select a destination volume but the field is completly blank(I did create `vdi`).

    Any suggestions?

    regards

  29. first you must partition your destination drive! you can do that in the installation menu of your mac os. then you`ll see a destination drive.

Leave a comment