Oh the adventures!
I was traveling recently and decided to take my travel laptop (due), its lighter. When I finally got to my room and settled in I fired up my laptop.
To my demise.. I mean surprise, it had Ubuntu Linux (6.04) installed. I rebooted to make sure GRUB (the Linux Bootloader) didn’t have “Windows XP” as an option. It didn’t. Oh well, I like Ubuntu, in fact I love it.
I would’ve been perfectly fine with that if it weren’t for another one of the associates here telling me all about using my Blackberry as a modem. I was thinking “heck yeah! I want to try that.”
I learned that Linux and Blackberrys don’t work well (damn you RIM!). To make a long story short, in order to use your phone as a modem you NEED to have Blackberry Desktop Manager installed. I looked for alternatives but I couldn’t find any. So, I thought, well, WINE should be able to run it right?
I got online and downloaded it and just ran the executable under WINE. Things were going well! It started to install, in fact the install completed. It even created a shortcut on my Ubuntu desktop. Next step, run it and connect my Blackberry. That didn’t go so well. For some reason, once installed, it would not load up. It tried but it just didn’t work.
So then, I was thinking, well I need to install Windows now. All I had was my backup ISO image of Windows. Unfortunately Windows doesn’t do network installs, installs off a USB or anything but CD (and floppy I think). That was a show stopper. I tried to find a CD to burn the ISO image on to but I had no luck with that.
Then, I got another fancy idea. How about I just run the Blackberry software in Windows virtualized? I had the ISO, I just needed Xen, VirtualBox, or Virtual PC (why did I think Microsoft made a linux version of Virtual PC??). I chose VirtualBox, it went smooth, I got Windows installed, got Blackberry Desktop Manager installed and running… until one more thing.
The USB interface has to pass through the virtual desktop to Windows. It sort of worked after I made some changes to devsubfs.inf but not really. So then, I started doing some research. It turns out that several people have been able to get the mass storage part to work (so they can transfer contacts, pictures, other media) but not the modem part.
I was sad.
I was carrying my laptop bag around and had some folders in my hand and decided to just consolidate. I opened the bag and placed the folders in a thin compartment when I noticed the manual for the laptop and the original CD’s!! What a dope, I didn’t even realize to look there. Great! I thought, now I could install Windows and all would be fine.
I got back to my room and was so anxious that I just started installing Windows. When I had installed Ubuntu originally, I created 3 partitions for it but left 15GB of unallocated space. I tried to have Windows use it but it complained that it could not create a 4th partition. Darn! Maybe Linux could. I rebooted and used Gparted to create the partition and just in case, I also formatted for FAT32 (NTFS was not an option). I tried the Windows install again and it saw the partition with no problem. The install went really well and I was inside Windows.
Now, the problem is that I need to get at my Linux partition and boot that, primarily. I should have taken this into account BEFORE! The NTLDR (NT Boot Loader) can boot Linux, sort of, it redirects to GRUB or LILO (both Linux boot loaders). Its simple actually, you just take the first 512 bytes of the boot drive BEFORE installing Windows and save that to a text file. Later, you can edit boot.ini and point it to your text file. Nice. I didn’t do that. I now have Windows and no way to boot Linux. Crap.
I have no Linux boot CDs, no rescue disks, no floppy, no.. oh wait: I can boot Linux from my thumb drive. I thought if I just downloaded a rescue disk for a USB thumb drive I could probably get back in and setup the dual boot! As I researched this, it seems its not as easy to do this in Windows as you’d expect. I found a lot of instructions about using a thumb drive to boot, but there were mostly for Linux.
I found a project called GRUB4DOS and WINGRUB. Its a boot loader based on GNU GRUB but it can be used with the Windows Boot Loader (NTLDR). I don’t think its made for the purpose I intended to use it for but I was desperate.
I tried it anyway. I copied the file “grldr” to the root of my C: drive and edited the boot.ini file by adding a line: C:\grldr=”Start GRUB”
I saved the file and continued with my research. After some time, I got frustrated, shut down my computer and went to sleep. The next day, I loaded my computer to continue researching this and try to get it to work. As I booted I saw that I had “Start GRUB” as an option. I selected it thinking “Whats the worst that could happen?” It immediately brought up my Linux GRUB screen, I was impressed! I selected Ubuntu and it loaded with no problems. Just to double-check, I rebooted and selected Windows. All worked fine. What a crazy adventure!
So I guess the takeaway from this post, besides the usual (research stuff, know what you’re doing before you start, always have backups, etc!) is that the GRUB4WINDOWS project is actually very useful and I hope development continues on it.