【北京迅为】iTOP-4412全能版使用手册-第二十章 搭建和测试NFS服务器

iTOP-4412全能版采用四核Cortex-A9,主频为1.4GHz-1.6GHz,配备S5M8767 电源管理,集成USB HUB,选用高品质板对板连接器稳定可靠,大厂生产,做工精良。接口一应俱全,开发更简单,搭载全网通4G、支持WIFI、蓝牙、陀螺仪、CAN总线、RS485总线、500万摄像头等模块,稳定运行Android 4.0.3/Android 4.4操作,系统通用Linux-3.0.15+Qt操作系统(QT支持5.7版本),Ubuntu版本:12.04,接口智能分配 方便好用。


第二十章 搭建和测试NFS服务器

除了前面介绍的 TFTP 可以通过网络在虚拟机 Ubuntu 和开发板之间传输文件,还有一种方法NFS网络共享目录。

要实现 NFS 网络文件系统,需要将安装有虚拟机 Ubuntu 的 PC 机和路由器相连,开发板也需要和路由器相连,PC 和开发板连接的路由器应该是同一台路由器,这样才能确保它们在同一个局域网,确保 PC 上虚拟机 Ubuntu 系统和开发板之间的网络是连通的。安装虚拟机Ubuntu 的 PC 机和开发板,最好能够都通过网线和路由器相连

有的用户,安装虚拟机 Ubuntu 的机器使用无线和路由器相连,或者台式机使用无线和路由器相连,作者做过多次尝试,无论怎么做,都很难实现 NFS 功能。如果条件允许,用户最好采用将安装虚拟机 Ubuntu 的机器和开发板都通过有线网和同一台路由器相连;如果开发环境实在不允许,用户又对 NFS 不熟悉,最好先在有路由器的环境实现 NFS 之后,再使用无线,您需要根据自己网络的实际情况来尝试实现 NFS。

20.1 搭建NFS服务器

完成 NFS 网络文件系统,需要在虚拟机 Ubuntu 上搭建 NFS 服务器,这一节介绍如何搭建 NFS 服务器。

搭建 NFS 服务器,需要在在虚拟机 Ubuntu 上安装 Ubuntu NFS 服务,安装 NFS 服务,需要一个软件包,软件包可以使用 apt 命令下载(当然,首先要保证虚拟机 Ubuntu 可以上网)。在 Ubuntu root 用户下输入“apt-get install nfs-kernel-server”命令安装Ubuntu NFS 服务,如下图。

在安装过程中会提示”是否继续安装”的信息,输入”y”,如下图。 

然后按回车,会继续安装。安装完成,如下图。 

为了确保确实可以安装成功,再次执行“apt-get install nfs-kernel-server”命令,如下图。 

由上图可知,这次更新软件,说明安装已经成功。继续搭建 NFS 服务器。在/etc/export 文件的最后一行添加:

/home/minilinux/ *(rw,sync,no_root_squash)

如下图,

 

下面讲解一下上面输入的内容都代表什么意思:

/home/minilinux/:要共享的目录;

*:代表允许所有的网络段访问;

rw:是可读写权限;

sync:是资料同步写入内存和硬盘;

no_root_squash:是 Ubuntu nfs 客户端分享目录使用者的权限,如果客户端使用的是root 用户,那么对于该共享目录而言,该客户端就具有 root 权限;

这里需要注意的是,“/home/minilinux/”是服务器要挂载的目录,这个目录在默认的虚拟机 Ubuntu 下是没有的,需要用户手动新建。进入/home 目录,使用命令“mkdir minilinux”即可新建。用户可以选择新建其它目录,这也是允许的,但是后续的操作中会用到“/home/minilinux/”目录,如果你对 NFS 不是很熟悉,那么请务必建立“/home/minilinux/”目录。

请注意:如果使用的是Ubuntu12.04系统则执行这一步重启。
接下来重启 portmap 服务,输入“/etc/init.d/portmap restart”命令。
请注意:如果使用的是Ubuntu14.04或者Ubuntu16.02系统则执行这一步重启。
接下来重启 portmap 服务,输入“/etc/init.d/rpcbind restart”命令,作者使用的是Ubuntu12系统,运行结果如下图

 

然后重启 nfs 服务,输入“/etc/init.d/nfs-kernel-server restart”命令,运行结果如下图。

 

至此,Ubuntu nfs 服务器端的配置完成。

20.2 测试NFS服务器

完成前面的搭建服务器工作之后,可以在虚拟机 Ubuntu 本机上验证这个服务器安装和配置是否成功。本节介绍如何测试 NFS 服务器是否正常。

在虚拟机 Ubuntu 控制台输入“mount -t nfs localhost:/home/minilinux /mnt”命令,这个命令可以把/home/minilinux 挂载到/mnt 目录下。记着使用“df”命令查看是否挂载成功,如下图。

 

可以看到上图中最后一行就是挂载的 nfs 文件系统,这说明 Ubuntu nfs 服务器端搭建成功了。如果没有这一行,或者在使用“mount -t nfs localhost:/home/minilinux /mnt”报错,请返回到上一节检查是否有哪一步操作遗漏。

20.3 实现NFS共享目录

请注意,如果是精英版用户,无论内核使用是迅为光盘资料中提供的 zImage 镜像,还是自己编译的镜像。请确保,光盘的内容是更新之后的,在 2019 年 11 月之前购买的用户,多半需要更新光盘资料,否则本章内容无法实现!用户打开自己下载的光盘资料到“06_源码_uboot 和 kernel”,找到“iTop4412_Kernel_3.0_XXX.tar.gz”内核源码压缩包,压缩包名称中 XXX 部分表示日期,如果压缩包的日期在 20191007 之前,请务必下载最新的资料,如果压缩包的日期是 20191007 或者之后的,不用更新。

如果用户“iTop4412_Kernel_3.0_XXX.tar.gz”内核源码压缩包的 XXX 为 20180604, 只需要更两部分内容即可。更新的内容为“06_源码_uboot 和kernel/iTop4412_Kernel_3.0_20191007.tar.gz”压缩包和“04_镜像_QT 文件系统

/zImage”目录中的全部内容,以及光盘中的用户手册。

如果用户自己编译,则需要使用新的内核源码编译之后烧写到开发板;如果用户暂时想使用我们的镜像,请将“04_镜像_QT 文件系统/zImage”中的内核镜像烧写到开发板中。

如果用户使用的是全能版 V4.0 版本,用户使用目前的光盘资料就可以。

开发板网络配置

开发板网口需要使用网线和路由器相连,安装虚拟机 Ubuntu 的 PC 也需要使用和路由器相连,路由器需要是同一个,这样才能让开发板的网络和虚拟机的网络在同一网段。

除了硬件连接,软件方面也需要配置,确保配置正确。

 首先查看一下 NFS 服务器的 ip,也就是虚拟机 Ubuntu 的 IP,如下图所示,使用“ifconfig”命令,可以查看到作者虚拟机 Ubuntu 的 IP 为 192.168.2.232。

接着在开发板串口控制台输入命令“ifconfig”,如下图所示。 

如上图查看到作者开发板的 IP 为 192.168.2.232,虚拟机 Ubuntu 的 IP 为192.168.2.232,子网掩码都为 255.255.255.0,明显不在同一网段。要确保网络连通,除了连接同一台路由器之外,还需要根据虚拟机 Ubuntu 的网络参数,配置开发板的 IP 地址、子网掩码,确认开发板网络和虚拟机 Ubuntu 的网络是在同一网段。

开发板串口控制台使用命令“vi /etc/eth0-setting”打开网络配置文件,将其中的 IP 等参数修改之后,确保在同一网段,网络配置文件打开之后默认如下图所示。

 

然后修改开发板的 ip,保存网络配置文件,退出编辑。在串口控制台上使用命令“reboot”重启开发板,这样可以使网络配置更新。

系统重启之后使用“ifconfig”查看开发板 ip,如下图。

 

由上图可知 ip 已经修改过来了,ping 一下服务器 ip,如下图所示,使用命令“ping 192.168.2.232 -c 3”,作者虚拟机 Ubuntu 的 IP 为 192.192.2.232,所以 ping 命令加这个IP,用户根据自己虚拟机 Ubuntu 的 IP,修改 IP 参数。

由上图可知,0%的丢包率,能够确认开发板和 ubuntu 服务器之间的网络是连通的。

上面这一步,开发板和虚拟机 Ubuntu 之间一定要确保 ping 通,否则后面步骤一定通不过。如果它们之间 ping 不通,重复本小节,检查一下是哪一步有遗漏。

挂载nfs 目录

前面 2 个重要步骤:“NFS 网络服务器在虚拟机安装和测试完成”和“开发板和虚拟机Ubuntu 能够 ping 通”完成之后,可以进行后续操作。

在开发板串口控制台,使用命令“mkdir /mnt/nfs”在/mnt 目录下新建一个 nfs 目录, 然后使用命令“mount -t nfs -o nolock 192.168.2.232:/home/minilinux /mnt/nfs”命令挂载到 nfs 服务器。命令中的红色部分为 IP 地址,用户需要修改为自己 Ubuntu 的 IP。

 

上图中“mount -t nfs...”这个长命令如果没有报错,那么就表明开发板已经成功挂载到虚拟机的 NFS 服务器上。

NFS 共享目录的使用介绍

挂载成功之后,进入虚拟机 Ubuntu 系统中的”/home/minilinux/”目录,如下图,新建一个 test 文件,test 文件中的内容为“hello nfs”。

 

接下来查看开发板上/mnt/nfs 的目录,如下图。 

由上图可知,开发板的/mnt/nfs 目录和虚拟机 Ubuntu 的/home/minilinux 目录,这两个目录中的内容可以保持同步,开发板和虚拟机 Ubuntu 之间要传输文件,可以通过这个目录来实现,非常方便。

至此,nfs 实验全部完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/62497.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据新视界 -- 大数据大厂之 Hive 函数库:丰富函数助力数据处理(上)(11/ 30)

💖💖💖亲爱的朋友们,热烈欢迎你们来到 青云交的博客!能与你们在此邂逅,我满心欢喜,深感无比荣幸。在这个瞬息万变的时代,我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…

【Docker】Docker配置远程访问

配置Docker的远程访问,你需要按照以下步骤进行操作: 1. 在Docker宿主机上配置Docker守护进程监听TCP端口 Docker守护进程默认只监听UNIX套接字,要实现远程访问,需要修改配置以监听TCP端口。 ‌方法一:修改Docker服务…

LuaForWindows_v5.1.5-52.exe

Releases rjpcomputing/luaforwindows GitHub #lua C:\Users\Administrator\Desktop\test.lua print("Hello lua!") print("ZengWenFeng 13805029595")

antd table 自定义表头过滤表格内容

注意:该功能只能过滤可一次性返回全部数据的表格,通过接口分页查询的请自主按照需求改动哈~ 实现步骤: 1.在要过滤的列表表头增加过滤图标,点击图标显示浮窗 2.浮窗内显示整列可选选项,通过勾选单选或者全选、搜索框来…

【分页查询】.NET开源 ORM 框架 SqlSugar 系列

.NET开源 ORM 框架 SqlSugar 系列 【开篇】.NET开源 ORM 框架 SqlSugar 系列【入门必看】.NET开源 ORM 框架 SqlSugar 系列【实体配置】.NET开源 ORM 框架 SqlSugar 系列【Db First】.NET开源 ORM 框架 SqlSugar 系列【Code First】.NET开源 ORM 框架 SqlSugar 系列【数据事务…

CSP-J初赛不会备考咋办?

以下备考攻略仅供参考,如需资料请私信作者!求支持! 目录 一、编程语言基础 1.语法知识 -变量与数据类型 -运算符 -控制结构 -函数 2.标准库的使用 -输入输出流 -字符串处理 -容器类(可选) 二、算法与数据结构 1.基…

火语言RPA流程组件介绍--键盘按键

🚩【组件功能】:模拟键盘按键 配置预览 配置说明 按键 点击后,在弹出的软键盘上选择需要的按键 执行后等待时间(ms) 默认值300,执行该组件后等待300毫秒后执行下一个组件. 输入输出 输入类型 万能对象类型(System.Object)输出类型 万能对象类型…

springboot vue 开源 会员收银系统 (12)购物车关联服务人员 订单计算提成

前言 完整版演示 http://120.26.95.195/ 开发版演示 http://120.26.95.195:8889/ 在之前的开发进程中,我们完成订单的挂单和取单功能,今天我们完成购物车关联服务人员,用户计算门店服务人员的提成。 1.商品关联服务人员 服务人员可以选择 一…

JiaJia-CP-1,2,3的WP(1)

一.JiaJia-CP-1 这是ctfshow里电子取证里面的题,以下下是我做题时的WP 审题,最后提交格式要进行md5 加密,给各位CTFer们找了一个md5加密的网站(加紧收藏哦): MD5 在线加密工具 | 菜鸟工具 1.拿到题目&am…

【C语言】关于 JavaScript 与 C语言在函数嵌套定义方面的差异探讨

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C语言 文章目录 💯前言💯JavaScript:允许函数嵌套定义与闭包的灵活性JavaScript 的闭包机制JavaScript 中嵌套函数的应用场景 💯C 语言:不允许函数嵌套定义的…

基于SpringBoot共享汽车管理系统【附源码】

基于SpringBoot共享汽车管理系统 效果如下: 系统注册页面 系统登陆页面 系统管理员主页面 用户信息管理页面 汽车投放管理页面 使用订单页面 汽车归还管理页面 研究背景 随着计算机技术和计算机网络的逐渐普及,互联网成为人们查找信息的重要场所。二十…

【天地图】HTML页面实现车辆轨迹、起始点标记和轨迹打点的完整功能

目录 一、功能演示 二、完整代码 三、参考文档 一、功能演示 运行以后完整的效果如下: 点击开始,小车会沿着轨迹进行移动,点击轨迹点会显示经纬度和时间: 二、完整代码 废话不多说,直接给完整代码,替换…

【Jenkins】docker 部署 Jenkins 踩坑笔记

文章目录 1. docker pull 超时2. 初始化找不到 initialAdminPassword 1. docker pull 超时 docker pull 命令拉不下来 docker pull jenkins/jenkins:lts-jdk17 Error response from daemon: Get "https://registry-1.docker.io/v2/": 编辑docker配置 sudo mkdir -…

Docker: 教程07 - ( 如何对 Docker 进行降级和升级)

如果我们使用 docker 来管理容器,那么保持 docker 引擎的更新将会是十分重要的,这一篇文章我们将会讨论如何对Docker 进行降级和升级。 准备工作 - docker 环境 我们需要拥有一个安装好 docker 的运行环境。 如果你需要了解如何安装 docker 可以通过如…

SOLID原则学习【目录篇】

文章目录 1. 前言2. ‘S’--单一职责原则(Single Responsibility Principle)3. ‘O’--开闭原则4. ‘L’--里氏替换原则5. ‘I’--接口隔离原则6. ‘D’--依赖倒置原则参考 1. 前言 SOLID原则是面向对象设计(OOD)中五个核心设计原…

Flink在Linux系统上的安装与入门

一、Flink的引入 这几年大数据的飞速发展,出现了很多热门的开源社区,其中著名的有Hadoop、Storm,以及后来的Spark,他们都有着各自专注的应用场景。Spark 掀开了内存计算的先河,也以内存为赌注,赢得了内存计…

【大数据学习 | Spark调优篇】Spark之JVM调优

1. Java虚拟机垃圾回收调优的背景 如果在持久化RDD的时候,持久化了大量的数据,那么Java虚拟机的垃圾回收就可能成为一个性能瓶颈。因为Java虚拟机会定期进行垃圾回收,此时就会追踪所有的java对象,并且在垃圾回收时,找…

SpringSecurity6

1.快速入门 2.SpringSecurity底层原理 使用的是委托过滤器,委托过滤器实际上就是 sevlet 过滤器 将自己放入Sevlet环境下 然后里面是一个 过滤器链代理 代理类下又是一个代理过滤器链的集合, 对于不同请求可以有不同的过滤器链, springsecurity有个默认的过滤器链 Defau…

电磁兼容(EMC):磁性材料(永磁、软磁、功能磁)详解

目录 一、磁性材料概述 二、常用磁性材料分类 1. 永磁材料 2. 软磁材料 3. 功能性磁材 三、软磁材料特点 一、磁性材料概述 磁性材料是指由过渡元素铁(Fe)、钴(Co)、镍(Ni)及其合金等组成的能够直接…

海盗王用golang重写的AccountServer功能

自从用golang重写了海盗王的网关gateserver以来,一直想把accountserver也重写了,但是一直没有进行。 趁上次刚写好那个golang版的更新器,还有些熟悉,于是把原来AccountServer的C代码重写读了个大概。它原版的写得太过于复杂&#…