beaglebone black tftp与nfs挂载根文件系统
2015-06-30 15:22
555 查看
原文链接: http://blog.csdn.net/zy812248258/article/details/39291835
我的板子是beaglebone black rev.c
启动方式: 在win下用am335x-evm-01.00.00.00.img.zip里的镜像烧写到tf卡里 从tf卡启动
TI SDK版本: http://software-dl.ti.com/sitara_linux/esd/processor-sdk/PROCESSOR-SDK-LINUX-AM335X/latest/index_FDS.html下的
ti-processor-sdk-linux-am335x-evm-01.00.00.00-Linux-x86-Install.bin
在linux下为sdk文件添加执行属性, 然后执行. 过程中会让设置安装路径. 我使用的是默认路径. 完成之后再执行 /opt/ti-processor-sdk-linux-am335x-evm-01.00.00.00/setup.sh
这个脚本执行之后(默认操作) 会设置好tftp服务和nfs服务.
tftp路径为 /tftpboot 这个文件夹下已经有了镜像文件
nfs文件夹为: /opt/ti-processor-sdk-linux-am335x-evm-01.00.00.00/targetNFS 这下边也已经有了所需要的文件可以直接挂载
测试主机nfs是否有效:
http://book.51cto.com/art/200811/96860.htm
最后将交叉编译链路径添加到环境变量中即可:
vi ~/.bashrc 后面添加 export PATH=$PATH:/opt/ti-processor-sdk-linux-am335x-evm-01.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin 运行 . ~/.bashrc
下边设置uboot参数让板子从host下载Image 然后挂载网络文件系统作为根文件系统
其中我们需要的两条语句为:
增加设置:
csdn粘贴长代码竟然后边显示不全只能粘贴成文字了...
我的板子是beaglebone black rev.c
启动方式: 在win下用am335x-evm-01.00.00.00.img.zip里的镜像烧写到tf卡里 从tf卡启动
TI SDK版本: http://software-dl.ti.com/sitara_linux/esd/processor-sdk/PROCESSOR-SDK-LINUX-AM335X/latest/index_FDS.html下的
ti-processor-sdk-linux-am335x-evm-01.00.00.00-Linux-x86-Install.bin
在linux下为sdk文件添加执行属性, 然后执行. 过程中会让设置安装路径. 我使用的是默认路径. 完成之后再执行 /opt/ti-processor-sdk-linux-am335x-evm-01.00.00.00/setup.sh
这个脚本执行之后(默认操作) 会设置好tftp服务和nfs服务.
tftp路径为 /tftpboot 这个文件夹下已经有了镜像文件
nfs文件夹为: /opt/ti-processor-sdk-linux-am335x-evm-01.00.00.00/targetNFS 这下边也已经有了所需要的文件可以直接挂载
测试主机nfs是否有效:
http://book.51cto.com/art/200811/96860.htm
最后将交叉编译链路径添加到环境变量中即可:
vi ~/.bashrc 后面添加 export PATH=$PATH:/opt/ti-processor-sdk-linux-am335x-evm-01.00.00.00/linux-devkit/sysroots/i686-arago-linux/usr/bin 运行 . ~/.bashrc
下边设置uboot参数让板子从host下载Image 然后挂载网络文件系统作为根文件系统
其中我们需要的两条语句为:
netargs=setenv bootargs console=${console} ${optargs} root=/dev/nfs nfsroot=${serverip}:${rootpath},${nfsopts} rw ip=dhcp netboot=echo Booting from network ...; setenv autoload no; dhcp; tftp ${loadaddr} ${bootfile}; tftp ${fdtaddr} ${fdtfile}; run netargs; bootz ${loadaddr} - ${fdtaddr}只需要更改和填充这两句中的变量就可以实现网络文件系统的挂载
增加设置:
setenv console /dev/ttyO0,115200n8 setenv serverip 192.168.1.102 //这里写你的虚拟机里ubuntu的ip地址 setenv rootpath /opt/ti-processor-sdk-linux-am335x-evm-01.00.00.00/targetNFS //sdk默认安装之后, nfs文件夹的路径, 如果你安装时更改了路径那么就改成你自己的路径 setenv ipaddr 192.168.1.103 //这个是bbb自身地地址 setenv gatewayip 192.168.1.1 setenv device eth0 setenv autoconf off //setenv ip ${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:${device}:${autoconf} //setenv netargs setenv bootargs console=${console} ${optargs} root=/dev/nfs nfsroot=${serverip}:${rootpath},${nfsopts} rw ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:${device}:${autoconf}setenv netargs setenv bootargs console=${console} ${optargs} root=/dev/nfs nfsroot=${serverip}:${rootpath},${nfsopts} rw ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:${device}:${autoconf}
csdn粘贴长代码竟然后边显示不全只能粘贴成文字了...
setenv fdtfile am335x-boneblack.dtb //这个需要跟/tftpboot里的文件名字相同 setenv bootfile zImage-am335x-evm.bin //如果你是make出来的zImage就直接写 zImage, 不过要将zImage拷贝到tftp目录下
saveenv然后执行 run netboot 就可以自动下载内核, 挂载根文件系统
相关文章推荐
- phpunit安装参考
- FTP服务器的搭建
- PHP常用函数大全
- PHP 常用函数库和一些实用小技巧
- SCTP协议开发资料
- php页面静态化—局部页面静态化原理
- PHP 环境搭建
- FTP-使用记录
- FTP服务器
- THinkPHP在模板中的volist循环使用外部变量注意事项
- Laravel5.1学习笔记8 Blade模板
- PHP学习笔记(八):PHP页面之间传值的四种方法
- 每个PHP开发者都应该看的书
- Laravel 路由和控制器子目录
- PHP运行模式
- PHP多线程的实现方法详解
- [php] Thinkphp Widget的简单使用
- php中fsockopen模仿post与get详解
- PHP垃圾回收机制
- 超实用的PHP代码片段(一)