Ronald F. Guilmette
2014-Jan-09 23:35 UTC
[syslinux] USB boot problems on Gigabyte GA-M55Plus-S3G
I have successfully created bootable USB flash drives containing the following bootable products: 1) Clonezilla (recent version) 2) Ultimate Boot CD (recent version) 3) OpenELEC (recent version) All of these apparently use SYSLINUX as part of the boot process. All three boot up just fine and with no problems at all on virtually all of the various systems that I have here at my disposal, except for one. The one system where I am unable to boot from these USB flash drives contains a Gigabyte GA-M55Plus-S3G motherboard (rev 1.1), which is running the latest official release BIOS from the manufacturer (F15B). (I have configured the BIOS on this system so that the first and only boot device is USB-HDD.) On this system, when attempting to boot either Clonezilla or OpenELEC from a USB flash drive, I receive the following messages: SYSLINUX 5.10 2013-06-04 ... Failed to load ldlinux.c32 Boot failed: please change disks and press a key to continue. In the case of the Ultimate Boot CD, the messages are a bit different: SYSLINUX 4.07 2013-07-25 ... ERROR: No configuration file found No DEFAULT or UI configuration found As far as I have been able to gather, this sort of thing is a common problem on various Gigabyte motherboards. For Clonezilla and OpenELEC at least, I can apparently work-around this problem by placing a copy of the PLOP Boot manager onto a CD, and then booting from that CD in the first instance, then using PLOP to boot from my desired USB flash drive. I would just like to ask if anybody on this list is at all familiar with this sort of problem, and whether or not there is a better or simpler work-around. Regards, rfg P.S. Whatever is causing the problem, it is clearly not the "fault" of SysLinux. I have also been unable to boot on this same system from a hard drive containing a good/working/bootable install of Windows 7, but only when that is detached from its internal sATA connector and then mounted instead into a perfectly functioning external USB enclosure. In short it is 100% clear that Gigabyte somehow snafued the part of their BIOS firmware that was supposed to have provided support for booting from attached USB devices. I'd just like to find a work-around so that I don't have to spring for a new motherboard just yet.
> > I have successfully created bootable USB flash drives containing the > following bootable products: > > 1) Clonezilla (recent version) > 2) Ultimate Boot CD (recent version) > 3) OpenELEC (recent version) > > All of these apparently use SYSLINUX as part of the boot process. > > All three boot up just fine and with no problems at all on virtually all > of the various systems that I have here at my disposal, except for one. > > The one system where I am unable to boot from these USB flash drives > contains a Gigabyte GA-M55Plus-S3G motherboard (rev 1.1), which is > running the latest official release BIOS from the manufacturer (F15B). > (I have configured the BIOS on this system so that the first and only > boot device is USB-HDD.) > > On this system, when attempting to boot either Clonezilla or OpenELEC > from a USB flash drive, I receive the following messages: > > SYSLINUX 5.10 2013-06-04 ... > > Failed to load ldlinux.c32 > Boot failed: please change disks and press a key to continue. > > In the case of the Ultimate Boot CD, the messages are a bit different: > > SYSLINUX 4.07 2013-07-25 ... > > ERROR: No configuration file found > No DEFAULT or UI configuration found > > As far as I have been able to gather, this sort of thing is a common > problem on various Gigabyte motherboards. > > For Clonezilla and OpenELEC at least, I can apparently work-around this > problem by placing a copy of the PLOP Boot manager onto a CD, and then > booting from that CD in the first instance, then using PLOP to boot > from my desired USB flash drive. > > I would just like to ask if anybody on this list is at all familiar with > this sort of problem, and whether or not there is a better or simpler > work-around. > > > Regards, > rfg > > > P.S. Whatever is causing the problem, it is clearly not the "fault" of > SysLinux. I have also been unable to boot on this same system from a > hard drive containing a good/working/bootable install of Windows 7, but > only when that is detached from its internal sATA connector and then > mounted instead into a perfectly functioning external USB enclosure. > In short it is 100% clear that Gigabyte somehow snafued the part of their > BIOS firmware that was supposed to have provided support for booting from > attached USB devices. I'd just like to find a work-around so that I don't > have to spring for a new motherboard just yet.Since in all cases you get to see at least the Syslinux copyright message, the problem doesn't seem to be related to whether your BIOS can identify the USB disk and boot from it. Some GA motherboards might identify some USB drives as "HDD", instead of "USB-HDD". I would suggest pressing F8 during POST and double check where exactly your USB drive is listed. Regarding UBCD, it sounds like some conflicting path. From your description, you should see a "boot:" prompt. But the original UBCD includes its syslinux.cfg in '/boot/syslinux', a "standard" location. So either you have a wrongly customized UBCD in your USB drive, or your BIOS is not booting from that specific UBCD drive. So, do you have other drives connected to this system? Do you have Syslinux also installed to those other drives? Can you disconnect / disable all other drives in this system (at least for testing purposes)? Regarding Clonezilla Live, the latest version uses Syslinux 6.03-pre1, so you might be using an older release. The "ldlinux.c32" file should be also part of the Syslinux 6.03-pre1 installation. If you see a (hidden) file named "ldlinux.sys", but you don't see the corresponding (from the same Syslinux version) "ldlinux.c32", then you are probably not installing Syslinux correctly in that USB drive. As a remainder, all files under the /syslinux directory of your Clonezilla USB drive should match the same version of Syslinux that you installed as bootloader. I would suggest downloading the latest Clonezilla Live release available and using the "manual" method to install it in your USB drive. Other methods are probably going to fail (by mixing different versions of Syslinux). With regards to OpenELEC, my guess is that something similar to the Clonezilla issue is going on. In other words, review the method you are using to install Syslinux in those USB drives; and for whichever version of Syslinux you install as bootloader in one drive, the necessary *.c32 modules should match the same Syslinux version (including, if necessary, its corresponding lib*.c32 files for 5.xx and newer Syslinux versions). HTH, Ady.
Ronald F. Guilmette
2014-Jan-10 09:18 UTC
[syslinux] USB boot problems on Gigabyte GA-M55Plus-S3G
In message <BLU0-SMTP557B92590B4CC34F8318088BB30 at phx.gbl>, Ady <ady-sf at hotmail.com> wrote:>Since in all cases you get to see at least the Syslinux copyright >message, the problem doesn't seem to be related to whether your BIOS >can identify the USB disk and boot from it.I can only agree.>Some GA motherboards might identify some USB drives as "HDD", instead >of "USB-HDD". I would suggest pressing F8 during POST and double >check where exactly your USB drive is listed.I suspect that you must mean F12 rather than F8. On my specific motherboard, F8 during POST does nothing, however F12 brings up a boot menu. Anyway, in the F12 boot menu there is no clear indication of what thing (or things) the BIOS thinks are or not present. (What made you think that there would be?)>Regarding UBCD, it sounds like some conflicting path. From your >description, you should see a "boot:" prompt.Yes, that does appear also. But I have no idea what to enter there. Is there something specific I should try? /boot/syslinux ?>But the original UBCD >includes its syslinux.cfg in '/boot/syslinux', a "standard" location. >So either you have a wrongly customized UBCD in your USB drive,No, UBCD on my USB stick has not been customized in any way. It's a totally unmodified image that I downloaded. And it boots and works perfectly, with no trouble whatsoever, on multiple other systems that I have here.>or your BIOS is not booting from that specific UBCD drive. > >So, do you have other drives connected to this system?No. Zero. Nada. None. I may not always be the sharpest pencil in the box, but I do know enough to eliminate as many variables and potential sources of problems as possible when trying to debug a problem like this. (For the specific system in question, I only ever mount/attach actual hard drives to the thing by inserting them into one of two externally accessible hot swap racks. There are -no- drives actually hard mounted inside the tower case. So you see, it is quite trivial for me to remove all drives from this system for testing purposes, and I have done so throughout all of my testing with these USB flash drives.)>Do you have >Syslinux also installed to those other drives? Can you disconnect / >disable all other drives in this system (at least for testing >purposes)?See above. There are no other drives either contained in or connected in any way to the system I am using for testing this stuff.>Regarding Clonezilla Live, the latest version uses Syslinux >6.03-pre1, so you might be using an older release.I probably am, however at this point I have no compelling reason to believe that my results will be any different when/if I upgrade to a slightly fresher Clonezilla. (The version I'm using was the freshest "stable" release available as of less than a month ago.)>The "ldlinux.c32" >file should be also part of the Syslinux 6.03-pre1 installation. If >you see a (hidden) file named "ldlinux.sys"...See? I'm sorry. I don't follow you. Where should I be looking for this file you are talking about, exactly?>but you don't see the >corresponding (from the same Syslinux version) "ldlinux.c32", then >you are probably not installing Syslinux correctly in that USB drive.Hey! I read a small amount already (as I was trying to research these problems) about various version skew problems that people had, apparently, created for themselves between the first level Syslinux thing and this later stage ldlinux.c32 thing. But if there are any such issues/problem that are relevant to, or that pertain to the problems that _I_ have described here, then *I* did not create them. I do not hack or diddle these tools that I have mentioned... Clonezilla, UBCD, or even OpenELEC (yet)... in any way. I just download the latest images that are meant for installing on a USB flash drive, and then I just dd them to my USB flash drives, or do whatever the standard install instructions tell me to do. I am not attempting to be clever. I'm just doing exactly the same things that everybody else... the great unwashed masses... are doing with these tools.... just ploping them onto USB sticks and NOT customizing them at all. And as I say, they all work great *except* whn I'm trying to boot them from this bleedin' *&%$%$#@ Gigabyte motherboard.>As a remainder, all files under the /syslinux directory of your >Clonezilla USB drive should match the same version of Syslinux that >you installed as bootloader.My hope and belief is that the maintainer/distributor of Clonezilla has alread seen to it that this is the case. Do we have any reason to suspect otherwise?>I would suggest downloading the latest Clonezilla Live release >available and using the "manual" method to install it in your USB >drive. Other methods are probably going to fail (by mixing different >versions of Syslinux).I suppose that I can give that a try, but it seems like we are sort of just shooting in the dark here.>With regards to OpenELEC, my guess is that something similar to the >Clonezilla issue is going on.Given that the failure messages are identical, I can only agree with your supposition. But the question remains... What exactly *is* going on here?>In other words, review the method you are using to install Syslinux >in those USB drives;See above. Given that I am not doing anything out of the ordinary, and just doing as instructed when it comes to installing these things on USB drives... the same as zillions of other users of these same tools... and given that everything works just peachy with these USB sticks *except* when they are plugged in to the Gigabyte motherboard, where does that leave us?>and for whichever version of Syslinux you >install as bootloader in one drive, the necessary *.c32 modules >should match the same Syslinux version (including, if necessary, its >corresponding lib*.c32 files for 5.xx and newer Syslinux versions).OK. And how would I go about verifying that all those things are or are not the case? Please understand that I know nothing specific about SYSLINUX and friends. Until now, I had no reason to even want to.
H. Peter Anvin
2014-Jan-17 18:23 UTC
[syslinux] USB boot problems on Gigabyte GA-M55Plus-S3G
On 01/09/2014 03:35 PM, Ronald F. Guilmette wrote:> > SYSLINUX 5.10 2013-06-04 ... > > Failed to load ldlinux.c32 > Boot failed: please change disks and press a key to continue. > > In the case of the Ultimate Boot CD, the messages are a bit different: > > SYSLINUX 4.07 2013-07-25 ... > > ERROR: No configuration file found > No DEFAULT or UI configuration found > > As far as I have been able to gather, this sort of thing is a common > problem on various Gigabyte motherboards. >What are the letters that should have been printed between SYSLINUX and the date? There should be "EDD" or "CHS". This matters significantly. -hpa
Ronald F. Guilmette
2014-Jan-18 00:36 UTC
[syslinux] USB boot problems on Gigabyte GA-M55Plus-S3G
In message <52D97530.5040706 at zytor.com>, "H. Peter Anvin" <hpa at zytor.com> wrote:>On 01/09/2014 03:35 PM, Ronald F. Guilmette wrote: >> >> SYSLINUX 5.10 2013-06-04 ... >> >> Failed to load ldlinux.c32 >> Boot failed: please change disks and press a key to continue. >> >> In the case of the Ultimate Boot CD, the messages are a bit different: >> >> SYSLINUX 4.07 2013-07-25 ... >> >> ERROR: No configuration file found >> No DEFAULT or UI configuration found >> >> As far as I have been able to gather, this sort of thing is a common >> problem on various Gigabyte motherboards. >> > >What are the letters that should have been printed between SYSLINUX and >the date? There should be "EDD" or "CHS". This matters significantly.STOP THE PRESSES! Ummmm... WOW! I had to dig back into my e-mail outbox in order to reestablish enough context to be able to even try to answer your question, and it is Good that I did, because as a side-effect of trying to answer your question, I found something TOTALLY ASTONISHING. But we'll get to that in a second... To answer your question... *) with respect to Ultimate Boot CD (5.2.7), the answer is "CHS". *) with respect to OpenELEC (3.2.3, I think), the answer is "CHS". *) with respect to Clonezilla (2.2.0) I can't easly check anymore, because I overwrote the stick that contained that (while performing some of the other tests people asked me to conduct). If it is important, I will get 2.2.1 and try to answer with that, or I'll see if I can find an archived copy of 2.2.0. Let me know if it is that important. The REALLY ASTONISHING thing that I found while trying to answer your question is that apparently, what Gigabyte tech support told me was either (a) completely inaccurate or else (b) was somehow misinterpreted by me. What I believe they told me what that in order for *any* kind of device to be booted by the GA-M55Plus-S3G that device *MUST* show up in the BIOS Boot Priority list. But as I have now seen, as a result of trying to answer your question, is that THAT IS SIMPLY NOT TRUE! I checked, carefully, and even though neither of the sticks I have that contain (a) Ultimate Boot CD (5.2.7), nor (b) OpenELEC (3.2.3) show up in the BIOS Boot Priority list, the BIOS will, nontheless, at least TRY to at least BEGIN the booting process off those sticks... even if the whole process does fail later on, for reasons that are still being puzzled out. At this point I could be... and perhaps should be... REALLY angry at Gigabyte tech support for giving me what appears to have been dead wrong information, but I'm not going to judge until I have time to go back and fish out their actual e-mails to me and re-read them all, you know, just to make sure that I didn't simply misinterpret what they told me. In any case, other experiments that I have just now done confirm that the real controlling factor(s), for this motherboard, are the settings of the BIOS's "First Boot Device", "Second Boot Device", and "Third Boot Device" parameters. If there is both a regular (sATA) drive and an even potentially/theoretically bootable USB stick installed in the machine... even one that has only one partition, and where that partition might NOT have the bootable flag set... and if the First, Second, and Third Boot Devices are set as follows: First: CDROM Second: USB-HDD Third: Hard Disk then (in the absence of any CD/DVD) the BIOS will make an attempt to boot from the USB stick, before trying the sATA drive, EVEN IF the USB stick in question DOES NOT appear in the Boot Priority list. And also, as one would expect, if the BIOS settings are instead: First: CDROM Second: Hard disk Third: USB-HDD then (in the absence of any CD/DVD) then the BIOS will try to boot from the sATA Drive first, and will do so, assuming that it comtains something bootable. These new findings may shed some additional and fresh light on everything that has so far been discussed in this thread. My sincere apologies to all participants for having asserted earlier that absence of a USB stick from the Boot Priority list would absolutely insure that the BIOS would not even try to boot off that device. I genuinely believed that, based on what I was told by Gigabyte tech suport, up until just now. Regards, rfg P.S. If I am remembering all of the facts and data points correctly, it now appears to me that (a) the presence or absence of the bootable flag on _some_ partition on a given device is the thing which directly determines whether or not the device in question will or will not show up in the BIOS Boot Priority list, but that (b) presence or absense of a given device on the BIOS Boot Priority list is *not* the primary determinant of whether or not the BIOS will attempt to boot from the device in question, and that rather, the BIOS will try to boot from a given mass storage device if the class/category of the device is listed as one of the classes/ categories of devices that have been set as either the First or Second or Third (categories of) Boot Devices _and_ if there are no higher priority (First, Second, Third) categories of mass storage devices attached. P.P.S. Interestingly, since the BIOS apparently _will_ make an effort to boot from USB mass storage devices (as long as "USB-HDD" is set as one of the prioritized devices categories to boot from) even when the device(s) in question DO NOT contain any partition which has the bootable flag set for it (thus implying that the devices won't even show up in the BIOS Boot Priority list) the question naturally arises: How then can you prioritize the boot order if you have two such USB sticks, i.e. both _without_ any partition marked as "bootable". The answer, with this BIOS, appears to be "You can't." Rather, some additional tests that I performed just now indicate that in this case, the BIOS will choose which of the multiple "no bootable partition" USB mass storage devices it will actually try to boot from *first* strictly based on the identity (i.e. number) of the specific USB port that each device happens to be plugged into, i.e. there is apparently a fixed hardware ordering of the USB _ports_, and that ordering determines boot order for the multiple no-bootable-partition USB mass storage devices in such cases.