Search My Blog

Monday, July 12, 2010

Fedora, Linux and Stuff

Boot Failure When Fedora 12 Grub Installs to non-MBR Partition

November 17th, 2009 ~ 10:53pm

I prefer to keep Windows on the MBR. So I install grub to a separate partition. I then allow the Windows Loader to chainload grub (example).

I noticed a problem with the Fedora 12 Anaconda Installer. If I chose to install grub to the First sector of boot partition instead of the MBR, I get an un-bootable system.

It is easy to see the problem if you compare fdisk output. (I reduced the output for clarity)

Before I installed Fedora 12 32-bit to /dev/sda10

   Device Boot      Start         End      Blocks   Id  System /dev/sda1   *           1        2089    16779861    7  HPFS/NTFS /dev/sda4            6268       36479   242677890    f  W95 Ext’d (LBA) /dev/sda10          23762       25589    14683378+  83  Linux /dev/sda14          34076       36192    17004771   83  Linux /dev/sda15          36193       36478     2297263+  82  Linux swap / Solaris

After I installed Fedora 12:

   Device Boot      Start         End      Blocks   Id  System /dev/sda1               1        2089    16779861    7  HPFS/NTFS /dev/sda4            6268       36479   242677890    f  W95 Ext’d (LBA) /dev/sda10  *       23762       25589    14683378+  83  Linux /dev/sda14          34076       36192    17004771   83  Linux /dev/sda15          36193       36478     2297263+  82  Linux swap / Solaris

The boot flag is set to the wrong partition.

To fix this problem

Just boot with a CD/DVD, choose “Rescue” mode and run fdisk at the shell to change the boot flag. If you need more help, details follow:

  1. Boot with the system using your Fedora DVD or CD#1.
  2. Select “Rescue installed system”. (Select the proper settings, networking is not necessary)
    At the “Rescue” screen, you can “Skip” the mounting of your installed system.
    At the “First Aid Kit quickstart” menu, Select “shell”.
  3. At the shell prompt, use fdisk (BE CAREFUL!)
    bash-4.0# fdisk /dev/sda 	 Command (m for help): a        (toggle bootable flag) 	 Partition number (1-15): 10    (the partition you installed Fedora) 	 Command (m for help): a        (command needs to be run twice) 	 Partition number (1-15): 1     (the partition with MBR) 	 Command (m for help): p        (verify everything looks correct) 	 Command (m for help): w        (write table to disk and exit) 	 The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disk.
  4. Reboot.

I doubt this will affect many people since most people choose to install Fedora directly to the MBR. However I am reporting here in case someone else might find this useful. I noticed this a few days ago on Fedora 12-Beta 64-bit, but I had been too busy to check the bug reports. Will do that soon.

If you run into this problem (or similar) please leave a comment or contact me.

UPDATE: Should be fixed for Fedora 13. Bug 533658


Go there... (this one is on down the page...)
http://www.mjmwired.net/linux/

Don

No comments: