Re: GRUB problem (double windows + linux)
- From: insomniux <dispose02@xxxxxxxxxxxxxx>
- Date: Fri, 21 Sep 2007 14:08:09 -0700
Hi Stef,
Thanks for your reply.
The disk numbering and naming are correct, although they are
confusing. It took me quite a long time to find out how to set up
grub.conf, since the partition numbering changes during the boot
process (as explained) when I start linux (gentoo). Again, when I do a
search in grub during booting (e.g. for boot.ini) I get a different hd-
numbers as when I;m in linux (and start grub manually). I guess this
is caused by the combination motherboard (asus a7n8x) and the sata
module. My IDE disks are on the same controller. My SATA disks (yes,
you are right, there is a fourth disk) are NOT recognised a sdx, but
as hde and hdg. The reason why I use the hide/unhide lines are that I
do not want Windows to see the other windows disks/partitions. They
are not essential for the booting process and have no effect on the
current behaviour (hanging windows). When I remove the rootnoverify
lines, I get a grub-error while booting.
When I set the bios to boot HD1 (has windows), winXP is started up
correctly. So effectively the windows systems are viable and can be
started. When I telll the bios to boot my 1st SATA disk (which holds
grub in the mbr) and continue to run windows (pressing the F8 key) I
do get the windows screen with the debug options and the boot options
of boot.ini are displayed. So Grub does find the right partition.
However when I then select a boot option and ENTER, immediately the PC
hangs and I have to do a hard-reset.
I've also refreshed the mbr's of both IDE disks, but no succes. The
boot.ini's of the windows partitions point to the 1st partition of the
first hd on the first controller (which in fact is correct because of
the re-mapping (in Grub).
I'm still puzzled. Especially since this worked for years. I'm 100%
certain that linux and grub did not change. I'm not certain about
windows (you never know...). And finally it could be a hardware
problem. Could it be a hw problem with the ide-controllers?
Mike
On 16 sep, 02:50, Stefan Patric <toot...@xxxxxxxxx> wrote:
On Tue, 11 Sep 2007 13:48:51 -0700,insomniuxwrote:
Hi,
I've a weird problem. For years I've been able to boot my windows and
linux setups without any problem, but suddenly neither of both windows
versions respond, Linux does start normally. I;ve not changed anything
to any of the systems.
I've noted that you've gotten no responses on your query. I am no grub
expert, but I do have some experience writing grub.conf files for my own
systems as well as trouble shooting others. So, here goes...
Something must have changed to cause the problem whether you personally
made it. FWIW, Windows is always doing strange things to itself, whether
it's the only OS or not on the system. For now, we'll just not deal with
that.
When I try to boot any of the windows, it hangs (really, keyboard is
dead) immediately (black screen). When I use F8, it hangs after the
selection of WinXP (also in safe mode). When I change the boot disk in
the bios to HD-0 or HD-1 (with windows), winXP starts up normally.
Are the two Windows drives Master on SEPARATE IDE controllers, or is one
a Master and the other a Slave on the SAME controller?
My setup is as follows:
IDE1: winXP (4 partitions)
IDE2: winXP (2 partitions)
SATA1:linux (with grub in mbr)
Do you mean IDE0, the first controller, IDE1, the second; and SATA0, the
first SATA controller?
Bios boot: SATA
Grub version 0.96
Linux taste: Gentoo
GRUB menu.lst:======================
default 0
timeout 5
splashimage=/boot/grub/splash2.xpm.gz
title=Standaard Gentoo Kernel (MAXTOR = hde) unhide (hd2,0)
unhide (hd2,1)
unhide (hd2,2)
unhide (hd2,4)
unhide (hd3,1)
unhide (hd3,0)
kernel (hd0,0)/boot/vmlinuz-SATA root=/dev/hde2
hd3? Are running a 4th hard drive? And dev/hde2 is wrong for a SATA
drive. That would be the 5th IDE drive. SATA drives under Linux are sda
for the 1st, sdb, the second; etc.
In the kernel line, (hd0,0) is correct grub designation for the first
hard drive on the boot chain, first partition. Since you've set in BIOS
for the only SATA drive to be the first dirve BIOS checks for booting,
(hd0,0) is correct. However, root=/dev/hde2 is incorrect.
If your root partition / is the on the 1st partition on the SATA drive,
the command should be: root (hd0,0); and it should be the first in the
stanza, right after the title line.
You should also define, if you have one and you probably do, the path and
file name of initrd, the initial ramdisk. It's usually in the /boot
directory. That is,
initrd /boot/initrd ... and so forth
And those hide/unhide commands... They are only need for DOS and older
Windows OSes. Comment them out for now. Linux doesn't need them.
So, the first stanza for booting Linux should be, more or less:
title Standard Gentoo Kernel
root (hd0,0) <if your root partition is the first one>
kernel /boot/vmlinuz-SATA root=/dev/sda1 ro
initrd /boot/initrd <or whatever the file is named>
I would comment out, that is, put a # as the first character on each
line, all the Windows stuff, save, and see, if the system boots.
You have to do this all as root or superuser.
Now, to the Windows stuff... Wow! What a mess! If the system is
booting into Linux okay, edit the Windows one at a time, until it works
correctly, then move to the second. I give you suggestions for fixes,
but without actually being at you system and seeing what's happening,
they might not work.
title=Windows 1
unhide (hd3,0)
unhide (hd3,1)
hide (hd2,0)
hide (hd2,2)
hide (hd2,4)
map (hd0) (hd3)
map (hd3) (hd0)
rootnoverify (hd3,0)
makeactive
chainloader +1
There's that 4th hard drive hd3, again. The mapping is wrong: No hd3.
You probably don't need the rootnoverify command. Plus, it's performed
on a non-existant hard drive partition.
Okay. Corrected (maybe ;-) ) Windows 1 stanza. Assumes OS on 1st IDE
hard drive, second in line for booting, that is, (hd1) in grub, /dev/hda
Linux.
title Windows 1
root (hd1,0)
makeactive
chainloader +1
That should do it. Check that the boot flag is set for this drive and
not the SATA one. Linux doesn't require the boot flag be set to boot.
Windows does. Okay. Save and reboot, pick Windows 1 in the menu and see
if it boots. If it doesn't, get back to me. If it does, make similar
changes to Windows 2, designating the proper hard drives. Don't set the
boot flag on this one. You may have to map it to /dev/hda or hd1 or /dev/
sda or hd0. Trial and error on this. For now, comment out the hide and
unhide commands. See, if everything works without them. KISS.
title=Windows 2
hide (hd3,0)
hide (hd3,1)
unhide (hd2,0)
unhide (hd2,2)
hide (hd2,4)
map (hd0) (hd2)
map (hd2) (hd0)
rootnoverify (hd2,0)
makeactive
chainloader +1
=======================
Furthermore it is quite weird that the numbering of the disks is
different when I'm in linux (win1 = hd0; win2=hd1) as compared to when
I;m in the bootscreen (win1=hd2, win2=hd3).
Explained above. The bootscreen designation comes from the incorrect
grub.conf file.
A word of caution: Before making any changes, BACK UP EVERYTHING!
Particularly, your original grub.conf or menu.lst or whatever it's named.
Save all to an external media, flash drives, CDs, etc. Have a Linux
LiveCD handy, so you can boot the system and edit menu.lst, if the system
doesn't boot. Also, read and study thoroughly the grub info file. It
will tell you everything about grub. To read it, in a terminal type:
info grub.
Good luck.
Stef
.
- References:
- GRUB problem (double windows + linux)
- From: insomniux
- Re: GRUB problem (double windows + linux)
- From: Stefan Patric
- GRUB problem (double windows + linux)
- Prev by Date: Help finding files
- Next by Date: Re: Help finding files
- Previous by thread: Re: GRUB problem (double windows + linux)
- Next by thread: passwd prompts for new password only once when <enter> is pressed
- Index(es):
Relevant Pages
|
Loading