软硬件环境是:一台 PC
上面运行虚拟机 Ubuntu
iTOP-4412 开发板一块
PC 机
iTOP-4412 开发板通过网线连接到电脑上面
电脑、开发板、虚拟机必须处在同一网段,并且虚拟机的网络适配器必须设置为桥接模式。
实现 NFS,我们需要一个主机作为 NFS 服务器,我们选择我们的虚拟机 Ubuntu 作为主机。首先我们需要在虚拟机的 Ubuntu 上安装 Ubuntu NFS 服务,这是一个软件包,我们可以使用 apt 命令下载,(下载前请确认你的虚拟机可以上网)。首先登录到虚拟机上,使用快捷键 Ctrl+Alt+t 组合按键打开终端如下图:
输入 su root 命令切换到 root 用户,如下图:
输入 apt-get install nfs-kernel-server 命令安装 Ubuntu NFS 服务,在安装的过程中会提示“是否继续安装”的信息,我们输入“Y”,然后按回车,会继续安装,安装完成,如下图:
接下来需要配置/etc/exports,使用 vi 命令打开/etc/export(ubuntu下的绝对路径),在/etc/export 文件的最后一行添加:
/home/topeet/linux/ *(rw,sync,no_root_squash)
/home/topeet/linux:是要你要共享的目录(后面参数不用管)
添加完成后保存退出vi编辑器
然后重启 nfs 服务,输入/etc/init.d/nfs-kernel-server restart 命令,运行结果如下图:
现在 Ubuntu nfs 服务器端的配置就完成了,下面我们可以在虚拟机 Ubuntu 本机上验证一下,例如我们把/home/topeet/linux/app/system 挂载到/mnt 目录下,需要输入 mount -t nfs localhost:/home/topeet/linux/app/system /mnt 命令
执行完上面的命令,可以使用 df 命令查看是否挂载成功,如下图:
我们可以看到上图中高亮的那一行就是我们挂载的 nfs 文件系统,这说明我们的 Ubuntu nfs 服务器端搭建成功了。
本章节我们用前面章节制作的做小 linux 系统为例,通过 nfs 来挂载它。我们把 linux 最小文件系统放到虚拟机 Ubuntu 的/home/topeet/linux/app 目录下,如下图:
实现 nfs 文件系统我们需要修改 linux 最小文件系统的 etc/init.d/ifconfig-eth0 文件,如下图:
使用 vi 命令修改第八行,修改为:if grep -q nfs /proc/mounts ; then
修改完成后保存并退出。
下面我们开始配置 iTOP-4412 开发板的内核:要实现 nfs 功能,需要修改内核配置来支持,打开内核源码,输入 cp config_for_linux .config 命令生成支持 linux 最小文件系统的内核配置文件:
然后输入 make menuconfig 命令进入 linux 配置界面,如下图:
按照如下路径:
“Networking support”→“Networking options”→选上“IP: kernel
level autoconfiguration”
完成后返回到make menuconfig 的初始界面:
“File systems”→“Network File Systems”
– 选中“NFS client support”,“NFS client support for NFS version 3”,“NFS
client support for the NFSv3 ACL protocol extension”,“NFS client support for NFS
version4”,“NFS client support for NFSv4.1”,“Root file system on NFS”
完成后返回到make menuconfig 的初始配置界面。
保存,退出。
然后使用“make zImge”命令编译内核。
内核编译好之后,把“arch/arm/boot”目录下的 zImage 镜像烧写到开发板。如下图:
使用 ping 命令测试网络,测试开发板、虚拟机、电脑三者之间能否ping通。
在开发板的/mnt 目录下,使用命令“mkdir nfs”新建一个目录,作为开发板的 NFS 同
步目录。
然后在超级终端上使用命令然后使用命令
“mount -t nfs -o nolock 192.168.2.65:/home/minilinux /mnt/nfs”(注意这里的ip地址应换成你自己的ubuntu的ip地址)挂载到 nfs 服务器。
进入虚拟机 Ubuntu 系统中的”/home/minilinux”目录(这个目录是 NFS 服务器目
录),使用”vim hello”命令新建 hello 文档,并添加“hello topeet nfs”内容。
在超级终端下进入目录/mnt/nfs查看新建的文档
由上图可知,开发板和虚拟机可以完成同步(可以使用命令“umount /mnt/nfs”命令卸载 NFS 目录),方便调试,至此,关于nfs的制作和使用全部完成。
iTOP-4412实现NFS网络文件系统
最新推荐文章于 2024-11-28 17:22:50 发布