Link to home
Start Free TrialLog in
Avatar of karomon
karomon

asked on

Dual boot WinXp With Linux RH9 through Grub. <Windows root> \system32\hal.dll Error

Hi, I'v read many Threads about similar problems but couldn't fix mine though.

I have one hard drive, 80G, partitioned into 7 parts as followed: (from pm8)

===========================================================================================================
Partition Information for Disk 1:    76,316.6 Megabytes
Volume         PartType    Status    Size MB    PartSect  #   StartSect  TotalSects
===========================================================================================================
I:             NTFS        Pri,Boot  5,577.2           0  0          63  11,422,152
               Linux Ext3  Pri         196.1           0  1  11,422,215     401,625
*:SWAPSPACE2   Linux Swap  Pri       1,200.2           0  2  11,823,840   2,457,945
               ExtendedX   Pri      69,343.1           0  3  14,281,785 142,014,600
               EPBR        Log       7,703.0        None --  14,281,785  15,775,830
C:             FAT32       Log       7,703.0  14,281,785  0  14,281,848  15,775,767
               EPBR        Log      15,006.0  14,281,785  1  30,057,615  30,732,345
               Linux Ext3  Log      15,006.0  30,057,615  0  30,057,678  30,732,282
               EPBR        Log      23,399.4  30,057,615  1  60,789,960  47,921,895
D:             NTFS        Log      23,399.3  60,789,960  0  60,790,023  47,921,832
               EPBR        Log      23,234.6  60,789,960  1 108,711,855  47,584,530
F:NO NAME      FAT32       Log      23,234.6 108,711,855  0 108,711,918  47,584,467

I Installed WinXp on Drive I (NTFS) and then install RH9.
I followed the instructions on this link in order to dual boot those Os's:
http://www.geocities.com/epark/linux/grub-w2k-HOWTO.html

Now I have the option to choose winXp or RH9. When I choose WinXp everything works fine.
When I choose Linux RH9 I get the following error:
<Windows root> \system32\hal.dll
********************************************************
My boot.ini file :

[boot loader]
timeout=10
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Pro" /fastdetect
I:\linux.bin="Linux RH9"
***********************************************************
My "grub.conf" file is configured as followed (Only the WinXp part):

title WinXp
     rootnoverify (hd0,0)
     chainloader +1

I didn't write here the fdisk partition for u to see but I tried all numbers instead of the "zero" in (hd0,0) although I know winXp is No.1 . (Thus supposed to be 0 in Grub).
If it's important I can write that too.
pls pls help because I'm very frustrated and tired from this RH installation :)

10x,
Amir

Avatar of Alf666
Alf666

I don't know grub. But what's happening here is that your RedHat boot does not boot RedHat.

You should boot your rescue disk, check your grub config and re-apply it to your boot sector.
What's in your grub.conf (or menu.lst) file for your Linux partition?
Do you have a boot floppy for your Linux system?
You can always use Grub in the MBR to boot both your operating systems. If this fails, you can restore your MBR using the fixmbr function from your WinXP install CD.
Avatar of karomon

ASKER

yes I have a bot disk for linux.  Here is my grub.conf:
-------------------------------------------------------
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,1)
#          kernel /vmlinuz-version ro root=/dev/hda6
#          initrd /initrd-version.img
#boot=/dev/hda2
default=8
timeout=10
splashimage=(hd0,1)/grub/splash.xpm.gz
title Red Hat Linux (2.4.20-30.9smp)
      root (hd0,1)
      kernel /vmlinuz-2.4.20-30.9smp ro root=LABEL=/
      initrd /initrd-2.4.20-30.9smp.img
title Red Hat Linux (2.4.20-30.9bigmem)
      root (hd0,1)
      kernel /vmlinuz-2.4.20-30.9bigmem ro root=LABEL=/
      initrd /initrd-2.4.20-30.9bigmem.img
title Red Hat Linux (2.4.20-30.9BOOT)
      root (hd0,1)
      kernel /vmlinuz-2.4.20-30.9BOOT ro root=LABEL=/
      initrd /initrd-2.4.20-30.9BOOT.img
title Red Hat Linux (2.4.20-30.9)
      root (hd0,1)
      kernel /vmlinuz-2.4.20-30.9 ro root=LABEL=/
      initrd /initrd-2.4.20-30.9.img
title Red Hat Linux (2.4.20-8smp)
      root (hd0,1)
      kernel /vmlinuz-2.4.20-8smp ro root=LABEL=/
      initrd /initrd-2.4.20-8smp.img
title Red Hat Linux (2.4.20-8)
      root (hd0,1)
      kernel /vmlinuz-2.4.20-8 ro root=LABEL=/
      initrd /initrd-2.4.20-8.img
title Red Hat Linux (2.4.20-8bigmem)
      root (hd0,1)
      kernel /vmlinuz-2.4.20-8bigmem ro root=LABEL=/
      initrd /initrd-2.4.20-8bigmem.img
title Red Hat Linux (2.4.20-8BOOT)
      root (hd0,1)
      kernel /vmlinuz-2.4.20-8BOOT ro root=LABEL=/
      initrd /initrd-2.4.20-8BOOT.img
title WinXP
      rootnoverify (hd0,0)
      chainloader +1
      makeactive
-------------------------------------------------------------------

If I have to use GRUB for Both Os's (as u said) please tell me  how to do this. Of course, if u can tell me how to fix my current configuration it's better for me.

Alf666 - What should I check in Grub.conf and how do I re-apply it to my boot sector.
thanks a lot,
Amir
To re-install Grub run this command (as root):
grub-install /dev/hdaX
- with hdX replaced by your actual boot device.
ASKER CERTIFIED SOLUTION
Avatar of Karl Heinz Kremer
Karl Heinz Kremer
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I suspect that grub has not been installed at all on the boot sector.

When you boot, do you get grub or the standard windows boot selector menu ? (I suspect windows).

In this case, do as khkremer says.

Avatar of karomon

ASKER

Ok, it works (partially)
I changed the boot .ini to call linux.bin from c:\
At first I wrote  I:\linux.bin="Linux RH9" (As I wrote before) because 'I' is my WinXp drive so I thought it should be he same.
Anyway, I'm getting to grub but I get all the options that are written in my grub.conf file (above).
What option should I choose to enter my red hat 9 installation? Why do I have all this options and how can I delete the one's I don't need.(and what are the one's I can delete).
Can I only delete them from the grub.conf file or are there additional components that should be removed?
Btw - it's a RH9 updated from RH8.

thank u very much,
Amir
Select the first one. You can delete the others. When RedHat adds a new kernel (or a new configuration), it will add an entry to the Grub file. This way you may end up with lots of entries that you don't need anymore. Once you know that your default configuration is working, you can edit the grub.conf (or menu.lst) file and remove the ones you don't need. Just keep the first one. You don't have to do anything else but to delete the records from the file.