Bug 699554

Summary: livecd-iso-to-disk creates unbootable USB when run from Ubuntu 10.10
Product: [Fedora] Fedora Reporter: skierpage <info>
Component: livecd-toolsAssignee: Brian Lane <bcl>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 15CC: adam.stokes, bcl, bruno, dhuff, Jasper.Hartline, katzj, mike.simonson
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-04-26 00:02:37 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description skierpage 2011-04-25 23:42:58 UTC
(this is my first bug report here)

Description of problem:
I'm running Kubuntu 10.10, and wanted to try Fedora 15 beta (if Fedora is successful this will be a common scenario :-) ).  So I downloaded the desktop.iso and set about making a live USB flash drive from it.

http://fedoraproject.org/wiki/FedoraLiveCD/USBHowTo suggests you can use the livecd-iso-to-disk script to do this.  I found this on the .iso and ran it in a Ubuntu terminal, and it completed successfully with "Target device is now set up with a Live image"

But booting my PC from the USB stopped at the SYSLINUX boot: prompt, it didn't show the menu in syslinux.cfg and didn't find a kernel.  It appears that Ubuntu 10.10's variant of syslinux version 4.01 puts an ldlinux.sys on the USB that doesn't find syslinux.cfg or vmlinuz0 , and fails to boot.


Version-Release number of selected component (if applicable): Fedora 15 beta.


How reproducible: happens every time


Steps to Reproduce:
1. Install Ubuntu 10.10
2. Download Fedora 15 desktop .iso
3. Mount the .iso, e.g. `mkdir /tmp/temp_mount; sudo mount -o loop  /path/to/Fedora-15-Beta-x86_64-Live-Desktop.iso /tmp/temp_mount`
4. Run the livecd-iso-to-disk command on the .iso to create a bootable USB flash drive, see command on http://fedoraproject.org/wiki/FedoraLiveCD/USBHowTo#Run_livecd-iso-to-disk_script
5. Reboot witht the USB flash drive in place.
  
Actual results:
Banner "SYSLINUX 4.01 Debian" briefly appears, then you get a boot: prompt. Whatever you enter results in "Could not find kernel image: <foo>"

Expected results:
Either the USB flash drive should proceed to booting F15 beta, or
the livecd-iso-to-disk script should detect and warn "Caution: incompatible version of syslinux". And the wiki page should mention this issue.

Additional info:
I'm 90% certain the problem lies in Ubuntu's version of syslinux. when you run livecd-iso-to-disk, the ldlinux.sys that Ubuntu puts on the USB flash drive  doesn't find syslinux.cfg or vmlinuz0 in the /syslinux/ subdirectory where livecd-iso-to-disk put them. 
http://syslinux.zytor.com/wiki/index.php/Syslinux_4_Changelog makes it sound as if syslinux was changed in 4.02 to support these directories.  

I fixed the problem by downloading the latest syslinux 4.04 rpm from syslinux.zytor.com, unpacking it with rpm2cpio and cpio, adding it to my path, then running `sudo syslinux -d /syslinux /dev/sdb1`.  The only change this made to my USB flash drive was to /syslinux/ldlinux.sys (even the MBR seemed unchanged), and I was then able to boot and enjoy teh wonders of Fedora 15 beta in which I am typing this!

There might be other workarounds.  Maybe moving certain files to the root of the USB flash drive before booting.  Or maybe you could enter some path at the syslinux "boot:" prompt.

FYI, Ubuntu's graphical usb-creator silently rejects .iso's that don't use its "casper" approach, including Fedora's.  This is a known launchpad bug, perhaps Fedora should mention it on that wiki page.

It may be that the Fedora liveusb-creator GUI package would have the same problem if I installed it and its dependencies and ran it from Ubuntu.

Comment 1 Brian Lane 2011-04-26 00:02:37 UTC
livecd-iso-to-disk isn't meant to be run from a !Fedora system. You can dd the .iso to the USB stick.

Comment 2 skierpage 2011-04-26 01:54:15 UTC
OK, but your passive voice leaves it unclear who enforces "isn't meant to be".  Ideally livecd-iso-to-disk should detect and warn "Caution: this appears to be a non-Fedora system; you should only run livecd-iso-to-disk on a Fedora installation."

I added a section https://fedoraproject.org/wiki/How_to_create_and_use_Live_USB#Ubuntu_issues mentioning this and the usb-creator incompatibility, and workarounds.

Comment 3 mike.simonson 2011-05-15 22:09:09 UTC
I just used it on ubuntu 10.10(looks like a horde migration) to install fedora 15 beta on my usb stick. Everything went smootly except that i had to install extlinux on my machine.
Before i installed it the scritp says that everything went ok. There was only a bug message above to says that extlinux hasn't been found. And it wasn't working at all.
After that i installed extlinux and reruned the procedure and evertything went ok.

I have to say fedora looks really good and i should be here from a long time ago.