Network booting

I am preparing diskless system which is to boot from LAN.

I have managed DHCP and tftp setup and created disk boot image which boots
from floppy.
When this image is used for LAN booting, LAN card PXE bios messages:
TFTP: too many packages

Probably PXE bios expect another boot image format than disk boot image is.
How to create such format?

Jiri Kristek
RETIA, a.s.

You have to change your build file to use elf format (6.2.1 or later).
For example, you would change your build file from:
[virtual=x86,bios +compress]
to
[virtual=x86,elf +compress]

Hope this helps.

Regards,
Barry F.

Jiøí Kristek <jkristek@retia.cz> wrote in message
news:blc69b$j6h$1@inn.qnx.com

I am preparing diskless system which is to boot from LAN.

I have managed DHCP and tftp setup and created disk boot image which boots
from floppy.
When this image is used for LAN booting, LAN card PXE bios messages:
TFTP: too many packages

Probably PXE bios expect another boot image format than disk boot image
is.
How to create such format?

Jiri Kristek
RETIA, a.s.

Switching to elf format does not help.
I found out, that boot image with bios format works if the size is up to
530kB.
( I use ITX MB VIA EPIA ME6000, onboard LAN VT 6103, Intel PXE boot loader )
The problem is to fit required modules in such small boot image to get
network connection working to download required applications.

Is there other way of booting larger images with QNX6.21?

Jiri Kristek
RETIA, a.s.


“OS Support” <os@qnx.com> pí¹e v diskusním pøíspìvku
news:blcc35$mks$1@nntp.qnx.com

You have to change your build file to use elf format (6.2.1 or later).
For example, you would change your build file from:
[virtual=x86,bios +compress]
to
[virtual=x86,elf +compress]

Hope this helps.

Regards,
Barry F.

Jiøí Kristek <> jkristek@retia.cz> > wrote in message
news:blc69b$j6h$> 1@inn.qnx.com> …
I am preparing diskless system which is to boot from LAN.

I have managed DHCP and tftp setup and created disk boot image which
boots
from floppy.
When this image is used for LAN booting, LAN card PXE bios messages:
TFTP: too many packages

Probably PXE bios expect another boot image format than disk boot image
is.
How to create such format?

Jiri Kristek
RETIA, a.s.

\

“J Kristek” <jkristek@retia.cz> wrote:

The problem is to fit required modules in such small boot image to get
network connection working to download required applications.

I have succesfully made small boot images that just start a network
driver and fs-nfs2 to then load the rest of ther application over the
network after boot-up. One space-saving tip is to make sure you
use the “-ptcpip-v4” module to io-net rather than the full v6 stack.
If you post your build file people may be able to help you trim it.

Is there other way of booting larger images with QNX6.21?

GRUB works nicely for larger images.

John Garvey <jgarvey@qnx.com> wrote in message
news:ble7pu$sfv$1@nntp.qnx.com

“J Kristek” <> jkristek@retia.cz> > wrote:
The problem is to fit required modules in such small boot image to get
network connection working to download required applications.

I have succesfully made small boot images that just start a network
driver and fs-nfs2 to then load the rest of ther application over the
network after boot-up. One space-saving tip is to make sure you
use the “-ptcpip-v4” module to io-net rather than the full v6 stack.
If you post your build file people may be able to help you trim it.

Is there other way of booting larger images with QNX6.21?

GRUB works nicely for larger images.

There is an ~500K limit with PXE for booting images and booting a diskless
GRUB which can then take over and do the actual transfer of the larger image
works nicely.

-Adam

How to set up GRUB, any links?

There is my boot image build file. I take it as minimal, but it does not fit
into 530kB.

[virtual=x86,bios +compress] boot =

startup-bios -Nprcek
PATH=/proc/boot:/bin:/sbin:/usr/bin
LD_LIBRARY_PATH=/proc/boot:/dev/shmem:/lib:/dll procnto
}

[+script] startup-script =

seedres
pci-bios &
waitfor /dev/pci
io-net -dvia-rhine -pttcpip
if=en0:192.168.1.254:255.255.255.0,default=192.168.1.1,verbose=1 &
waitfor /dev/io-net/en0
waitfor /dev/socket
fs-nfs2 192.168.1.2:/x86 / 192.168.1.2:/ /nfs &
waitfor /sbin
SYSNAME=nto
TERM=qansi
}
[type=link] /tmp=/dev/shmem
[type=link] /usr/lib/ldqnx.so.2=/proc/boot/libc.so
libc.so
libsocket.so
devn-via-rhine.so
npm-ttcpip.so
[data=c]
io-net
fs-nfs2
pci-bios
seedres



“Adam Mallory” <amallory@qnx.com> pí¹e v diskusním pøíspìvku
news:blelbk$7bq$1@nntp.qnx.com

John Garvey <> jgarvey@qnx.com> > wrote in message
news:ble7pu$sfv$> 1@nntp.qnx.com> …
“J Kristek” <> jkristek@retia.cz> > wrote:
The problem is to fit required modules in such small boot image to get
network connection working to download required applications.

I have succesfully made small boot images that just start a network
driver and fs-nfs2 to then load the rest of ther application over the
network after boot-up. One space-saving tip is to make sure you
use the “-ptcpip-v4” module to io-net rather than the full v6 stack.
If you post your build file people may be able to help you trim it.

Is there other way of booting larger images with QNX6.21?

GRUB works nicely for larger images.

There is an ~500K limit with PXE for booting images and booting a diskless
GRUB which can then take over and do the actual transfer of the larger
image
works nicely.

-Adam

Information on GRUB can be had at http://www.gnu.org/software/grub/

-Adam

Jiøí Kristek <jkristek@retia.cz> wrote in message
news:blel3k$df0$1@inn.qnx.com

How to set up GRUB, any links?

There is my boot image build file. I take it as minimal, but it does not
fit
into 530kB.

[virtual=x86,bios +compress] boot =

startup-bios -Nprcek
PATH=/proc/boot:/bin:/sbin:/usr/bin
LD_LIBRARY_PATH=/proc/boot:/dev/shmem:/lib:/dll procnto
}

[+script] startup-script =

seedres
pci-bios &
waitfor /dev/pci
io-net -dvia-rhine -pttcpip
if=en0:192.168.1.254:255.255.255.0,default=192.168.1.1,verbose=1 &
waitfor /dev/io-net/en0
waitfor /dev/socket
fs-nfs2 192.168.1.2:/x86 / 192.168.1.2:/ /nfs &
waitfor /sbin
SYSNAME=nto
TERM=qansi
}
[type=link] /tmp=/dev/shmem
[type=link] /usr/lib/ldqnx.so.2=/proc/boot/libc.so
libc.so
libsocket.so
devn-via-rhine.so
npm-ttcpip.so
[data=c]
io-net
fs-nfs2
pci-bios
seedres



“Adam Mallory” <> amallory@qnx.com> > pí¹e v diskusním pøíspìvku
news:blelbk$7bq$> 1@nntp.qnx.com> …
John Garvey <> jgarvey@qnx.com> > wrote in message
news:ble7pu$sfv$> 1@nntp.qnx.com> …
“J Kristek” <> jkristek@retia.cz> > wrote:
The problem is to fit required modules in such small boot image to
get
network connection working to download required applications.

I have succesfully made small boot images that just start a network
driver and fs-nfs2 to then load the rest of ther application over the
network after boot-up. One space-saving tip is to make sure you
use the “-ptcpip-v4” module to io-net rather than the full v6 stack.
If you post your build file people may be able to help you trim it.

Is there other way of booting larger images with QNX6.21?

GRUB works nicely for larger images.

There is an ~500K limit with PXE for booting images and booting a
diskless
GRUB which can then take over and do the actual transfer of the larger
image
works nicely.

-Adam
\

“J Kristek” <jkristek@retia.cz> wrote:

There is my boot image build file. I take it as minimal, but it does not
fit into 530kB.

Hmm, it does indeed look fairly minimal. I’ve attached an old one I
used for this purpose; the only difference I see is that I’m using a
slightly newer io-net (which stopped supported if=, so I needed the
ifconfig utility, which would make mine bigger) and the v4 TCP (but
you’re already using the tiny stack which is smaller again?!). What
about the bios versus elf? Anyway, the following booted PXE for me
(I’ve since switched to GRUB since that image was right on the edge):

[virtual=x86,elf +compress] .bootstrap = {
startup-bios -K8250 -v
PATH=/proc/boot:/nfs/bin:/nfs/sbin:/nfs/usr/bin LD_LIBRARY_PATH=/proc/boot:/nfs/lib:/nfs/lib/dll:/nfs/usr/lib procnto-gcc -h -v
}

[+script] .script = {
seedres
pci-bios &
waitfor /dev/pci

io-net -del900 -ptcpip-v4 &
waitfor /dev/socket
ifconfig en0 192.168.1.5

fs-nfs2 192.168.1.2:/ /nfs &
waitfor /nfs/

/nfs/sbin/devc-con -r30,250 -n5 &
waitfor /dev/con1
SHELL=/nfs/bin/ksh TERM=qansi

reopen /dev/con5
[+session pri=35] /nfs/bin/ksh &
reopen /dev/con4
[+session pri=35] /nfs/bin/ksh &
reopen /dev/con3
[+session pri=10] /nfs/bin/ksh &
reopen /dev/con2
[+session pri=10] /nfs/bin/ksh &
reopen /dev/con1
[+session pri=10] /nfs/bin/ksh &

/nfs/sbin/pipe &
/nfs/sbin/devc-pty &
/nfs/sbin/devc-ser8250 &
waitfor /dev/ser1
[pri=30] /nfs/usr/bin/pdebug /dev/ser1 &
}

[type=link] /usr/lib/ldqnx.so.2=/proc/boot/libc.so.2
libc.so.2

libsocket.so
npm-tcpip-v4.so
devn-el900.so

[type=link] /usr/lib/terminfo=/nfs/usr/lib/terminfo

seedres
pci-bios
io-net
ifconfig
fs-nfs2