[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Issues with x86 PXE-based tftpboot.img (Was: Re: Bug#140579: TFTP-booting the bootfloppies on i386 now working!)



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


Hi Daniel,

I had a similar discussion with someone else, but i haven't got any
feedback yet :(
Your point is right: My solution supports only Ether- and Netboot
natively (I've tested both). I wrote a howto boot it with 3com NICs, by
simply converting the netboot-image with a tool from the LTSP (Linux
Terminal Server Project) called 'imggen'. After that the image boots
fine and loads the initrd:)
The same procedure should be possible for PXE. Due to having only 3com
equippment, I had no no possibility to test it. There should be a tool
called 'Bpbatch' (www.bpbatch.org) which converts netboot-images to
pxe-images. Although I had an intensive search , I haven't any tool,
that can extend initrds to a bootimage natively for PXE. So if you wanna
test this, it wolud be very nice of you to let me and the bug know of
your erxperiences.

Regards
Michael

Daniel Freedman wrote:
| Hi Michael, et al,
|
| "Michael R. Schwarzbach" <spg@fs.tum.de> writes:
|
|>Hi *,
|>
|>I have successfully installed a debian with debian's boot-floppies via
|>TFTP on i386. As already mentioned in this bug, there is a tool called
|>"mknbi-linux" witch appends initrds to a tftpimage. "mknbi-linux is part
|>of the debian package "mknbi" (Create tagged images for Etherboot or
|>Netboot). If you add the root.bin to the existing tftpboot.img with
|>"mknbi-linux" the boot-floppies do their work.
|
|
| Thanks for documenting this, and for preparing a patch for the
tftpboot.img
| on x86 for boot-floppies.  However, I'm not sure if this 'mknbi' procedure
| is general for all x86 network boot methods, besides the Etherboot and
| Netboot you cite.  I have a good deal of experience in booting (normal
| Debian systems, not Debian Installer) cluster nodes with Debian using
| PXE-based (Preboot eXecution Environment) Intel Boot Agents (firmware v.
| 4.0.22 for those who really care) on EEPro 100+/M NIC's, however no
| experience with network boot on Etherboot or Netboot.  [1]
|
| Unfortunately, the procedure you describe above does not seem to work with
| my PXE-based cards, though that might not be particularly surprising,
since
| 'mknbi' appears to be specifically formulated for the Etherboot/Netboot
| projects.  When my node retrieves the mknbi-modified 'tftpboot.img'
| (boot-floppies 3.0.23) image from my tftp server, (downloads successfully,
| tested with separate atftp client, then md5sum'd images on both ends of
| connection) I get a screenful of colored image squares, and absolutely no
| boot progress.
|
| I can successfully network boot the boot-floppy kernel (non-modified x86
| 'tftpboot.img'), however, this image kernel panics when it
| cannot find the root filesystem.  Of course, this is completely expected,
| since no root filesystem (initrd, NFS-Root, or otherwise) was
specified.  I
| just mention the scenario as demonstration that the kernel itself
| successfully network boots with my PXE-based configuration.
|
|
|>I have writte a patch to the "tftpboot.sh" 1.25 that I got via CVS. The
|>patch is appended to the mail. boot-floppies should add a
|>build-dependency for "mknbi", and the skript should be working on future
|>boot-floppies.
|>Then the tftpboot.img boots with etherboot- and netboot-roms. (I've only
|>tested etherboot). If you wanna boot these images with a 3com rom, you
|>need to extend it with "imggen", as I mentioned before (I've tested this
|>one too). I'll contact the "mknbi" maintainer to include it in his
package.
|
|
| Other folks (in the discussion of the bug) have reported success with
using
| a network boot of the tftpboot.img, and then mounting boot-floppiy's
| root.bin using NFS-Root (presumably after gunzipping, loopback mounting,
| then NFS exporting).  As mentioned above, I've done a lot of NFS-Root
boots
| of nodes (regular Debian root, not boot-floppy's root), but as far as
I can
| see from the kernel-configuration, there's no included support for
NFS-Root
| (nor would I really expect there to be in a general distribution
boot-floppy
| kernel).  However, this implies, I believe, that any user would have
to roll
| their own boot-floppy kernel to use x86 network boot with NFS-Root, which
| seems to be asking a lot of them.
|
| In fact, I did just this (rolled my own boot kernel by adding compiled-in
| support for CONFIG_ROOT_NFS, CONFIG_IP_PNP_DHCP, and, specific to my NIC,
| CONFIG_EEPRO100 to the general boot-floppy kernel config) and performed a
| completely successful PXE-based network boot of the Debian installer,
using
| NFS-Root.  Everything installed great, and Woody seems to be really
shaping
| up.  However, IMHO, the above process involves more sophisticated
knowledge
| of such issues than I would imagine acceptable for a general-use tftpboot
| procedure on i386 (as well as requiring an NFS server, in addition to just
| tftp and dhcp/bootp servers).
|
| So, unless I'm mistaken, I'm afraid it might be a little premature to
| consider x86 network boot installation as a solved problem.  I'd very much
| like to help out with making x86 tftpboot a reality for all network boot
| clients, as convenient to use as network boot is on other architectures
| (though that's probably a little harder due to really bad BIOS's in
the x86
| world), and I think I have enough experience to contribute (as well as a
| ready supply of machines on which to test).  Does anyone, more
familiar with
| boot-floppies than I am, have suggestions or guidance to direct this
effort?
|
|
|>sorry for taking so long and missing woody-freeze :(
|>I've been on a longer vacation.
|>
|>Regards
|>Michael
|
|
| Thanks so much to the entire boot-floppies team!
|
| Take care,
| Daniel
|
|
| PS Please cc me on replies.
|
| [1] The real advantage, from my standpoint, of using PXE-based boards is
| that there's no need for floppy-disks or custom-made boot-ROMs that I
| believe many folks use to boot with Etherboot/Netboot.  The downside
is that
| the PXE NIC's cost a little more, but generally PXE only adds ~ $5 to the
| cost of good quality 3Com or Intel NIC's (I got mine for ~ $30 in
quantity).
| Other folks use LinuxBios (www.linuxbios.org) for similar benefits,
with the
| additional advantage of a generally more reliable transmission of the
kernel
| boot image than PXE (though PXE can get around this with multicast tftpd,
| such as that provided, experimentally, by more recent atftpd) when large
| numbers of clients simultaneously network boot.  However, LinuxBios must
| specifically support one's motherboard chipset, since it fully
replaces the
| default bios, and currently only some chipsets are supported.  I'm looking
| forward to playing around more with LinuxBios myself, in the future.
|
|


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7a-cvs (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQE8+yXNBSpWS08ZgdgRAnDVAJ9sdx70V9M4A+ZqqYYUhKpp/iN2twCeOJZT
tZQCGd28EPlF2OBqbmnznl4=
=xOno
-----END PGP SIGNATURE-----

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


Reply to: