2 Pages V   1 2 >  
Reply to this topic
 Desktop boots USB key fine, on laptop it cannot load menu.lst
post Jul 5 2009, 08:08 PM
Post #1
RichStant
  
Group: Members

  Joined: 5-July 09
Posts: 7
Thank(s): 0


I'm trying to fix some files on a laptop that has a broken DVD drive, so I'm trying to boot a USB key. I've tried 2 bootloaders - grub4dos and syslinux (syslinux then hands over to grub4dos). In both cases the USB key works fine on my desktop - it boots from the key, menu.lst is read and then grub boots the menu options correctly, so I know there is nothing inherently wrong with the setup. However on the laptop it boots from the USB key, but then grub4dos does not appear able to read menu.lst and so does not boot correctly.

If I use grub4dos as the bootloader then it boots grub but grub seems to ignore the USB key and simply says 'trying hd0,0 non-MS' 'trying hd0,1 Ext2' and so on, working it's way through my hard disk partitions. If I use syslinux as the boot loader on the USB key and have syslinux pass control over to grub4dos, then syslinux boots correctly and I end up at a grub menu. However instead of having the options from menu.lst on the USB key, I have 3 options to search for menu.lst. Whichever one I click it fails to find it. However I can now go to a grub command line. Running 'find' shows that on my desktop (where the key works), the USB key is seen as hd0 whereas on the laptop (where it fails) the USB key is seen as fd0. Is this the problem?

I read on here that the partition format can make a difference. I've tried formatting it as FAT32, FAT16 using a USB formatting tool (which according to beeblebrox gave a partition type of OE) and FAT16 using vista to format it (which gave a partition type of 06). All 3 gave the same result - they worked on the desktop and failed on the laptop.

Any ideas?


+Quote Post
post Jul 5 2009, 09:17 PM
Post #2
RichStant
  
Group: Members

  Joined: 5-July 09
Posts: 7
Thank(s): 0


So after doing some more reading around, it seems that USB keys can be exposed by the BIOS as either USB-HDD or USB-FDD. I presume mine is exposing itself as USB-FDD and I need it to be USB-HDD. Unfortunately this being a laptop the BIOS options are sparse to say the least. Do I have any options?
+Quote Post
post Jul 6 2009, 12:24 AM
Post #3
Icecube
Silver Member   ****
Group: Advanced user

  Joined: 7-September 08
Posts: 641
Thank(s): 172


Belgium


Are you running grub4dos from syslinux by running grub.exe ?
If so, try the following in your syslinux.cfg file.
CODE
LABEL grub.exe
KERNEL grub.exe
APPEND --config-file="errorcheck off; find --set-root --ignore-cd /menu.lst && configfile /menu.lst; find --set-root --ignore-cd /boot/grub/menu.lst && configfile /boot/grub/menu.lst; find --set-root --ignore-cd /grub/menu.lst && configfile /grub/menu.lst; errorcheck on; commandline"

It is almost the same as the embedded menu of grub4dos, except that this code also looks on floppy drives (or drives that are seen by the BIOS as floppy drives). (no --ignore-floppies parameter used here)

The following lines of the embedded menu.lst don't work when you run grub.exe as a kernel from syslinux (grub.exe doesn't know from which device it is booted and therefore no root drive is set). So when your USB stick is recognized as a floppy, it can't find the menu.lst file. Because grub4dos won't look on floppies when it is not the root device and also due to the --ignore-floppies parameter used in the lines after those which are displayed here.
CODE
configfile /menu.lst
configfile /boot/grub/menu.lst
configfile /grub/menu.lst

See http://diddy.boot-land.net/grub4dos/files/embedded.htm for the content of the embedded menu.lst.

Instead of looking for /menu.lst, /boot/grub/menu.lst or /grub/menu.lst, you can better use another file, which is specific to the USB stick to search for with the find command to set the correct root drive.
For example, you can look for ldlinux.sys (syslinux file). Assume it is in the root directory of the partition (else adapt /ldlinux.sys to the right path in the following code).
CODE
LABEL grub.exe
KERNEL grub.exe
APPEND --config-file="find --set-root --ignore-cd /ldlinux.sys; configfile /menu.lst; configfile /boot/grub/menu.lst; configfile /grub/menu.lst; commandline"


Alternatively you can use Plop bootmanager from syslinux to get the USB stick recognized as USB-HDD. Then you can boot grub4dos like you do it now.
http://www.plop.at/en/bootmanager.html


--------------------
1 user(s) said "Thank you!" to Icecube for this fantastic post:
tinybit
+Quote Post
post Jul 6 2009, 07:39 AM
Post #4
maanu
Silver Member   ****
Group: Advanced user

  Joined: 31-October 08
Posts: 949
Thank(s): 169


Pakistan


only if u have time , u can try the following ,

download fbinst 1.5 from following link ,

http://bbs.znpc.net/attachment.php?aid=3581


download GRD from here

http://bbs.znpc.net/attachment.php?aid=3616

download latest syslinux package , and copy ldlinux.bin ,grldr to the same folder as fbinst 1.5 is .

now from cmd prompt , change directory to the folder holding fbinst 1.5 , assuming u have it in " C:\fbinst " , cd fbinst ENTER .

now issue a command " fbinst --list and press ENTER " .

u ll be shown with attached hdd's and usb's . check what is ur target usb driver CAREFULLY . and then issue the following command .. im assuming that hd2 is ur usb.

CODE
fbinst(hd2) format --fat32 --zip --extended 10M --align --force   ENTER


OR use --force after --fat32 switch and all same .

then issue command ,(after format is successful )

CODE
fbinst (hd2) add grldr grldr  ENTER


then issue the following
CODE
fbinst (hd2) add --syslinux ldlinux.bin ldlinux.bin  ENTER


now in fbinst folder , make a .txt file with following contents and with name of fb.txt
and copy paste the following text into it and save in same folder .

CODE
timeout 10
color red
text -n "F1. "
color normal
text grldr
menu F1 grldr grldr
text -n "F2. "
color normal
text syslinux
menu F2 syslinux ldlinux.bin ldlinux.bin


now from command , issue
CODE
fbinst (hd2) add-menu fb.cfg fb.txt ENTER


now first copy menu.lst as it is ,(means original straight from G4D package ) and see if u can load it on that lappy , if not then try icecube's recommended --no ignore floppy switch .

copy syslinux.cfg and related files to root of usb , when u ll boot from usb ,then a menu ll appear asking u to choose syslinux or grldr to start booting the usb .

also try repeating all steps AS IT IS bt only without --zip and --align switches from the 1st step . and see if it makes any difference .

the BEST way is commandline though as jaclaz said hundred times . u give commands one by one until u get the way how to load menu.lst . then u can add that command to ur menu.lst permanently .

if it still can not find ur menu.lst , then where it shows command screen type the following and enter

configfile (fd0)/menu.lst

it worked for me when i was at my friend's system (and if i remember correctly it was a Dell lappy ) ..
+Quote Post
post Jul 6 2009, 08:49 AM
Post #5
RichStant
  
Group: Members

  Joined: 5-July 09
Posts: 7
Thank(s): 0


Thanks icecube for the reply - I'v been tearing my hair out over this one and you've solved it in one fell swoop! I changed my syslinux.cfg to match yours - it didn't work at first, giving the error 'could not find kernel: Linux' but then I added a 'default' line at the top & it now works correctly and loads the correct menu.lst.

Unfortunately the startup process fails further down the line because the boot image can't find a folder that is on the USB key, presumably again related to the key being seen as fdd not hdd. In the long run it may be easier top use plop to remap it as an hdd, so I'll go and read up on that.

Thanks, I'll no doubt be back with some plop questions!
+Quote Post
post Jul 6 2009, 11:30 AM
Post #6
RichStant
  
Group: Members

  Joined: 5-July 09
Posts: 7
Thank(s): 0


Right, a few steps forward but not there yet. I added an entry for plop to my menu.lst on my usb key:

CODE
title PLoP Boot Manager
root (fd0,0)
kernel /boot/plpbt.bin


I then booted the usb key, and chose the plop option. In plop I then chose USB, so that it booted the same USB key it was already running from, however this time the key was recognised as hd0, and when I chose my own boot option off menu.lst, it booted correctly. So far, so good. However the speed was atrocious - easily 10x slower to load anything than it is usually. I presume this is because I'm in effect double-booting the same USB key?

I then tried putting syslinux, which booted grub, which booted plop, on a second USB key, with the idea that I could boot plop off this, then use plop to boot a second usb key. I booted to plop, but whenever I selected to do a usb boot in plop, it simply booted the same key that I've already booted from, not the second key. Is there a way in plop to choose which usb key to boot?
+Quote Post
post Jul 6 2009, 12:57 PM
Post #7
maanu
Silver Member   ****
Group: Advanced user

  Joined: 31-October 08
Posts: 949
Thank(s): 169


Pakistan


it seems u missed this post wink.gif

http://www.boot-land.net/forums/index.php?...art=#entry71140

if u dont want to test it , then it is very much ok ,. just mentioned again in case u missed it
+Quote Post
post Jul 6 2009, 01:24 PM
Post #8
RichStant
  
Group: Members

  Joined: 5-July 09
Posts: 7
Thank(s): 0


QUOTE (maanu @ Jul 6 2009, 12:57 PM) *
it seems u missed this post wink.gif

if u dont want to test it , then it is very much ok ,. just mentioned again in case u missed it


I didn't miss it, thanks for posting. It was just that reading it, it doesn't appear that it will solve my main problem - that of the USB key appearing as fd0, not hd0. Will it solve this?
+Quote Post
post Jul 6 2009, 02:40 PM
Post #9
maanu
Silver Member   ****
Group: Advanced user

  Joined: 31-October 08
Posts: 949
Thank(s): 169


Pakistan


QUOTE (RichStant @ Jul 6 2009, 01:24 PM) *
I didn't miss it, thanks for posting. It was just that reading it, it doesn't appear that it will solve my main problem - that of the USB key appearing as fd0, not hd0. Will it solve this?


how would i know , it is u who is facing this problem . and there is nothing wrong in testing it..

didn't it work when u enter it in grub command prompt . ?

configfile (fd0)/menu.lst
+Quote Post
post Jul 6 2009, 03:32 PM
Post #10
Icecube
Silver Member   ****
Group: Advanced user

  Joined: 7-September 08
Posts: 641
Thank(s): 172


Belgium


@ maanu
RichStant doesn't have any problem with booting from USB and the menu.lst file gets loaded with my suggestion.

@ RichStant
Can you post your syslinux.cfg and menu.lst?
What are you trying to boot?
Give the contents of the USB drive (filenames as they are exactly: small - capital letters).


--------------------
+Quote Post

2 Pages V   1 2 >
Reply to this topic
1 User(s) are reading this topic ()



Collapse

  Topic Replies Topic Starter Views Last Action
No new USB IMAGING ADVICE RMPREP
93 Technotika 2,949 23rd August 2010 - 09:17 AM
Last post by: Technotika
No New Posts USB LOCKER
11 Technotika 1,503 15th August 2010 - 02:54 PM
Last post by: voyajer
No New Posts USB RAW IMAGE EDITING - SOLID SOLUTION
1 Technotika 481 13th August 2010 - 08:13 AM
Last post by: Wonko the Sane
No New Posts USB to ISO
2 theclam 943 6th August 2010 - 08:01 PM
Last post by: theclam
No New Posts Cannot safely remove hardware
3 MMMartin 449 2nd August 2010 - 07:04 PM
Last post by: MMMartin