虚拟机和开发板之间通过NFS互联
简介
NFS是Network File System的首字母缩写。它是一种分布式协议,使客户端可以访问远程服务器上的共享文件。它允许网络中的计算机之间通过TCP/IP网络共享资源。
配置过程
安装NFS服务端
sudo apt-get install nfs-kernel-server
遇到提示:输入Y,同意。
VMware桥接模式的设置
- VMware桥接模式设置:设置到以太网网口
- 编辑虚拟机的网络适配器
这里 复制物理网络连接状态 是指虚拟机里也会显示 网络电缆被拔出 的信息。
- 启动Linux虚拟机。点开设置。可以看到显示 有线连接 已拔出。
- 点击编辑按钮,选择IPV4项。选择手动(Manual)。
IP地址 、子网掩码 、网关 分别填入:192.168.0.3、 255.255.255.0、 0.0.0.0 。
网络测试
现在可以用直连网线 连接开发板和主机。然后测试一下开发板和虚拟机。
连接网线后,首先Ubuntu显示网线已连接:
- 在虚拟机下输入
ifconfig
。 - SecureCRT 连接开发板(或其他方式),输入
ifconfig
。
创建NFS共享目录
现在在Ubuntu虚拟机下,创建给开发板共享的文件夹。
- 我是使用根目录的下的文件夹。
/NFS_test_dir/test1/
- 使用命令:
sudo mkdir -p /NFS_test_dir/test1
。 - 然后需要配置权限:
sudo chown nobody:nogroup /NFS_test_dir/test1
sudo chmod -R 777 /NFS_test_dir/test1
- (希望所有客户端都可以访问该共享文件夹里面的内容,因此分配最高权限)
编辑exports配置文件
- 打开 Ubuntu虚拟机下的
/etc/exports
文件。 - 在文件最后添加:
/NFS_test_dir/test1 *(insecure,rw,async,no_root_squash)
配置客户端
-
开发板建立挂载点
-
cd /mnt
-
mkdir nfs
-
-
在Ubuntu虚拟机启动NFS服务器:
-
sudo /etc/init.d/nfs-kernel-server start
启动服务器。- 提示成功即成功。或者
sudo systemctl status nfs-server
检查是否启动。
- 提示成功即成功。或者
-
-
开发板中执行挂载命令:
-
mount -t nfs 192.168.0.3:/NFS_test_dir/test1 /mnt/nfs -o nolock
-
无报错,即表明挂载成功。
-
测试
我们可以先在Ubuntu虚拟机交叉编译一个HelloWorld程序,然后将它放在共享目录,也就是/NFS_test_dir/test1
。
现在看看开发板上的情况:
参考资料
本文来自博客园,作者:江水为竭,转载请注明原文链接:https://www.cnblogs.com/Az1r/p/17724380.html