文件传输之nfs
1 安装 nfs 服务包
安装软件前务必保证虚拟机可以上网。虚拟机要访问网络必须在“Virtual Machine setting”菜单下选择 Network Adapter->Network connection->NAT:Used to share the host's IP address,设置如下图:
在终端输入以下命令安装 nfs 服务包
sudo apt-get installnfs-kernel-server
2 配置 nfs
nfs 允许挂载的目录和权限需要在文件/etc/exports 中进行定义。使用以下命令打开/etc 目录下的 nfs 配置文件 exports:
sudo gedit /etc/exports 在文件最后加入如下内容: /home/tl/ *(rw,sync,no_root_squash)
/home/tl:共享目录,根据自己的虚拟机来设置,我的主目录是这个。
*:允许所有的网络段访问
rw:访问者具有可读写权限
sync:资料同步写入内存和硬盘
no_root_squash: nfs 共享目录访问者具有 root 权限
3 重启 nfs 服务
执行以下命令重启 nfs 服务器:
sudo /etc/init.d/portmap restart
sudo /etc/init.d/nfs-kernel-server restart
4 开发板挂载 nfs 服务器共享目录
开发板和 Windows 主机先通过直连网线插到路由器,这样 Winsows 主机、虚拟机、 开发板就相当于在同一个局域网了。若没有路由器,也可以通过交叉网线将开发板和 Windows 主机互联。
设置开发板IP地址:
ifconfig eth0 192.168.0.141 netmask 255.255.255.0
设置虚拟机IP地址:
点击“Network Adapter->Network Connection->Bridged”选项。
ifconfig eth0 192.168.0.206 netmask 255.255.255.0
要想看看两者是否通讯正常,可以使用ping命令来测试。
在开发板执行以下命令在根目录下建立 nfs 挂载目录:
mkdir -p /nfs
在开发板中当前执行以下命令挂载 nfs 服务器共享目录到开发板的/nfs 目录:
mount -t nfs -o nolock 192.168.0.206:/home/tl /nfs
-t nfs:挂载类型( type)是 nfs。
-o nolock:不加文件锁, nfs mount 默认选项包括文件锁( lock),依赖于 portmap 提供的 动态端口分配功能。
192.168.0.206:/home/tl:虚拟机的 IP 地址是 192.168.0.206,共享目录是虚拟机的/home/tl。
挂载成功后,进入开发板/nfs 目录,可以看到 Ubuntu 虚拟机 nfs 服务器共享目录下的所有文件了。卸载开发板的 nfs 挂载目录执行以下命令离开开发板/nfs 目录,并卸载 nfs 挂载目录:
cd
umount /nfs/