So it would seem triple-booting Vista, XP, and Ubuntu isn’t as easy as I thought it would be. If you’re not a technologically-oriented person (or if you get bored after reading three paragraphs), you’d better give this post a wide berth. Also note that this is not really a tutorial. I simply stumbled through this situation all on my own and take no responsibility for the pain you might feel when you nuke your computer and hit your head repeatedly on the keyboard because you did what I did.
All right, so, because I’m a geek, I decided to take it upon myself to put not one, not two, but three operating systems on my laptop. It started when I got a new hard drive and completely wiped all the Dell crap off of it so I could install Vista and Ubuntu. I couldn’t do this before because I had some weird partitioning going on with my hard drive due to the presence of Dell MediaDirect. As such, I couldn’t make enough partitions (one primary for the OS and one extended/logical for swap space) to put Linux on. After nuking MediaDirect, I was able to get things started. This was easy. Vista was already installed, so all I had to do was make some space and pop in the Ubuntu Live CD. It installed GRUB (the Linux bootloader), which automatically picked up Vista and let me boot to it just fine.
Things went great for a while until I thought to myself “Hey, why not put XP on this computer, so I can play games that don’t work in Vista?” I know, strange reasoning, but it made sense at the time. Vista isn’t the best operating system for gaming just yet. Some games are incompatible, while others suffer from framerate losses. XP is the overall better gaming OS since it’s got fully mature driver and software support. I had enough room, so I thought I’d give it a try. All I’d have to do was shrink a partition, install XP to that partition, add it to GRUB, and off I’d go. Easy, right? No, of course not.
This is, basically, how my partitions were laid out on the disk:
Vista - Unallocated (soon to be XP) - Ubuntu - Swap
I backed up all my data to an external drive and set about getting XP installed. First I shrank the Vista partition to make room for XP. I then restarted and began installing XP. This is where I ran into the first interesting bit. Not really a problem, but still kind of weird. Because there were three other partitions on the disk, XP assigned them all drive letters. Vista was C, Ubuntu was E, and the swap was F. This meant my XP partition would be getting the letter G, which I knew was going to make life hard later on (since some applications will always install to the C drive in Windows).
Installation went fine (if you don’t count me forgetting the CD key, which was stored on the Vista partition of my computer; I later remembered I had it stored online as a backup). When my computer restarted, it didn’t show GRUB and went straight into XP, which I had anticipated. Windows always overwrites the Master Boot Record (MBR) of your hard drive without warning, replacing any bootloaders that might be there (such as GRUB or LILO, another Linux bootloader) with its own. So, for the time being, I couldn’t boot into Vista or Ubuntu. Luckily, I made a Super GRUB CD a while back just for things like this. This little gem will let you do a number of maintenance-related things, such as booting OSes straight from their respective partitions or repairing bootloaders (either GRUB/LILO or Windows versions). After checking to make sure XP had installed fine (albeit with no driver support for anything), I restarted with the Super GRUB CD and reinstalled GRUB in the MBR of my hard drive.
The GRUB menu came up as it always did, with Ubuntu and Vista. I selected Ubuntu but it wouldn’t start. I realized that, because I had put the XP partition after my Vista partition (the first one), I had move Ubuntu from the second partition to the third, which mean the menu.lst file which powered the GRUB menu was pointing to the wrong partition to boot Ubuntu. Thankfully, GRUB is highly configurable, so I was able to temporarily edit the menu to point to the right partition for Ubuntu and boot it up.
The first order of business in Ubuntu was fixing the menu.lst file to reflect changes in partitions as well as to add XP to the bottom of the file. Everything looked fine, so I saved the file and rebooted once more. This is where things got ugly. Ubuntu would boot up fine. However, selecting the XP option gave me an error and the Vista option booted me into XP. Whoa.
It turns out that XP installed its own bootloader, which overwrote both GRUB and the Vista loader. So, by booting into the first partition, (hd0,0) in GRUB, I wasn’t booting into Vista as I thought I was. A simple boot repair with the Vista installation DVD reinstalled the Vista loader, allowing me to boot up in Vista through but now I couldn’t get to XP. You can imagine my frustration at this point. Some research while in Vista made me think that I couldn’t use GRUB to boot up everything. I’m sure it was possible, but I simply could not figure out what I needed to do. So I decided to run everything through the Vista bootloader by using EasyBCD to configure it
This worked fine for both Vista and XP (after I put the ntldr file from the XP install CD into the root of the XP partition), which both booted up through the Vista loader once I had removed GRUB using the Super GRUB CD. But, if you haven’t already guessed, I couldn’t get to Ubuntu. Foiled again! I’m still in the midst of figuring this latest problem out. For some reason, I can’t seem to get Ubuntu to boot through configuring EasyBCD, which is supposed to allow Linux to be added to the Vista bootloader. I was getting an error (fixed by correcting a typo in the bootloader entry for Ubuntu) and now I’m simply getting a blank screen whenever I try to boot to Ubuntu. Argh.
So, if you are ever thinking of triple-booting your computer, follow the lovely instructions laid out by Ilya Hevnikov, which should save you the kind of grief I’ve been experiencing.
UPDATE: Somehow, I managed to get Ubuntu to load off the Vista bootloader. I don’t quite know how, but it may have had to do with updating the version of EasyBCD I was using. Or something like that. I know, I’m so helpful. Anyways, I’m now in triple-booting nirvana, having even installed the Ext2 IFS for Windows, which allows me to access my Linux partition from both WinXP and Vista. Plus, I can fully access my Windows partitions from Linux using NTFS drivers there. Excellent.
UPDATE 2:: Well, it appears that the blog article I linked to in the last paragraph of the article is no longer existent, except within the bowels of the Wayback Machine. Lucky you. If that still doesn’t work, here’s the short version: install XP, install Vista, install Ubuntu. If you do it in that order. Some tweaking will be in order, but everything should work.
Sphere: Related Content
I have a Dell E1505; The computer is fine, but the MediaDirect key is a killer! I have also nuked all Dell installed partitions, but try pushing this mediadirect button! It will nuke your hard drive. Do you know how to disable the mediadirect key?
I’ve looked around, but I can’t find anything about disabling it. Apparently, you can download programs to reassign it but I’m not too sure about how those work. I just avoid pushing it so I haven’t messed around with trying to disable it.
http://ubuntuforums.org/showpost.php?p=4030535&postcount=9
I found a fix for the Dell Self-destruct-direct (MediaDirect) button problem.
A little background info might be in order though. What the Dell MediaDirect button (next to the power button and has a house icon on it similar to an internet browsers “Home” button) does when the hard drive is partitioned in a way that it does not expect (aka, linux installed) it rewrites the partition table that it thinks it should have. Your partition table is essentially like the table of contents pages in a book with 100 billion pages, without it your screwed.
What we’re going to do here is offer a way to disable the button if you don’t care about the data on the drive (like right after a fresh install) OR a way to recover your partition table with a nifty program called testdisk.
Plan A - Disable Destruct Button
You can low-level format your hard drive to permanently remove the danger the button poses to your future data, because you _will_ loose ALL data currently on your drive. Issue the following command from a live CD/DVD booted system.
****WARNING USE ONLY FROM LIVE CD/DVD******
****WARNING WILL DESTORY ALL DATA ON DISK*******
Code:
sudo dd if=/dev/zero of=/dev/sda
The above command writes zeros in every sector of your hard drive, aka “Zeroing the drive”. Zeroing the drive has been known to overwrite the HPA (Host Protected Area) of the hard drive where the MediaDirect partition is hidden on the drive. Afterwards, pressing the self-destruct button will harmlessly show the MediaDirect splash screen and then boot GRUB.
The above came from Skuzniak here
Plan B - RECOVER YOUR DATA.
If you have pressed the dreaded MediaDirect button and now have a very expensive paper weight for a laptop, FEAR NOT! testdisk to the rescue!
1) Boot up your live CD/DVD (like the one you used to install from).
2) Copy the additional repositories to your /etc/apt/sources.list file on your live CD/DVD session. The live CD isn’t mean to install packages/programs to since it is erased when your reboot, however, if needed you can install a small amount of extra data. Like repair utilities. You can find instructions on how to do this HERE.
3) Issue the following command to update your repository list after you changed your sources.list file and also install the precious data recovery utility “testdisk”, as well as run testdisk after it’s installed creating a testdisk.log file of all it’s actions in the directory you issue the following command from.
Code:
sudo apt-get update && sudo apt-get install testdisk && sudo testdisk /log
4) Use the arrow keys to select your laptop hard drive. If you are using the live CD/DVD you should see two hard drives.
/dev/hda (the live CD virtual drive) and /dev/sda (your laptop hard drive)
To “Proceed”, tap the “Enter/Return” key when you’ve selected the appropriate hard drive.
5) Tap the “Enter/Return” key again on the next screen to select “Intel/PC” partition type.
6) Tap the “Enter/Return” key again on the next screen to “Analyse” (spelled the way it is in the program) your hard disk and search for your lost partitions.
7) This screen shows the screwed up partition table.. just tap the “Enter/Return” key again to “Proceed”
If you’re lucky you’ll see two or three partitions (If you let Ubuntu install configure your disk for you). Something like what you see below:
Code:
* Linux 0 1 1 18752 254 63 301266882
L Linux Swap 18753 0 1 19456 254 63 11309760
Tap the “Enter/Return” key again to “Proceed”
9) Now tap the right arrow key twice and tap the “Enter/Return” key to write the recovered partition table. Confirm it by taping the “Y” key and then the “Enter/Return” key.
10) Reboot your computer and take the live CD/DVD out.
NOTE: I had to do this twice for it to work for some reason, but after that, my precious Kubuntu booted up normal just like it used to without one file missing!
THANK YOU NICOLAE and PSEUDOMANCER!
Thanks for sharing, Ron. Screwing up your computer is never fun, especially if a single button can cause such mayhem.
I just smacked this button on Friday and am despondent. F***ing dell!!!!!!!!!!!