一.什么是 NFS
NFS 是 Network File System 的缩写,它可以通过网络,让不同的机器、不同的操作系
统可以共享彼此的文件。
NFS 服务器可以让 PC 将网络中的 NFS 服务器共享的目录挂载到本地端的文件系统中,
而在本地端的系统中来看,那个远程主机的目录就好像是自己的一个磁盘分区一样,在使用上
相当便利;
二.同一个网段概念
使用 nfs 之前,开发板,虚拟机 ubuntu,Windows 电脑三者要互相 ping 通,这就涉
及到了同一个网段的概念。
概念:同一个网段是指 IP 地址和子网掩码相与得到的相同的网络地址。
快速判断同一个网段:
(1)开发板,虚拟机 ubuntu,Windows 子网掩码是不是相同
(2)开发板,虚拟机 ubuntu,Windows IP 地址的前三段是不是相同。
ubuntu 和 Windows 在同一个网段,因为子网掩码相同,都是 255.255.255.0,
IP 地址前三段相同
三.开发板,Windows,虚拟机 ubuntu 三者之间的连接
(1)虚拟机 ubuntu 要使用桥接模式,不能使用其他模式
(2)开发板使用无线或者有线连接到路由器上,不能直接连接到电脑,不能连接手机热点。
(3)Windows 关闭防火墙,使用有线或者无线连接到和开发板连接的同一个路由器上
(4)如果 Windows 使用的是无线连接到路由器,那么虚拟机 vm 要桥接到无线网卡,反
之,桥接到有线网卡。
(5)保证虚拟机 ubuntu,Windows,开发板在同一个网段。
(6)使用以上连接方法极大减少 ping 不通的概率。如果 ping 不通,请检查以上 5 条是否全
部满足
四.NFS 服务器的搭建
(1)在 ubuntu 安装 nfs 服务:
apt-get install nfs-kernel-server
(2)在/home 下创建一个名为 nfs 的文件夹
(3)打开配置文件添加 nfs 共享目录
vi /etc/exports
在配置文件里面添加一下代码:
/home/nfs/ *(rw,sync,no_root_squash)
其中:/home/nfs/ 是 nfs 服务器要共享的目录
rw:是可读写权限
sync:是资料同步写入内存和硬盘
no_root_squash:当登录 NFS 主机使用共享目录的使用者是 root 时,其权限将被转
换成为匿名使用者,通常它的 UID 与 GID 都会变成 nobody 身份。
(4)重启 nfs 服务
/etc/init.d/nfs-kernel-server restart
开发板挂载 nfs 服务器共享的目录,命令如下:
mount -t nfs -o nolock,nfsvers=3,vers=3 192.168.3.49:/home/nfs /mnt/
这句代码的意思是使用 nfs3 版本挂载 IP 为 192.168.3.49 中的/home/nfs 到 mnt 文件
夹下,IP 为 ubuntu 的 IP。
挂载成功就可以愉快的传文件了。