Jump to content











Photo
- - - - -

problems with kexec grub4dos to boot win XP


  • Please log in to reply
11 replies to this topic

#1 satishk

satishk

    Newbie

  • Members
  • 10 posts
  •  
    United States

Posted 22 June 2010 - 09:22 PM

Hi,

I found this site while I was searching on net for kexec & grub4dos issue. I am using kexec to start a second kernel (grub4dos and then windows). I have installed Fedora Core 13 first and Windows XP later on disk. I am using kexec-tools-2.0.1.tar.bz2 and I just extracted it and ran ./configure and make commands.

I am using following commands to launch a second kernel –

Kexec –l /sbin/grub.exe
Kexec –e

First I tried grub4dos 0.4.4 but did not work then tried grub4dos 0.4.2 but that too isn’t working. I have copied grub.exe to /sbin. Also, copied menu.lst on windows partition. I am facing following problems with them -

Stuck at Launching GRUB when I use grub4dos 0.4.4 – It just stuck at Launching GRUB screen.

Keyboard not working when I use grub4dos 0.4.2 – With 0.4.2 version, grub4dos starts, shows some entries on screen then says failure. Then it tries to find /menu.lst but it doesn’t (I don’t know why as I have copied menu.lst in Windows partition (hd0,1). Then it neither finds menu.lst at /boot/grub/ or /grub. So it gives grub4dos command prompt but I can’t enter any thing as keyboard is not at all responding. Even Caps Lock, Num Lock LED not blinking.

In both cases, I also tried using –command-line option in kexec –l /sbin/grub.exe and given –config-file but did not work. Also, I tried various versions of grub4dos from 0.4.1 till 0.4.4 and latest of 2009-06-20 but did not work for me.

Menu.lst -
Color black/cyan yellow/cyan
Timeout=0
Default=0

Title Start Windows
Rootnoverify (hd0,1)
Chainloader +1
boot

Sequence is – Fron GNU GRUB start FC13  Run kexec commands from terminal  Should start grub.exe (grub4dos)  grub4dos should find menu.lst and launch Windows XP.

Please note that I can boot Windows XP from GNU GRUB with same menu.lst as above and also when I launch grub4dos as kernel from GNU GRUB and then grub4dos finds menu.lst and start Windows XP. I can’t launch Windows XP using kexec.

Please let me know whether I am following correct steps and using right versions or not and a possible solution for this problem.

Thanks,
SATISH KAGATHARA

#2 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1682 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 22 June 2010 - 09:48 PM

Unfortunately, kexec is a quirky thing. An OS like Linux can leave the system in who-knows-what state. GRUB4DOS normally is run at a pre-OS time and makes use of a BIOS-initialized environment. If Linux has "fouled up" your system state enough, then you can meet with the failures you're describing. You could try testing another hardware platform. You could try experimenting with coreboot in order to sanitize the environment before launching GRUB4DOS. It's very difficult to say which aspect(s) could have been "fouled-up" by Linux, but it's just a chance one takes with kexec.

#3 tinybit

tinybit

    Gold Member

  • Developer
  • 1175 posts
  •  
    China

Posted 23 June 2010 - 01:18 AM

Yes. That is a (known) problem on some machines, mostly DELLs.

You may try the development builds and help locate the bug.

You may download a latest one from chenall's site
http://code.google.c.../downloads/list
or from
http://nufans.net/grub4dos/tinybit/

And please try further with these 3 builds:
http://nufans.net/gr...it/grubtest.exe
http://nufans.net/gr...t/grubtest1.exe
http://nufans.net/gr...t/grubtest2.exe

See if one of them could work fine.

TIA.

#4 xclimbing

xclimbing

    Member

  • Members
  • 36 posts
  •  
    China

Posted 23 June 2010 - 03:18 AM

First, Please download the newest release of grub4dos from sites that tinybit give above.

Second, Just install grub4dos to your local harddisk's mbr and replace the boot loader of your Fedora. grub4dos is better than others as a boot loader.

or, you can call grub4dos from Fedora's boot loader( I don's know what it is, but I'm sure there a way to call grub4dos under it).

#5 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 23 June 2010 - 09:14 AM

Two sides notes:
  • there is NO point in using grub4dos to chainload a bootsector (hd0,1) +1, the "fun" is doing chainloader (hd0,1)/ntldr, i.e. bypassing the bootsector
  • check this (it may be of use or of no use whatsoever, cannot say):
    http://www.boot-land...?...c=10499&hl=

@Tinybit, Climbing, Bean, whoever else involved in grub4dos development:
could you please either STOP shuffling sites/files OR post a proper WHERETO? :unsure:
I just saw that the one I made:
http://www.boot-land...?...pic=14&st=1
is once again invalid (and with it a few tens of posts linking to it :unsure:) since "latest current" grub4dos-0.4.4-2009-10-16.zip
has been removed from root into "history":
http://nufans.net/gr...-2009-10-16.zip
and there is NO release in root.

Grub4dos is a very nice app ;) and you know how much I like it ;) , then why making it so complex to get it :unsure: ?

Maybe making a directory like:
http://nufans.net/gr...urrent_release/
and placing in it "latest current" would be advisable. :unsure:


:unsure:
Wonko

#6 satishk

satishk

    Newbie

  • Members
  • 10 posts
  •  
    United States

Posted 23 June 2010 - 04:07 PM

Thank you all for your quick responses. I tried few different versions from provided links but still it's not working for me.

grub4dos 0.4.5b 2010-06-19 - Shown just two lines and no response
Launching GRUB...
begin pxe scan... Starting cmain()... No Pxe stack

grub_test, test1 & test2 exes just stopped at Launching GRUB...

Main problem is my keyboard does not respond at all when i launch grub4dos using kexec with any version of grub4dos. I might have tried 12+ by now.

Interesting things is i can start grub4dos from GNU GRUB via "kernel /sbin/grub.exe" in /boot/grub/grub.conf file. Then grub4dos finds menu.lst and succesfully launch windows XP. Also my keyboard responds.

It just that when i try it using kexec, it does not work along with keyboard. Is it something wrong with kexec or grub4dos? I tried kexec with different version of grub4dos as

kexec -l /sbin/grub.exe
kexec -e

and using --command-line option
kexec -l /sbin/grub.exe --command-line="--config-file=rootnoverify (hd0,1);chainloader (hd0,1)/ntldr;boot"
kexec -e

Also, tried changing command-line options with root (hd0,1), chainloader +1 or find /ntldr and chainloading it but it gives error 27: Disk read error.

The grub4dos 0.4.2 does show few entries but it fails and does not find menu.lst at all. I have taken photos. Let me know how can i post them?

I am using GRUB (GNU) as boot loader for linux. I installed windows after linux. So my windows partition is on drive F:. Do i need to make it default/active or convert it to C: so that grub4dos 0.4.2 can find menu.lst.

How can i see logs of kexec? Does it create any file which i can see or debug it? Can one of you provide debug version of kexec & grub4dos which i can try and post logs here for analysis?

Any workaround?

Thanks for all your efforts.



Yes. That is a (known) problem on some machines, mostly DELLs.

You may try the development builds and help locate the bug.

You may download a latest one from chenall's site
http://code.google.c.../downloads/list
or from
http://nufans.net/grub4dos/tinybit/

And please try further with these 3 builds:
http://nufans.net/gr...it/grubtest.exe
http://nufans.net/gr...t/grubtest1.exe
http://nufans.net/gr...t/grubtest2.exe

See if one of them could work fine.

TIA.



#7 satishk

satishk

    Newbie

  • Members
  • 10 posts
  •  
    United States

Posted 23 June 2010 - 09:04 PM

Thanks for your suggestions.

I am using GNU GRUB as my linux boot loader. As far as i am using GRUB it should work.

I tried calling grub4dos from GNU GRUB using "kernel /sbin/grub.exe" and grub4dos worked. From that i was able to boot win xp. In this case your linux kernel won't be started at all.

Actually, i want to boot a linux first and then from that second os that is win xp. For that i am using kexec but somehow kexec and grub4dos not working for me.

Any help?

First, Please download the newest release of grub4dos from sites that tinybit give above.

Second, Just install grub4dos to your local harddisk's mbr and replace the boot loader of your Fedora. grub4dos is better than others as a boot loader.

or, you can call grub4dos from Fedora's boot loader( I don's know what it is, but I'm sure there a way to call grub4dos under it).



#8 xclimbing

xclimbing

    Member

  • Members
  • 36 posts
  •  
    China

Posted 24 June 2010 - 01:29 AM

@Tinybit, Climbing, Bean, whoever else involved in grub4dos development:
could you please either STOP shuffling sites/files OR post a proper WHERETO? :D
I just saw that the one I made:
http://www.boot-land...?...pic=14&st=1
is once again invalid (and with it a few tens of posts linking to it :unsure:) since "latest current" grub4dos-0.4.4-2009-10-16.zip
has been removed from root into "history":
http://nufans.net/gr...-2009-10-16.zip
and there is NO release in root.

Grub4dos is a very nice app ;) and you know how much I like it :unsure: , then why making it so complex to get it :unsure: ?

Maybe making a directory like:
http://nufans.net/gr...urrent_release/
and placing in it "latest current" would be advisable. :unsure:

;)
Wonko


I'm very sorry for the problem of downloading grub4dos from nufans.net and thanks for the advice.

I had made a directory "current_release" as "http://nufans.net/grub4dos/ current_release" as your advice and put the final official release into it. but you should know it is recommended that always download the newest release(regardless beta or alpha) of grub4dos for using. the newer always is the better.

cheers,

Climbing

#9 tinybit

tinybit

    Gold Member

  • Developer
  • 1175 posts
  •  
    China

Posted 24 June 2010 - 02:59 AM

I tried calling grub4dos from GNU GRUB using "kernel /sbin/grub.exe" and grub4dos worked. From that i was able to boot win xp. In this case your linux kernel won't be started at all.


This should work without problems. Try the latest development build.

Actually, i want to boot a linux first and then from that second os that is win xp. For that i am using kexec but somehow kexec and grub4dos not working for me.

Any help?


This problem can hardly solve. Linux(32-bit hardware drivers) + mother board(unkown bugs) together caused this issue.

About half of the machines have no such problem. The other half have this problem.

Someone got a workaround of unplugging the USB keyboard for his/her case.

#10 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 24 June 2010 - 07:40 AM

I'm very sorry for the problem of downloading grub4dos from nufans.net and thanks for the advice.

I had made a directory "current_release" as "http://nufans.net/grub4dos/ current_release" as your advice and put the final official release into it. but you should know it is recommended that always download the newest release(regardless beta or alpha) of grub4dos for using. the newer always is the better.

cheers,

Climbing


Yep :D, but you see, we have to give "newbies" some certain info, otherwise we risk "losing" them.

The "current release" is - as I see it - a good compromise, as it has all the main features and has been tested extensively, until someone decides to "promote" either Chenall's or Tinybit's or Whoever's into next "current release", I think those version are better reserved for the times when something doesn't work with the "current release".

Though I see how all versions are very well coded (in the sense that - besides the quality of the work - there is great attention to NOT introduce bugs) some "regression problem" is always there waiting to introduce itself in the code of new releases. ;)

It's of course up to you guys to decide when and which version "deserves" going into "current release". :unsure:

:unsure:
Wonko

#11 Sha0

Sha0

    WinVBlock Dev

  • Developer
  • 1682 posts
  • Location:reboot.pro Forums
  • Interests:Booting
  •  
    Canada

Posted 25 June 2010 - 12:54 AM

satishk: Please understand the limitations of kexec with anything, as mentioned previously. Especially when you're not loading another kernel directly, but something dependent on the pre-OS environment being intact and sane. It's not guaranteed possible. If it works, that's a bonus. tinybit says 50%.

#12 satishk

satishk

    Newbie

  • Members
  • 10 posts
  •  
    United States

Posted 26 November 2010 - 03:09 PM

Hello to all,

Just to update you, i had used different flavor of linux - Arch and with that i was able to launch windows XP using kexec - grub4dos on that platform which is Intel Core 2 Duo 3GHz (board CBQ45). I tried grub4dos 0.4.2, 0.4.4, 0.4.5b-20100619 with kexec 2.0.1/2.0.2 on kernel 2.6.33.4, 2.6.35 and it worked. I am using SATA drive.

Now, I tried that on Intel P4 3GHz (board NT945, BIOS based on NT94510J.86A) but it did not work. Launching Grub... displayed on screen then slowly grub4dos tries to find menu.lst but it did not find. It then gives default grub4dos list. From grub4dos command line if i tries geometry or chainloader +1, it says Disk Read Error on grub4dos 0.4.2 and Selected Disk does not exist on grub4dos 0.4.5b.

geometry/chainloader +1
Int13/41(80), version=AA300001, int13/48(80), err=0 C/H/S=19457/255/63, Sector Count/Size = 312581808/0, int13/08(80), version=0, C/H/S = 1023/255/63 Error 27: Disk Read Error

For 0.4.5b
Int13/41(80), version=AA300001, int13/08(80), version=0, C/H/S=1023/255/63, int13/02(80), err=1 Error 21: Selected disk does not exist

Can you shed any light on why it did not work on Intel P4 platform. Am i missing something? Is grub4dos trying to use BIOS INT13h Extension services? How can i find whether my BIOS supports or not? Does it dependent on PAE/MMU?

Any help/suggestions in resolving this issue?

NOTE - If I run grub4dos from GRUB itself (GRUB - "Kernel /grub.exe" - "boot") then all the commands work fine and I can launch Windows XP from it for both platforms.


Thank you for your prompt support,
Satish.

Edited by satishk, 26 November 2010 - 03:10 PM.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users