2007/03/16

How I setup my tri-boot on a Gateway 500s with XP, Kbuntu and OSX (hackintosh)

At home I have a relatively old Gateway 500s I use it as my second machine for writing, or surfing while I am gaming on my main PC. I grew a little tired of having XP running on both computers as I felt I was missing out by not trying something a little different, this is why I set up the task of tri-booting my PC to get the most out of this little box. I am using the default specs for a Gateway 500s but I've also added enough ram to take me to 768mb, a 5600 GeForce card and most importantly a DVD reader (you'll also need a way to burn DVDs)

Firstly and most importantly, make sure you backup everything you want to keep, personally after backing up my files I like to ghost the machine so I can quickly restore it back if I need the machine for something quickly. But however you do it, do run a backup, and heck you should have one scheduled to run anyway... right?

I'm going to do the best I can to break this down into steps, my main reason for crating this guide is so when I inevitably I end up breaking something I'll actually have some guide to get things working again. That said, lets go through what you'll be needing.

l A gateway 500s. Other systems will likely work, but bear in mind I am writing this for my specific hardware, specified above

l Windows XP SP2

l Kbuntu 6.10

l OSX X86 JAS 10.4.8

l Gparted

l About 4/5 hours of your time

1) Prepare the machine

a) Now you have backed up you files throw in the Gparted CD and answer the simple startup questions until you get to the partition screen.

b) For anyone that's used partition magic before this should be a cakewalk, begin by wiping the whole drive and we'll now create our separate partitions

c) The goal here is to create 3 primary partitions one for each OS. The exact sizes do not matter so much just follow this basic guideline then reboot. I have a 40gb HDD so my drive now looks like this

i. 13GB Primary, NTFS, Label “Windows XP”

ii. 13GB Primary, FAT32, Label “OSX”

iii. 7GB Primary, EXT3, Label “Linux”

iv. Extended Partition

v. 6.5GB Logical, FAT32, Label “DOCS” (Makes it easy to move files between OS')

vi. 500MB Logical, Linux Swap

2) Windows XP

a) Throw in your XP CD and begin the install on the first and only NTFS partition available

b) After install I recommend Autopatcher XP and running Windows Update

c) Reboot, XP is done!

3) OSX

a) This cam get pretty tricky, firstly put the DVD in the drive and continue until the install screen appears

b) At the top of the screen select Utilities / Disk Utility

c) Format the 13GB FAT32 partition as HFS+ Journaled, close the window and continue with the install, until......

d) Once you get to the screen with the little (and easy to miss) customize button the the bottom left, press the button and be sure to select the appropriate core based on your system, for me that'd be Intel and SSE2. From there you can continue with the install

e) At the point where OSX wants you to register you can press ALT+Q (If I remember correctly) to abort the registration

f) Now you should have OSX running, I found it was worthwhile to disable power management on my system as I felt it was doing more harm than good. If you do leave power management on you may need to change your BIOS to S1 mode, else the system seems less reliable when coming out of power save

g) Before we call it good, check your Internet. If you have a card like mine you'll likely find it not working. We can't fix this just yet, so continue onto Kbuntu and reboot for now

4) Kbuntu

a) Start up your PC with the Kbuntu CD in the drive, you should be taken to the live install screen

b) Choose advanced configuration of partitions

c) Be sure that the root partition is the 7gb partition, the swap is the 500mb partition and the 6.5gb FAT partition is mounted for ease of use

d) After install run the updater, you should have a flashing icon in the bottom right

e) Install NVIDIA drivers by launching; (K), System, Adept

f) Search for nvidia

g) Select nvidia-glx, request install and apply changes.

h) Start the terminal, you'll find this under; (K) , System , Konsole

i) Type
sudo nvidia-glx-config enable” and reboot

j) If you get an error about X starting and don't get a graphical display. Then you might have to try “sudo dpkg-reconfigure xserver-xorg” and test.

5) Grub

Now we're nearly there! We have all 3 OS' on the system, we just need a way to access them all, we can do this with some simple changes to the GRUB boot loader

a) Login to Kbuntu and start the terminal, you'll find this under; (K) , System , Konsole

b) Firstly we'll back up your boot list, type this command
Sudo cp /boot/grub/menu.lst /boot/grub/menu.bak”

c) Now we'll edit the boot list
Sudo pico /boot/grub/menu.lst”

d) You should now have a little window with all your grub paths in it, I won't explain everything here as it speaks for its self mostly, I'll just mention the basics

i. title – The text you want displayed in the boot loader

ii. root – The partition you want to boot from (hd0,0) would be the first partition on the first drive (hd0,1) would be the second partition and (hd1,2) would be the third partition on the second drive. Etc.

iii. savedefault – Makes the selection the default once you have used it (always defaults to the last chosen OS)

iv. makeactive – Makes the partition active and allows the OS to boot from it. I'm no expert on this, I just know it works :)

v. chainloader – No clue, I use it, it works (see above)

e) So, with that knowledge, if you've partitioned the same as me, you should have something like...

title Linux

root (hd0,2)

kernel /boot/vmlinuz-2.6.17-10-generic root=/dev/hda3 ro quiet splash

initrd /boot/initrd.img-2.6.17-10-generic

quiet

savedefault

boot

title XP

root (hd0,0)

savedefault

makeactive

chainloader +1

title OSX

root (hd0,1)

savedefault

makeactive

chainloader +1

f) Save the file by pressing “CTRL+X” “Y” “enter”

g) Reboot and test the boot loader, if all works okay, then CONGRATULATIONS!!

6) Cleanup

Like I mentioned I had no luck with my Intel Pro/100 VE on board card, now we have XP loaded I can show you how to get that card working again

a) Login to Windows XP start up device manager and find your network card

b) Check the details, you should see the device instance ID, make a note of these details
VEN_XXXX DEV_XXXX

c) Reboot back into OSX

d) Now we need to add that card to the list of devices, so firstly copy the file from “/System/Library/Extensions/IONetworkingFamily.kext” to your desktop

e) Duplicate the file again onto your desktop (always make those backups)

f) If you right click the file you should have the option of “Show package contents” this will allow you to browse the .text file.

g) Browse all the way down to Contents/PlugIns/AppleIntel8255x.kext and then show the content of that package also

h) find /Contents/Info.plist and open it with a text editor

i) find the line “<key>IOPCIMatch</key>”

j) Underneath that line is a list of the supported hardware IDs, you'll have to add yours to the end of the list, My note shows I was ven_8086 & dec_2446 this made my code 0x24498086, this means my info.plist file shows...

<key>IOPCIMatch</key>
<string>0x10518086 0x10508086 0x10298086 0x10308086&amp;0xfff0ffff 0x12098086 0x12278086 0x12288086 0x12298086 0x24498086 0x24598086 0x245d8086 0x10918086 0x10608086&0xfff0ffff 0x24498086</string>

k) Save the file and copy it back to “/System/Library/Extensions/” overwriting the existing file

l) open the terminal (click the spyglass in the top right, type terminal)

m) Type the following two commands
“sudo rm /System/Library/Extensions.kextcache”
“sudo kextcache -k /System/Library/Extensions”

n) close the terminal and the open windows, click the spyglass again and start the Disk Utility

o) Click the repair disk permissions button and reboot.

p) Click System Preferences / Network and OSX should report that it has a new Network Card!

8) Sources

I could never of completed this guide or have made my own tri-Boot machine if it wasn't for the great sources available on the Internet. Here are the sources of the info I found so credit can be given where it's due

Wtcnbrwndo4u & elislider at insanelymac.com
If it wasn't for this thread I don't know if I'd of ever got my network card working

cybernet1 at blogspot
This is the guide I loosely followed to understand how to start tri-Booting

yolinux
I'm terrible at remembering Linux terminal commands as I'm a dos man, this is my translator

Opera
Now you have 3 great working OS' be sure to install the Opera browser on each

9) Footnote

I am no expert of OSX or Linux, as I mentioned before this guide is mostly for my own reference so I can learn more about these alternative OS.

Please run a backup before attempting any of the steps outlined in this guide, I'm not responsible for your data.

If you find this guide useful and want to reference it, that's great, but please give me appropriate credit.

Do not pirate! It hurts the industries I care about, and bumps up the prices that honest people must pay.

- Mad Elk