OMAPL138和Ubuntu1004的nfs开发环境搭建Word格式文档下载.docx

上传人:b****5 文档编号:16477878 上传时间:2022-11-24 格式:DOCX 页数:16 大小:787.31KB
下载 相关 举报
OMAPL138和Ubuntu1004的nfs开发环境搭建Word格式文档下载.docx_第1页
第1页 / 共16页
OMAPL138和Ubuntu1004的nfs开发环境搭建Word格式文档下载.docx_第2页
第2页 / 共16页
OMAPL138和Ubuntu1004的nfs开发环境搭建Word格式文档下载.docx_第3页
第3页 / 共16页
OMAPL138和Ubuntu1004的nfs开发环境搭建Word格式文档下载.docx_第4页
第4页 / 共16页
OMAPL138和Ubuntu1004的nfs开发环境搭建Word格式文档下载.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

OMAPL138和Ubuntu1004的nfs开发环境搭建Word格式文档下载.docx

《OMAPL138和Ubuntu1004的nfs开发环境搭建Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《OMAPL138和Ubuntu1004的nfs开发环境搭建Word格式文档下载.docx(16页珍藏版)》请在冰豆网上搜索。

OMAPL138和Ubuntu1004的nfs开发环境搭建Word格式文档下载.docx

Networkconnection->

NAT:

Usedtosharethehost'

sIPaddress,设置如下图:

图1

在终端输入以下命令安装nfs服务包:

Host#sudoapt-getinstallnfs-kernel-server

图2

安装成功如下图所示:

图3

2配置nfs

nfs允许挂载的目录和权限需要在文件/etc/exports中进行定义。

使用以下命令打开/etc目录下的nfs配置文件exports:

Host#sudogedit/etc/exports

在文件最后加入如下内容:

/home/tl/*(rw,sync,no_root_squash)

修改完成如下图所示:

图4

保存并退出编辑,下面解释一下设置的含义其中:

/home/tl:

共享目录

*:

允许所有的网络段访问

rw:

访问者具有可读写权限

sync:

资料同步写入内存和硬盘

no_root_squash:

nfs共享目录访问者具有root权限

nfs常用参数有:

ro:

只读访问

读写访问sync所有数据在请求时写入共享

asyncnfs:

在写入数据前可以响应请求

securenfs:

通过1024以下的安全TCP/IP端口发送

insecurenfs:

通过1024以上的端口发送

wdelay:

如果多个用户要写入nfs目录,则归组写入(默认)

no_wdelay:

如果多个用户要写入nfs目录,则立即写入,当使用async时,无需此设置

hide:

在nfs共享目录中不共享其子目录

no_hide:

共享nfs目录的子目录

subtree_check:

如果共享/usr/bin之类的子目录时,强制nfs检查父目录的权限(默认)

no_subtree_check:

和上面相对,不检查父目录权限

all_squash:

共享文件的UID和GID映射匿名用户anonymous,适合公用目录

no_all_squash:

保留共享文件的UID和GID(默认)

root_squashroot:

用户的所有请求映射成如anonymous用户一样的权限(默认)

no_root_squasroot:

用户具有根目录的完全管理访问权限

anonuid=xxx:

指定nfs服务器/etc/passwd文件中匿名用户的UID

3重启nfs服务

执行以下命令重启nfs服务器:

Host#sudo/etc/init.d/portmaprestart

Host#sudo/etc/init.d/nfs-kernel-serverrestart

成功安装如下图:

图5

4本地nfs服务器测试

4.1显示已共享的nfs本地目录

执行以下命令查看nfs共享目录:

Host#showmount–e

图6

4.2挂载本地nfs共享目录

Host#sudomount-tnfslocalhost:

/home/tl//opt/

进入/opt目录可以看到原来在/home/tl目录下的所有内容,如下图:

图7

4.3查看本地nfs挂载情况

在命令行终端执行“df”命令可以查看系统的所有挂载目录,如下图所示:

图8

4.4卸载本地nfs共享目录

通过以下命令将本地挂载的nfs共享系统从挂载点/opt卸载:

Host#sudoumount/opt/

图9

5开发板挂载nfs服务器共享目录

开发板和Windows主机先通过直连网线插到路由器,这样Winsows主机、虚拟机、开发板就相当于在同一个局域网了。

若没有路由器,也可以通过交叉网线将开发板和Windows主机互联。

5.1查看PC机Windows主机的IP地址

在Windows主机<

开始>

菜单栏的最下方输入“cmd”,然后按回车进入dos操作界面,再输入执行"

ipconfig"

查看Windows主机的IP地址,如下图所示:

图10

可以看到“本地连接”IPv4字段是:

192.168.0.2,这是主机的IP地址,子网掩码是:

255.255.255.0,不同主机的IP是不一样的。

5.2修改开发板的IP地址

开发板上电,进入开发板系统后设置IP的前三个字段和Windows主机的一样,最后一个字段务必不能相同,同时设置子网掩码为一致。

只有前三个在字段和子网掩码相同,Windows主机、Ubuntu虚拟机、开发板三者之间才能互相ping通。

例如,针对Windows主机的IP:

192.168.0.2,子网掩码:

255.255.255.0,可以设置开发板的IP地址为:

192.168.0.8,子网掩码:

255.255.255.0,设置命令如下:

Target#ifconfigeth0192.168.0.8netmask255.255.255.0

可以通过ifconfig命令查看修改后的IP和子网掩码等信息,操作如下图:

图11

一种更简便的方法是使用“udhcpc”命令让开发板自动获取路由器给它分配的IP,如下图所示:

图12

5.3设置Ubuntu虚拟机IP地址

在设置之前先将虚拟机和主机的网络连接方式设置为桥接,点击虚拟机"

VM->

Setting"

,弹出以下设置界面:

图13

点击“NetworkAdapter->

NetworkConnection->

Bridged”选项,如下图所示:

图14

点击OK,完成设置。

进入虚拟机Ubuntu系统后设置IP的前三个字段和Windows主机的一样,最后一个字段务必不能相同,同时设置子网掩码为一致。

例如,针对Windows的IP:

255.255.255.0,可以设置虚拟机的的IP地址为:

192.168.0.5,子网掩码:

255.255.255.0。

执行以下命令配置IP:

Host#sudoifconfigeth0192.168.0.5netmask255.255.255.0

通过ifconfig命令查看修改后的IP和子网掩码等信息,结果如下图:

图15

5.4开发板和Ubuntu虚拟机ping测试

在虚拟机执行以下命令,Linux系统的ping命令不会像Windows一样自动停止显示,需要执行“Ctrl+C”命令才能停止。

Host#ping192.168.0.8

成功ping通的结果如下图:

图16

在开发板输入以下命令,测试开发板和虚拟机的网络连通性:

Target#ping192.168.0.5

图17

5.5开发板挂载Ubuntu虚拟机nfs服务器共享目录

在开发板执行以下命令在根目录下建立nfs挂载目录:

Target#mkdir-p/nfs

在开发板中当前执行以下命令挂载nfs服务器共享目录到开发板的/nfs目录:

Target#mount-tnfs-onolock192.168.0.5:

/home/tl/nfs

-tnfs:

挂载类型(type)是nfs。

-onolock:

不加文件锁,nfsmount默认选项包括文件锁(lock),依赖于portmap提供的动态端口分配功能。

192.168.0.5:

虚拟机的IP地址是192.168.0.5,共享目录是虚拟机的/home/tl。

若是提示如下错误,很可能是开发板还没有安装nfs客户端。

图18

请先在开发板执行以下命令安装nfs客户端,再重新挂载,务必保证开发板可以上网。

Target#opkginstallnfs-utils-client

图19

挂载成功后,进入开发板/nfs目录,可以看到Ubuntu虚拟机nfs服务器共享目录下的所有文件了,结果如下图所示:

图20

使用以下命令在开发板的/nfs目录建立nfs测试文件“nfs-test”:

Target#touchnfs-test

可以看到开发板已经出现了“nfs-test”测试文件,在使用vi编译器在“nfs-test”文件输入“testnfs”,保存并退出vi编译器,如下图所示:

图21

这时可以看到在虚拟机的nfs共享目录中有“nfs-test”文件产生了,使用“cat”命令查看其内容,如下图:

图22

说明开发板通过nfs挂载虚拟机的共享目录已经成功,并且可读可写,以后就可以通过nfs服务器来传输文件了,比U盘传输更加便捷。

5.6卸载开发板的nfs挂载目录

执行以下命令离开开发板/nfs目录,并卸载nfs挂载目录:

Target#cd

Target#umount/nfs/

再查看/nfs目录,可以看到里面的挂载内容已经没有了,说明卸载成功,操作和显示如下图:

图23

6nfs起根文件系统

6.1在uboot中设置网络环境变量

开发板上电后,按任意键进入uboot命令行,输入以下命令设置虚拟机TFTP服务器的IP地址变量serverip:

U-Boot>

setenvserverip192.168.0.5

输入以下命令设置开发板的IP地址变量ipaddr:

setenvipaddr192.168.0.8

另外一个变量ethaddr已经在uboot里面写好了,无需设置。

设置会提示无法覆盖,如下图所示:

图24

执行以下命令保存环境变量:

saveenv

保存后重新上电就不用再次设置了,提示如下图:

图25

执行以下命令测试网络的连通性:

ping192.168.0.5

若提示“host*.*.*.*isalive”说明网络畅通,如下图所示:

图26

6.2在uboot中设置tftp内核下载环境变量

务必保证虚拟机tftp服务器已经搭建好,同时保证有内核文件uImage在虚拟机的tftp服务器目录“/home/tl/tftpboot”,如下图所示:

图27

设置tftp内核下载环境变量命令如下:

setenvbootcmd'

tftpc0700000uImage;

bootmc0700000'

操作如下图所示:

图28

设置以下环境变量以后,开发板每次启动都会从服务器tftpboot目录下载uImage内核镜像,测试内核非常方便。

6.3在uboot中设置nfs网络文件系统加载环境变量

务必保证虚拟机nfs服务器已经搭建好,在uboot中设置nfs网络文件系统加载环境变量:

setenvbootargsroot=/dev/nfsrwnfsroot=192.168.0.5:

/home/tl/omapl138/rootfs

nfsaddrs=192.168.0.8:

192.168.0.1:

255.255.255.0

console=ttyS2,115200n8mem=128M

printenv

图29

以下为参数解释:

root=/dev/nfsrw:

使用nfs起根文件系统,权限为可读可写。

nfsroot=192.168.0.5:

/home/tl/omapl138/rootfs:

挂载的是IP地址为192.168.0.5的虚拟机nfs服务器/home/tl/omapl138/rootfs目录下的文件系统。

255.255.255.0:

设置nfs的网络IP参数,格式是nfsaddrs=(开发板IP:

虚拟机nfs服务器IP:

同网段的网关:

子网掩码)。

6.4测试nfs网络文件系统

不用插SD卡,开发板上电,即可直接进入开发板系统根目录,发现开发板文件系统内核和虚拟机中/home/tl/omapl138/rootfs目录下的内容一样,证明nfs起根文件系统成功了。

通过tftp下载内核和nfs起根文件系统,形成一个最流行,也是最便捷的一种调试方法。

以下为两端的截图。

开发板端:

图30

虚拟机nfs文件系统目录:

图31

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 中职中专

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1