Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Hi I'm an Ubuntu newbie here. I've installed ubuntu 11.10 to dual boot on a single HDD. I did a manual partition and basically forgot all the on what sda my /boot partition is. My installation worked out just fine and I tried to install updates with it. After a while I when I wanted to boot to windows it showed that I was missing a "hal.dll" file. I've fixed this problem using the windows resource CD but then after booting up my PC it went straight to Windows XP. I've tried to manually reinstall Grub2 using a Live CD/USB and it worked but I think I have installed in on a different "sda#" (sda5 to be exact) because even though Grub2 loads when I boot my PC, only windows XP shows up as my OS and Ubuntu 11.10 is missing.

Now, I've tried installing boot-repair to solve my problems using Live CD/USB. Boot-repair tells me that boot configuration was successful but then a basic grub interface shows up (the black one with a command line grub> showing up. Now I can't even boot to Windows XP. Any help would be really appreciated. BTW here's the notes from boot repair that I was asked to save: As you can see there are boot files on sda5 and sda7. I think that's the core problem that I have right now.

Thanks in advance!

share|improve this question

I solved a similar missing hal.dll problem for a dual-boot of XP and Ubuntu 12.04 (which I installed after Windows) and Grub2. I couldn't boot up Ubuntu so I used Boot-Repair which fixed Grub2 and let me boot Ubuntu, but broke my Windows XP boot, ironically (I believe) because I had selected "Repair Windows boot files" option.

The solution I found was to boot into Ubuntu and edit Windows' C:/boot.ini file. When I compared this file to the boot.ini.bak file, I saw that the partition number had been inappropriately changed from the original:




Once I restored boot.ini to the original (by pasting the contents of boot.ini.bak into boot.ini) such that XP booted from partition(2) and not partition(3), Windows XP booted up just fine!

I am really new to this stuff, but I believe this problem occurs because Boot-Repair recognized my Ubuntu swap drive (which is a logical/extended and not a primary partition) as an extra partition, whereas Windows XP did not. Thus, Boot-Repair will potentially break your Windows boot.ini file if there are logical partitions preceding your Windows installation.

share|improve this answer

Please run Boot-Repair, click "Advanced options", then:

  • in the "GRUB location" tab, select the "Use separate /boot : sda5" option

  • and in the "GRUB options" tab, tick the "FlexNet" option

  • then apply, and indicate the new URL that will appear. Reboot and check if it's better.

share|improve this answer
Thanks for your swift response. I did exactly what you've said. I now have the Grub2 back on but still the only OS that it has on the list in Win XP on sda2 and now when I click on it to log on to Windows it says that I'm missing the hal.dll file again.Here's the new URL that appeared: Thanks for taking the time to respond. – yoopian Mar 19 '12 at 16:10
ok, now GRUB sees Windows, but you still have 2 problems: (1) Ubuntu is not recognized by GRUB. (2) Windows is broken. For Ubuntu you can try following this tutorial ( ), and for Windows you can try to download a new hal.dll file from the internet. If i were you, i would simply backup my documents, then reinstall XP, then reinstall Ubuntu, this would be faster. – Yann Mar 20 '12 at 13:20

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.