Slashdot Mirror


Fedora Core Doesn't Like to Dual Boot?

schwatoo writes "It seems Fedora Core doesn't like to boot alongside Windows 2K or XP. According to a bug first reported in February on Fedora's bugzilla site it has a tendency to chew up partition maps making it impossible to dual boot into Windows. No one seems to know quite what is causing the problem and a lot of people are ending up with unbootable machines."

11 of 608 comments (clear)

  1. its a hardware problem by ozzy_cow · · Score: 5, Informative

    Copy and paste from here


    It turns out that the bug (#115980) is a result of a few subtle but key changes within the 2.6 kernel. A certain functionality with regards to hard disk geometry has been pulled out, as the kernel developers thought it would be better if userspace utilities took care of this instead. The Bugzilla bug is related to CHS geometry problems, which most likely stems from an error within the parted utility, addressing the BIOS incorrectly. It turns out that BIOS updates tend to fix problems for many users that have been bitten by this "bug". On newer machines, this is basically non-reproducible.

    1. Re:its a hardware problem by hurtta · · Score: 5, Informative
      Actually if you check Mandrake's bugzilla, they have the same problem. You can check it out at here. Mandrake listed the bug as resolved/fixed although it doesn't look like it actually was fixed.
      On there is quite good description what is happening:
      Part of the reason I could not understand the bug, is that I could not
      believe windows XP was still using the error prone int13 function 2
      (CHS based) instead of the (available everywhere for some time) int13
      function 0x42. Under linux, grub and lilo only use function 2 when
      function 0x42 fails (they don't even ask the BIOS if it manages 0x42
      since some BIOS don't report correctly having this functionality, cf
      FORCE_LBA in grub)

      The other reason is that I thought BIOS faking heads number (the
      so-called LBA mode) was a choice independant of the content of the
      drive. This is wrong, the BIOS tries to adapt its mode based on the
      partition table [1]

      So here is what happened:
      - kernel 2.6 doesn't try to give the logical geometry, and gives the
      physical geometry instead [2]
      - diskdrake uses the physical geometry to generate the CHS information
      (which is a broken duplicate of the linear sector number)
      - the BIOS sees the partition table uses a different CHS geometry, and
      adapt to it
      - ... and Windows computes the CHS to read its stage1.5 based on the
      previous geometry that it keeps in its boot sector. Alas the CHS
      doesn't get the same sector and Windows's boot dies (with very bad
      error detection) [3]
      That is comment 21. That same comment indicates that problem is fixed:
      Code fix description: inspired by the way new fdisk and parted detects
      the logical geometry based on the partition table [4]. parted code
      is especially quite robust.
      The fix is now included in cooker (DrakX #1.912), so:

      I still would like to access the BIOS geometry, esp. for empty
      partition tables. But kernel 2.6 doesn't give us this
      (/sys/firmware/edd/int13_dev80/default_heads is plain wrong on a box
      here)

      Known workaround: forcing LBA mode in the BIOS
  2. Mandrake also by cyphr555 · · Score: 5, Informative

    Mandrake 10.0 Official also suffers from this problem. This is leading many to believe that it is an issue with the 2.6 kernel, rather than a specific distro.

    1. Re:Mandrake also by Pros_n_Cons · · Score: 5, Informative

      Finally half way down the thread someone admits It's not just a Fedora issue. SuSe 9.1 also has the problem
      Mandrake Bug
      SuSe Bug
      Read This Page If you want to find out whats responsible.

      --

      -- "of course thats just my opinion, I could be wrong." --Dennis Miller
  3. Re:Now by Timesprout · · Score: 5, Informative

    well it was first reported in Feb so oviously they are in no great hurry to fix it.

    --
    Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
    What truth?
    There is no dupe
  4. Re:Now by DJStealth · · Score: 5, Informative

    The windows boot loader searches a file called boot.ini, inside it, it contains disk and partition numbers.

    Since you swapped your HD's around, the disk #'s are now different, therefore it won't boot.

  5. OK, just use the XP bootloader by Sleepy · · Score: 5, Informative

    I hate to rain on people's parades, but if you're making a system dual-boot with Windows, the conservative/safe thing to do is NOT install a bootloader.

    Just use the one that comes with NT/XP. Of course it is limited in features (esp. compared to GRUB) but it works.

    It's not a ton of work either:
    Write a LILO bootloader to a partition, use 'dd' to copy that to a file (floppy helps), copy the "file" to Windows, and edit boot.ini to point to it.

    Sure, it's not automated, but we're talking just a few steps, and then your're 100% confident that the next upgrade of Windows will not choke.

    It would be nice if the PC industry could get "all OS vendors" to agree to universal bootloader, and maybe even get it in the BIOS, but the situation is what it is. You've got to be very careful when dual booting, especially with BETA software.

    Sounds like the GRUB and kernel people need to work closer together. I don't know about GRUB, but the kernel has some pretty good testsuites so I am surprised this was not caught by the Linux Test Project (LTP). I'm hearing it's actually a 2.6 kernel problem, and since not a lot of people have upgraded to 2.6 we're hearing about it now.

  6. Re:Some hints for safe partitioning by UnderScan · · Score: 5, Informative

    It may not be necessary to completely format and wipe clean the HD if you lose the partition table. To repair/write a partition table to disk, normally you might use fdisk and have to hand enter the sectors/blocks boundaries of the partitions.There is a open source tool called gpart. gpart will guess the partitions on the HD and can also write a new partition table to HD. I have had an instance where electrical outages & fluctuations caused the HD to lose its partition table. The table was inacurately identified the HD as one FAT16 patition when there was really a linux partition and a swap partition. gpart was able to clear this up and I did not lose and data. Go to http://www.stud.uni-hannover.de/user/76201/gpart/ to get the source or a binary for linux and freebsd. I think gpart is available on knoppix and perhaps also Gentoo LiveCDs.

  7. Re:...Could it be this problem? by Sigma+7 · · Score: 5, Informative
    I have Linux on my hda, and WXP getting dustier and dustier on hdb. It would not start until I added the following lines in grub.conf:

    title=Windows Xp
    rootnoverify (hd1,0)
    map (hd1,0) (hd0,0)
    map (hd0,0) (hd1,0)

    If you have to do that, then that means you've either moved a hard drive around, or did not install Windows XP in the directory it currently runs on (with the path including Drive and partition numbers.)

    The solution is to modify Boot.ini in order to update the pointers to the Windows directory. You can either modify the raw references to the disk and partition number, or change it to a Dos-style path of "C:\WINDOWS". If you really wanted to, you can even run install multiple copies of Windows XP on the same partition (with features such as System Restore being considered unstable.)

    As you should know, Bootstrapping requires an absolute path pointing to an application, even on Linux. If the absolute path on the hard drive changes, the absolute path given in or to the Bootstrap must be changed as well.

    Maybe they assumed everybody would use this configuration.
    No, they assumed that everybody would not change partitions or hard drives around after the Windows XP installation. This is a fairly reasonable assumption, since modifing partition tables or hard drive configurations implies that you know how to restore operating systems to a workable state if something messes up.

    It's also why you see warnings with reparitioning software to backup your harddrive. If something breaks and you don't know how to fix it, then you have something to fall back to.
  8. Re:No Firewire Either by tuffy · · Score: 5, Informative
    There isn't firewire support compiled into the kernel. If you want to connect an iPod or use any other firewire devices you have to recompile the kernel. That is a really stupid omission especially when it was reported in bugzilla during test 2!

    From what I remember, not only was Firewire unstable in time for release, but was causing instability even for people without Firewire. I'd rather they held off on including it until it is stable rather than risk data loss by including it prematurely.

    --

    Ita erat quando hic adveni.

  9. Ooops, there was supposed to be a hyperlink there by Nailer · · Score: 5, Informative

    The fix is here.