Re: PXEBOOT/TFTPBOOT + big MD_ROOT problem
> I'm trying to make very big MD_ROOT (300MB) sent using > PXEBOOT+TFTPBOOT. No NFS. It's a sort of diskless machine with all the > system on ram. There is a problem when the preloaded image is >~32MB. > Kernel loads but it does not seem to find the files. It seems as if > only part of the image is really there. With a "small" image (<~32MB), > no probleme. I use the same image, off course, same init etc... just > more data for my application in the big image case. > > I use a classic mfs_root approche to make my image > > dd if=/dev/zero of=$MFS_FILE bs=1k count=$SIZE mdconfig -a -t vnode -f > $MFS_FILE -u0 bsdlabel -w /dev/md0 newfs /dev/md0a mount /dev/md0a > $MFS_FILE_MOUNT cp ... my content... > umount $MFS_FILE_MOUNT > fsck -t ufs /dev/md0a > mdconfig -d -u 0 > > then I mount the $MFS_FILE_MOUNT . > > I use i386/5.4RC2/TFTPD/PXEBOOT+TFTPBOOT . > (same pb with a 5.3). > > Am I missing something obvious? > It seems not. There seems to be a size limitation in the loader (and pxeboot since it is built using loader code). I've tried loading through pxeboot + TFTP : the tftp pxeboot client is limited to 32MB unfortunately (BTW : the one of the tftp port works fine). I tried to use pxeboot + NFS, kernel hangs because of loader limitation (BTW : you can use only NFS UDP since the pxeboot NFS client don't do TCP which means booting using this this technique using TFTP is not less reliable than NFS). I even tried pxegrub, but again it's the loader ... It seems the only reasonable solution is to make a small jumpstart mfsroot, make a md device (malloc / ..) with any size you want as long as you have enough memory (even 1GB+) and then fetch the mfsroot image using tftp/nfs/scp/.. and chroot to it. Emmanuel. ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
RE: PXEBOOT/TFTPBOOT + big MD_ROOT problem
> Objet : Re: PXEBOOT/TFTPBOOT + big MD_ROOT problem > > > Hi, > > > > I'm trying to make very big MD_ROOT (300MB) sent using PXEBOOT+TFTPBOOT. > No > > NFS. It's a sort of diskless machine with all the system on ram. There > is a > > problem when the preloaded image is >~32MB. Kernel loads but it does not > > seem to find the files. It seems as if only part of the image is really > > there. With a "small" image (<~32MB), no probleme. I use the same image, > off > > course, same init etc... just more data for my application in the big > image > > case. > ... > > Am I missing something obvious? > >I assume you saw this in the tftpd manual page? > > BUGS > Files larger than 33488896 octets (65535 blocks) cannot be > transferred > without client and server supporting blocksize negotiation (RFC1783). > > Many tftp clients will not transfer files over 1678 octets (32767 > blocks). > > > -DG Yes. Saw it. My tftp client and pxe+tftp under linux works ok. The tftp client under FreeBSD seems to work fine (1,5GB tranfered, md5sum checked, no pb). BUT, maybe the tftp client in the FreeBSD pxeboot has a problem. I am actually trying to make the mfsroot go through NFS. If that works, it will indicate the FreeBSD pxeboot has indeed this problem with TFTP. Emmanuel. ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: PXEBOOT/TFTPBOOT + big MD_ROOT problem
On Tue, Apr 19, 2005 at 04:18:17PM -0700, David G. Lawrence wrote: > >I assume you saw this in the tftpd manual page? > > BUGS > Files larger than 33488896 octets (65535 blocks) cannot be transferred > without client and server supporting blocksize negotiation (RFC1783). > > Many tftp clients will not transfer files over 1678 octets (32767 > blocks). There is a PR open with a patch to fix this: http://www.freebsd.org/cgi/query-pr.cgi?pr=bin/67550 -- Francois Tigeot ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: PXEBOOT/TFTPBOOT + big MD_ROOT problem
> Hi, > > I'm trying to make very big MD_ROOT (300MB) sent using PXEBOOT+TFTPBOOT. No > NFS. It's a sort of diskless machine with all the system on ram. There is a > problem when the preloaded image is >~32MB. Kernel loads but it does not > seem to find the files. It seems as if only part of the image is really > there. With a "small" image (<~32MB), no probleme. I use the same image, off > course, same init etc... just more data for my application in the big image > case. ... > Am I missing something obvious? I assume you saw this in the tftpd manual page? BUGS Files larger than 33488896 octets (65535 blocks) cannot be transferred without client and server supporting blocksize negotiation (RFC1783). Many tftp clients will not transfer files over 1678 octets (32767 blocks). -DG David G. Lawrence President Download Technologies, Inc. - http://www.downloadtech.com - (866) 399 8500 TeraSolutions, Inc. - http://www.terasolutions.com - (888) 346 7175 The FreeBSD Project - http://www.freebsd.org Pave the road of life with opportunities. ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
RE: PXEBOOT/TFTPBOOT + big MD_ROOT problem
> Objet : Re: PXEBOOT/TFTPBOOT + big MD_ROOT problem > > Marc Olzheim wrote: > > >On Tue, Apr 19, 2005 at 09:52:07AM +0200, Emmanuel Chriqui wrote: > > > > > >>Hi, > >> > >>I'm trying to make very big MD_ROOT (300MB) sent using PXEBOOT+TFTPBOOT. > No > >>NFS. > >> > >> > > > >Any reasons for not using NFS ? > > > > > > > >>I use i386/5.4RC2/TFTPD/PXEBOOT+TFTPBOOT . > >>(same pb with a 5.3). > >> > >>Am I missing something obvious? > >> > >> > > > >I'm not sure. tftp itself is able to handle 32MB+ files, but maybe the > >loader isn't. > > > >A workaround, no using NFS, could be to tftp a second filesystem image > >on boot and mount that from the root filesystem. > > > >Marc > > > > > I assume that the PXE clients are diskless clients. If so, do they have > enough memory to handle this extremely large image? As for tfpt, it uses YES, diskless. And enough memory. > UDP. UDP is usually used for transfer small datagrams, for instance DNS > replies. It is also said to be an unreliable protocol. The client should > repeat the request when no data receives. I doubt this solution is You're right. However, pros : over 2 years this solution has proven to work *perfectly* for us, Reboots are rare and done using pools (~10 servers each time), NFS was horrible to handle and we lost data everytime traffic was intense. Cons : this was over linux. I believe NFS over FreeBSD works better (by I still have my linux servers... and they work great so..). > reliable and flexible enough. My idea for a workaround is creating a > ramdisk from a small boot image, and transfer the less necessary > userland binaries from the boot server to the ramdisk using normal ftp > connection. Yes. Thx. Emmanuel. ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
RE: PXEBOOT/TFTPBOOT + big MD_ROOT problem
> Objet : Re: PXEBOOT/TFTPBOOT + big MD_ROOT problem > > On Tue, Apr 19, 2005 at 09:31:10PM +0200, Emmanuel Chriqui wrote: > > This is roughly how it works under our linux servers, webservers, etc... > I > > was hoping to avoid that approach (less work.. less maintenance..). > > > > Am I the only one on earth to need a big MFSROOT ??? > > :) > > Hmm, I guess so. :-P > > Anyway, you might try > > http://pigseye.kennesaw.edu/~dyeske/freebsd/article.html Thx ! > ... > > Another idea is to use NFS just to use the loader to 'load -t mfs_root' > the mfsroot image. After that, you wouldn't depend on NFS anymore. > > Marc Very good idea. If my problem is related to TFTP + mfs_root than than this might work. Emmanuel. ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: PXEBOOT/TFTPBOOT + big MD_ROOT problem
On Tue, Apr 19, 2005 at 09:31:10PM +0200, Emmanuel Chriqui wrote: > This is roughly how it works under our linux servers, webservers, etc... I > was hoping to avoid that approach (less work.. less maintenance..). > > Am I the only one on earth to need a big MFSROOT ??? > :) Hmm, I guess so. :-P Anyway, you might try http://pigseye.kennesaw.edu/~dyeske/freebsd/article.html Although I'm not sure the linker will allow you to link such a huge object into the kernel... I've used this patch on my netbooted FreeBSD 4.x servers, but never larger tham 10 MB. Another idea is to use NFS just to use the loader to 'load -t mfs_root' the mfsroot image. After that, you wouldn't depend on NFS anymore. Marc pgpcxPtjHJEO0.pgp Description: PGP signature
RE: PXEBOOT/TFTPBOOT + big MD_ROOT problem
> -Message d'origine- > De : [EMAIL PROTECTED] [mailto:owner-freebsd- > [EMAIL PROTECTED] De la part de Marc Olzheim > Envoyé : mardi 19 avril 2005 21:06 > À : Emmanuel Chriqui > Cc : freebsd-hackers@freebsd.org; freebsd-stable@freebsd.org > Objet : Re: PXEBOOT/TFTPBOOT + big MD_ROOT problem > > On Tue, Apr 19, 2005 at 09:52:07AM +0200, Emmanuel Chriqui wrote: > > Hi, > > > > I'm trying to make very big MD_ROOT (300MB) sent using PXEBOOT+TFTPBOOT. > No > > NFS. > > Any reasons for not using NFS ? Yes. Mainly : similar system already working great under linux for two years, NFS heavy traffic problems making data loss so difficult to solve (at least under Linux), cheap memory, better server independence when he got his system (tftp server shut down after the client servers got theirs images). > > > I use i386/5.4RC2/TFTPD/PXEBOOT+TFTPBOOT . > > (same pb with a 5.3). > > > > Am I missing something obvious? > > I'm not sure. tftp itself is able to handle 32MB+ files, but maybe the > loader isn't. TFTP linux->FreeBSD, FreeBsd->FreeBSD, FreeBSD->Linux ok for 500MB, 1GB, 1,5GB, works ok (well... at least on our servers..). > > A workaround, no using NFS, could be to tftp a second filesystem image > on boot and mount that from the root filesyste This is roughly how it works under our linux servers, webservers, etc... I was hoping to avoid that approach (less work.. less maintenance..). Am I the only one on earth to need a big MFSROOT ??? :) Emmanuel. ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: PXEBOOT/TFTPBOOT + big MD_ROOT problem
Marc Olzheim wrote: On Tue, Apr 19, 2005 at 09:52:07AM +0200, Emmanuel Chriqui wrote: Hi, I'm trying to make very big MD_ROOT (300MB) sent using PXEBOOT+TFTPBOOT. No NFS. Any reasons for not using NFS ? I use i386/5.4RC2/TFTPD/PXEBOOT+TFTPBOOT . (same pb with a 5.3). Am I missing something obvious? I'm not sure. tftp itself is able to handle 32MB+ files, but maybe the loader isn't. A workaround, no using NFS, could be to tftp a second filesystem image on boot and mount that from the root filesystem. Marc I assume that the PXE clients are diskless clients. If so, do they have enough memory to handle this extremely large image? As for tfpt, it uses UDP. UDP is usually used for transfer small datagrams, for instance DNS replies. It is also said to be an unreliable protocol. The client should repeat the request when no data receives. I doubt this solution is reliable and flexible enough. My idea for a workaround is creating a ramdisk from a small boot image, and transfer the less necessary userland binaries from the boot server to the ramdisk using normal ftp connection. Cheers, Gábor Kövesdán ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"
Re: PXEBOOT/TFTPBOOT + big MD_ROOT problem
On Tue, Apr 19, 2005 at 09:52:07AM +0200, Emmanuel Chriqui wrote: > Hi, > > I'm trying to make very big MD_ROOT (300MB) sent using PXEBOOT+TFTPBOOT. No > NFS. Any reasons for not using NFS ? > I use i386/5.4RC2/TFTPD/PXEBOOT+TFTPBOOT . > (same pb with a 5.3). > > Am I missing something obvious? I'm not sure. tftp itself is able to handle 32MB+ files, but maybe the loader isn't. A workaround, no using NFS, could be to tftp a second filesystem image on boot and mount that from the root filesystem. Marc pgpPpcYFwJ4OZ.pgp Description: PGP signature
PXEBOOT/TFTPBOOT + big MD_ROOT problem
Hi, I'm trying to make very big MD_ROOT (300MB) sent using PXEBOOT+TFTPBOOT. No NFS. It's a sort of diskless machine with all the system on ram. There is a problem when the preloaded image is >~32MB. Kernel loads but it does not seem to find the files. It seems as if only part of the image is really there. With a "small" image (<~32MB), no probleme. I use the same image, off course, same init etc... just more data for my application in the big image case. I use a classic mfs_root approche to make my image dd if=/dev/zero of=$MFS_FILE bs=1k count=$SIZE mdconfig -a -t vnode -f $MFS_FILE -u0 bsdlabel -w /dev/md0 newfs /dev/md0a mount /dev/md0a $MFS_FILE_MOUNT cp ... my content... umount $MFS_FILE_MOUNT fsck -t ufs /dev/md0a mdconfig -d -u 0 then I mount the $MFS_FILE_MOUNT . I use i386/5.4RC2/TFTPD/PXEBOOT+TFTPBOOT . (same pb with a 5.3). Am I missing something obvious? Emmanuel. ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "[EMAIL PROTECTED]"