[ipxe-devel] gPXE or iPXE on USB
Yadin Flammer
yxf4 at psu.edu
Wed Jun 19 19:03:12 UTC 2013
Thanks for the reply Robin, the answer was buried in your one
statement. Ubuntu apparently doesn't actually write the output of dd to
the device until you issue an eject command from command line. If you
just pull the drive, no changes are written to it, unlike if you're
using it normally dragging and dropping files. Important footnote for
the inexperienced, and very odd (if not deficient) compared to other
platforms.
Anyway, now that I can actually get the .usb cloned to USB, I face a
different set of issues.
Some Mac systems simply will not see the drive as bootable, others
will. I suspect this has to do with the vintage of the firmware and the
type of file system that's being written to the drive. For those that
will boot from it, here's what fails:
With gPXE, it comes up saying no more network devices, then non-system
disk press any key to reboot. For some reason while booting gPXE from
the ISO on CD works great, there seems to be no (or missing) network
drivers from the .usb image (it is after all half the size of the ISO).
But since that's not supported any more, let's move on (just figured I'd
try this and toss it out there).
With iPXE, it comes up fine (as from CD as well) to the point I choose a
boot image from the WDS server. After you choose an image, it should
start the Windows boot process, and from any normally booted PXE system
(or from gPXE on CD) it does so just fine. iPXE does not work for some
reason. It can't actually start transferring data and therefore start
the boot process from the look of it, because it stops on BOOT.SDI and
the progress bar never moves. So from all experience so far, iPXE has a
fault in some odd way where it can talk to the WDS server to present the
boot image list, but then it can't actually start booting for some
reason, regardless of what media you've booted iPXE from (CD or USB). I
have also verified this on a Dell, so it's not some Mac only behavior,
iPXE just doesn't work for some reason where gPXE did (from CD at least,
again on any Mac or Dell).
Thoughts? I'm fine with some trick to make iPXE actually boot a WDS
image if that's the supported product, or if there is a way to make gPXE
work from USB the same as from CD that's fine by me as well.
Yadin
On 6/19/2013 5:58 AM, Robin Smidsrød wrote:
> On 19.06.2013 02:23, Yadin Flammer wrote:
>> No changes to code, I'm no programer.
>>
>> I have done:
>> sudo dd if='/path/to/file/ipxe.usb' of=/dev/sdc
>> When that failed I cd to the directory of the file and do:
>> sudo dd if=ipxe.usb of=/dev/sdc
>>
>> Previously as mentioned I had been doing of=/dev/sdc1 but was told that
>> was wrong.
>>
>> In all cases, there are no errors, it displays bytes in and out and
>> transfer rate acting like it did something, but in no case does it
>> actually do anything as the usb flash drive is unaltered every time.
>>
>> I obtained the device path with:
>> sudo fdisk -l
>>
>> As mentioned I have also tried to dd the gpxe.usb file downloaded from
>> the old site with the same results.
>>
>> Ubuntu 12.0.4 LTS fully updated as of today.
> Okay, I'll show you what you can try to see if data is actually being
> written to the disk. See this process:
>
> $ dd if=/dev/urandom of=/tmp/dummy_disk bs=1MB count=32
> 32+0 records in
> 32+0 records out
> 32000000 bytes (32 MB) copied, 2.79843 s, 11.4 MB/s
>
> $ ls -l /tmp/dummy_disk
> -rw-rw-r-- 1 robin robin 32000000 Jun 19 11:45 /tmp/dummy_disk
>
> $ dd if=ipxe.usb of=/tmp/dummy_disk
> 736+0 records in
> 736+0 records out
> 376832 bytes (377 kB) copied, 0.00371963 s, 101 MB/s
>
> $ dd if=/tmp/dummy_disk of=/tmp/extracted_ipxe.usb count=$(wc -c
> ipxe.usb | cut -d ' ' -f 1)
> 736+0 records in
> 736+0 records out
> 376832 bytes (377 kB) copied, 0.00308136 s, 122 MB/s
>
> $ md5sum ipxe.usb /tmp/extracted_ipxe.usb
> a4bb19f3b0346e9a36a3eec882fd5f0f ipxe.usb
> a4bb19f3b0346e9a36a3eec882fd5f0f /tmp/extracted_ipxe.usb
>
> I've used the path /tmp/dummy_disk instead of /dev/sdc, but you should
> be able to use /dev/sdc instead. Can you verify that the md5sum of the
> extracted data is the same as for ipxe.usb? If so, your USB stick is
> working, but the computer you're trying to boot might have some issues
> booting from it. I say again. The USB stick will NOT contain any kind of
> valid filesystem you can verify, so don't even try. Using md5sum as
> above is the only way to verify that the iPXE USB image was written to
> the USB stick.
>
> If the md5sum doesn't match you might have a defective or
> write-protected USB stick.
>
> I'd also suggest you use eject /dev/sdc before you pull the USB stick
> out, to ensure data is flushed to the drive properly.
>
> -- Robin
--
-------------------------------------------------------------------
Yadin Flammer - Systems Administrator
College of Arts& Architecture, Penn State University
228 Borland Building Office Phone: 814-865-0990
University Park, PA 16802 Dept. Phone: 814-865-1571
Email: yxf4 at psu.edu Dept. Fax: 814-863-6227
More information about the ipxe-devel
mailing list