Page 1 of 1

Don't "upgrade" the Rescue and Recovery if you dua

Posted: Tue Jan 22, 2008 11:01 am
by rmcder
I logged into my WinXP partition last night and there was an upgrade for the Rescue and Recovery program. I installed it, and it screwed with the MBR (I guess) and messed up the GRUB bootloader. I couldn't boot into anything!

Fixed with SUPERGRUB this morning. No more upgrades to THAT program for me!

Posted: Tue Jan 22, 2008 11:19 am
by whizkid
I dual boot (Fedora and Vista), and my MBR is the original factory MBR. Vista and XP will boot Linux if you write the GRUB boot loader to your Linux partition, then copy that boot sector to a file on the NTFS drive. Edit boot.ini to include that file, and the ThinkPad button works, recovery software works, changes to the MBR make no difference and you can still boot into Linux.

Posted: Tue Jan 22, 2008 2:21 pm
by rmcder
whizkid wrote:I dual boot (Fedora and Vista), and my MBR is the original factory MBR. Vista and XP will boot Linux if you write the GRUB boot loader to your Linux partition, then copy that boot sector to a file on the NTFS drive. Edit boot.ini to include that file, and the ThinkPad button works, recovery software works, changes to the MBR make no difference and you can still boot into Linux.
That sounds great! Can you be more specific about how this is all accomplished? How do I get the bootloader to go to the Linux partition, for example (mine just went wherever it went). Which is the boot sector for Linux? Is it different than for XP? Been awhile since I worked with boot sectors! Save this sector as a txt file, or...? Where and how does the filename get added to boot.ini? And in my case, how do I then get my mbr back to "normal"? Is there a wiki for this somewhere?

Posted: Tue Jan 22, 2008 4:44 pm
by whizkid
RandR should have made your MBR "normal" in that it's the way Lenovo/Microsoft want it. The MBR holds not only some boot code but also the partition table, so it can be different for every machine.

These steps should do the job, but I don't have all the details.

Get your normal MBR back. Either update RandR or do a factory restore. Make a backup of the MBR. I don't know how to do that in Windows, but if you boot a Linux CD, use '''dd if=/dev/sda of=file bs=512 count=1''' and put that file on something like a memory stick for backup.

Set up your partitions: Resize your NTFS partition, keep the hidden partition and install Linux. Write the GRUB loader on the first block of the Linux partition instead of the MBR. Again back up your MBR. Now you will not easily be able to boot into Linux.

Boot a LiveCD and read the Linux partition boot block and put it in a file on a memory stick, or write it directly to your C drive with something like '''dd if=/dev/sda2 of=/media/stick/grub bs=512 count=1'''.

Boot into Windows, copy that file somewhere easy like C:\ and edit boot.ini (using Notepad) to use that file. That's for XP. I don't know how Vista does it.

Thinkwiki.org should have more information.