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.

Reply via email to