Solved

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

Posted on 2004-04-03
9
1,774 Views
Last Modified: 2013-12-15
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

0
Comment
Question by:karomon
  • 5
  • 2
  • 2
9 Comments
 
LVL 9

Expert Comment

by:Alf666
ID: 10751496
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.
0
 
LVL 44

Expert Comment

by:Karl Heinz Kremer
ID: 10751758
What's in your grub.conf (or menu.lst) file for your Linux partition?
0
 
LVL 44

Expert Comment

by:Karl Heinz Kremer
ID: 10751775
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.
0
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 

Author Comment

by:karomon
ID: 10752212
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
0
 
LVL 44

Expert Comment

by:Karl Heinz Kremer
ID: 10752238
To re-install Grub run this command (as root):
grub-install /dev/hdaX
- with hdX replaced by your actual boot device.
0
 
LVL 44

Accepted Solution

by:
Karl Heinz Kremer earned 250 total points
ID: 10752250
If I interpret the PM output correctly (and I don't have a lot of experience with this), the correct command line for grub-install should be:
grub-install /dev/hda2

(and this seems to be also what the RH installer used when it wrote the menu.lst file)

I would boot the Linux system with the boot floppy and follow the instructions on the web page that you quoted again. The instructions look correct, it's possible that you made one small mistake (e.g. copied the wrong boot sector). Make sure that you check and double-check all device names that you use. Don't use the ones from the example, always use the correct names for your system.
0
 
LVL 9

Expert Comment

by:Alf666
ID: 10752252
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.

0
 

Author Comment

by:karomon
ID: 10752945
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
0
 
LVL 44

Expert Comment

by:Karl Heinz Kremer
ID: 10753369
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.
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
nagios alerts 3 44
linux(debian) mouse poor performance 4 39
000webhost.com default error log 1 27
maybe no no httpd.conf 6 46
rdate is a Linux command and the network time protocol for immediate date and time setup from another machine. The clocks are synchronized by entering rdate with the -s switch (command without switch just checks the time but does not set anything). …
The purpose of this article is to demonstrate how we can use conditional statements using Python.
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
Connecting to an Amazon Linux EC2 Instance from Windows Using PuTTY.

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question