From: Giles Godart-Brown <ggodartbr...@gmail.com> Reply-To: "beagleboard@googlegroups.com" <beagleboard@googlegroups.com> Date: Thursday, July 31, 2014 at 1:41 AM To: "beagleboard@googlegroups.com" <beagleboard@googlegroups.com> Subject: Re: [beagleboard] unable to boot Beaglebone Black from NFS
> HURRAH it now works, thanks to all your help and no need to make a new kernel > or uboot! > > Here is how its done at a high level, I will be writing it up in more detail > on the Misterhouse on Beglebone instructions > <http://misterhouse.wikispaces.com/BeagleBoneBlack> . > > 1) Flash an SD card with the standard (non eMMC flashing) Debian image from > here <http://beagleboard.org/latest-images> > 2) Set up an NFS share on your NAS/PC/whatever > 3) Boot your Bone with the SD Card > 4) Set the Bone to have a static IP address by editing /etc/netwotk/interfaces > reboot and check it works > 4) NFS mount the shared drive from the Bone ( e.g. mount -o nfsvers=3 > 192.168.10.118:/home/bone /mnt/nfs) > 5) sudo to root on the Bone and do all the rest of the Bone stuff as root > 6) copy everything to the NFS drive. The second step seems unnecessary, but > its quick compared with the first > cp -axv /. /mnt/nfs/. > cp -axv /dev/. /mnt/nfs/dev/. > 7) edit the /mnt/nfs/etc/fstab to add > /dev/nfs / nfs defaults 0 0 > and comment out the other root partition, > 8) Edit your /boot/uboot/uEnv.txt add the following lines - changed to match > your configuration > serverip=192.168.10.118 > ipaddr=192.168.10.47 > hostname=MH_bbb > netmask=255.255.255.0 > gateway=192.168.10.1 > nfsdevice=eth0:off > nfsopts=vers=3 > rootpath=/home/bone/rootfs > comment out the line that starts mmcargs as follows; > #mmcargs=setenv bootargs > add a new netargs line - note all on one line, not broken as here > netargs=setenv bootargs console=${console} ${optargs} root=/dev/nfs > nfsroot=${serverip}:${rootpath} > ip=${ipaddr}:${serverip}:${gateway}:${netmask}:${hostname}:${nfsdevice} > and finally replace the uenvcmd with this; > uenvcmd=run loadfiles; run netargs; bootz ${loadaddr} > ${initrd_addr}:${initrd_size} ${fdtaddr} > > Reboot and you should be able to ssh into your Bone, hear your disk drive > whizzing and see your extra disk space with a df. > For completeness I've attached my uEnv.txt As I said in my previous e-mail, all this above is unnecessary if you are using the latest u-boot. All you need is the 5 lines I showed below. As long as you define client_ip, the default u-boot env will use NFS. No need for uenvcmd, etc. Robert made NFS booting really simple: http://elinux.org/Beagleboard:U-boot_partitioning_layout_2.0#nfs_support Regards, John > > Thanks again > Giles > > > On Wednesday, 30 July 2014 17:43:50 UTC+1, john3909 wrote: >> >> From: Giles Godart-Brown <ggodar...@gmail.com <javascript:> > >> Reply-To: "beagl...@googlegroups.com <javascript:> " >> <beagl...@googlegroups.com <javascript:> > >> Date: Wednesday, July 30, 2014 at 12:24 AM >> To: "beagl...@googlegroups.com <javascript:> " <beagl...@googlegroups.com >> <javascript:> > >> Subject: Re: [beagleboard] unable to boot Beaglebone Black from NFS >> >>> Thanks for your help, but sadly, on this version a uEnv.txt just containing; >>> console=ttyO0,115200n8 >>> client_ip=192.168.10.47 >>> server_ip=192.168.10.118 >>> gw_ip=192.168.10.1 >>> root_dir=/home/bone/bbb_nfs_root >>> >>> does not work, it doesn't even fire up the ethernet port (no activity >>> lights), I'm guessing because there is no eth0 defined and its perhaps >>> trying to fire up the USB network or something. >> Make sure you are using the latest version of u-boot. I¹m using >> >> U-Boot 2014.07-00014-gdc7e38e >> >> This is the v2014.07 with Robert Nelsons u-boot patch >> >> https://github.com/RobertCNelson/Bootloader-Builder/blob/master/patches/v2014 >> .07/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch >> >> Or follow the instructions here: >> >> http://eewiki.net/display/linuxonarm/BeagleBone+Black#BeagleBoneBlack-Bootloa >> der:U-Boot >> >> Regards, >> John >>> >>> I'll try the rsync method once I can ping the beaglebone >>> >>> G >>> >>> On Wednesday, 30 July 2014 03:05:41 UTC+1, john3909 wrote: >>>> >>>> From: Giles Godart-Brown <ggodar...@gmail.com> >>>> Reply-To: "beagl...@googlegroups.com" <beagl...@googlegroups.com> >>>> Date: Tuesday, July 29, 2014 at 2:26 PM >>>> To: "beagl...@googlegroups.com" <beagl...@googlegroups.com> >>>> Subject: [beagleboard] unable to boot Beaglebone Black from NFS >>>> >>>>> I've seen many posts about how to boot a Beaglebone black via an NFS >>>>> mounted root partition, but none seem to work with the latest version. >>>>> I started by creating an NFS mount on my Ubuntu PC and successfully >>>>> mounting it from the Beaglebone when booted from an SD image of the latest >>>>> version dated 2013.06.20 >>>>> <https://s3.amazonaws.com/angstrom/demo/beaglebone/Angstrom-Cloud9-IDE-GNO >>>>> ME-eglibc-ipk-v2012.12-beaglebone-2013.06.20.img.xz> from the Beaglebone >>>>> site. All the commands below were done as root.; >>>>> uname -a >>>>> Linux beaglebone 3.8.13-bone50 .... >>>>> Then test the mount with; >>>>> mount -o nfsvers=3 192.168.10.118:/home/bone /mnt/nfs >>>>> Next I copied the entire filesystem to the nfs mount with >>>>> cp -axv /. /mnt/nfs/. >>>> I¹m not sure this is going to work because you are attempting to copy >>>> dynamic files and folders. Rather insert the SDCard into your host and do >>>> the following: >>>> sudo rsync -avz /mnt/rootfs/ /home/<userid>/targetNFS/ >>>>> >>>>> I've edited the fstab on the nfs (/home/bone/etc/fstab) to add >>>>> /dev/nfs / nfs defaults 0 0 >>>>> and correctly edited /home/bone/etc/network/interface to reflect the >>>>> correct IP address etc. >>>>> Next I edited the uEnv.txt on the SD card to add >>>>> serverip=192.168.10.118 >>>>> ipaddr=192.168.10.47 >>>>> hostname=MH_bbb >>>>> netmask=255.255.255.0 >>>>> gateway=192.168.10.1 >>>>> nfsdevice=eth0:off >>>>> nfsopts=vers=3 >>>>> rootpath=/home/bone >>>>> and changed the mmcargs line to; >>>>> mcargs=setenv bootargs console=tty0 console=${console} ${optargs} >>>>> ${cape_disable} ${cape_enable} ${kms_force_mode} >>>>> ip=${ipaddr}:${serverip}:${gateway}:${netmask}:${hostname}:${nfsdevice} >>>>> root=/dev/nfs rw nfsroot=${serverip}:${rootpath},${nfsopts} ${systemd} >>>>> The Bone starts to boot and I can ping it on the correct IP address, but >>>>> the display never shows anything and it doesn't let me ssh to it. >>>>> Can anyone let me know what I've missed? >>>>> Thanks >>>> This is my complete uEnv.txt: >>>> >>>> ============================== >>>> client_ip=10.100.116.105 >>>> server_ip=10.100.116.73 >>>> gw_ip=10.100.116.1 >>>> root_dir=/home/<userid>/targetNFS >>>> ============================== >>>> >>>> Replace <userid> with your own desktop login id and replace client_ip, >>>> server_ip and gw_ip addresses as required. >>>> >>>> >>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> For more options, visit http://beagleboard.org/discuss >>>>> --- >>>>> You received this message because you are subscribed to the Google Groups >>>>> "BeagleBoard" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send an >>>>> email to beagleboard...@googlegroups.com. >>>>> For more options, visit https://groups.google.com/d/optout. >>> >>> -- >>> For more options, visit http://beagleboard.org/discuss >>> --- >>> You received this message because you are subscribed to the Google Groups >>> "BeagleBoard" group. >>> To unsubscribe from this group and stop receiving emails from it, send an >>> email to beagleboard...@googlegroups.com <javascript:> . >>> For more options, visit https://groups.google.com/d/optout. > > -- > For more options, visit http://beagleboard.org/discuss > --- > You received this message because you are subscribed to the Google Groups > "BeagleBoard" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to beagleboard+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.