Chinaunix首页 | 论坛 | 博客
  • 博客访问: 224708
  • 博文数量: 82
  • 博客积分: 30
  • 博客等级: 民兵
  • 技术积分: 505
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-23 14:59
文章分类

全部博文(82)

文章存档

2015年(81)

2011年(1)

我的朋友

分类: 嵌入式

2015-02-04 11:37:34

搭建嵌入式nfs时,嵌入式开发板上的系统必须支持nfs客户端。
本文档基于:ubuntu系统   virtualbox虚拟机  fl2440开发板
1. 在电脑服务器端下载并安装nfs

$ sudo apt-get install nfs-kernel-server nfs-common portmap

2.配置共享文件
   将服务器端(电脑)上一个文件夹作为共享文件夹,以后客户端(开发板)将通过网络文件系统NFS访问这个文件夹。我这里把/work/nfs_root作为共享目录。

打开配置文件
$ sudo gedit /etc/exports       
   将下面这句话添加在这个文件最后。
/work/nfs_root *(rw,sync,no_root_squash)
注意nfs_root与*之间一定要有空格。而*号与后面就没有空格。*号代表ip地址(也可以是一确定的网段)。*代表允许所有的网络段访问,rw是可读写权限。保存。
可以通过sudoexportfs -rv 来更新 这个文件
          
3.重启NFS服务
sudo /etc/init.d/portmap restart //可改用 sudo  service portmap restart
sudo /etc/init.d/nfs-kernel-server restart


4.服务器安装完之后可以这样测试。(这步只是检测, 若只想与开发板相连这步可略)

本地测试:$sudo mount 192.168.1.109:/work/nfs_root   /mnt
执行后,可以在mnt目录下发现我的共享目录下的文件。
这样nfs应该就搭建成功了。其中192.168.1.109为服务端(电脑)的IP

碰到的问题:如果设定了主机IP,而不是用*号时,在进行本地测试时,进行Mount时会遇到
mount.nfs: access denied by server while mounting 192.168.1.2:的问题
因为本地测试默认在127.0.0.1范围内寻址,所以当然不会寻找到192.168. .
所以用*号可以解决这个问题。

5.客户端(开发板)连接服务端

将客户端(开发板)插上网线接入网络,设置好IP。
在客户端终端输入:
#mount -t nfs -o nolock 192.168.1.109:/work/nfs_root   /mnt(/mnt为实验板上的目录,也可是其他目录)
如果无任何输出说明连接成功了。
#cd /mnt
#ls

可以看到这个目录下有我主机的共享目录的中的内容了。这样NFS连接就成功了。
 如果能正常挂载,而不能对文件进行copy,mv等操作,可能是文件大了。可用如下命令挂载:
#mount -t nfs -o intr,nolock,rsize=1024,wsize=1024  192.168.1.109:/work/nfs_root   /mnt(/mnt为实验板上的目录,也可是其他目录)
阅读(715) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~