浅谈linux - 搭建nfs服务

2023-05-16

概述

本文用于展示如何搭建nfs服务,实现开发机和目标机之间的文件共享。

注意 

开发环境:ubuntu 16.04,linux 4.9,开发板:TLZ7x-EasyEVM-A3。

另外,小编所有文章均是自己亲手编写验证,由于文件太多,小编就不在公众号后台一一回复列举了,若需要小编的工程代码,请关注公众号,后台回复需要的工程文件

操作

开发机

Ubuntu安装nfs服务软件

配置网络

点击网络图标,选择Edit Connections…按钮。

fecc06674a45e05530f63332c8f7cf59.png

点击Edit编辑网络或者Add增加网络。

7af0820e6932aac9e20d7badc8fed121.png

输入网络名字,设置IP为静态IP,选择手动输入。

d507e07dd8661ffafb4c60473f8a989e.png

点击Add按钮,输入IP地址。注意,开发机的IP、开发机本身IP、开发板的IP需要在同一网段,最后点击Save按钮保存。

3d3362629e3d7d0fca77a2ecc2f5d27c.png

点击网络按钮,选择连接Zynq。

e8c954a63a86e6c4aa162fe2e5b7d4d0.png

连接成功出现如下提示。

76c1fa80b82fc30ec5c2ede1d87c630e.png

输入ifconfig,看ip是否正确。

5ceafbab8bbca767cc0d256b8ca8f067.png

使用ping命令,看是否与主机连通。

e70da08849149d5fe8d8bb25c9891161.png

Ubuntu新建共享目录

如nfs_share,注意:修改目录的权限为777.命令行如下:

mkdir nfs_share
sudo chmod 777 nfs_share

a0d52fba493f42a385fe0b3e810b13ad.png

修改配置nfs配置文件,配置共享目录。命令行:sudo vim /etc/exports

fa407816c9aad1f118643029f990ce3a.png

在打开的文件中,指定nfs目录位置。添加命令

# /etc/exports: the access control list for filesystems which may be exported
#        to NFS clients.  See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#
/home/ubuntu/zynq/nfs_share *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)

b6c4243ac3dc09320d7b0f27c4a4f898.png

配置命令参数解析如下:

参数说明

/home/ubuntu/zynq/nfs_share

nfs共享目录
*允许任何网段IP的系统访问
rw访问者具有可读写权限
sync资料同步写入内存和硬盘
no_root_squash访问者对共享目录有root权限

重启NFS服务,并查看本地NFS共享目录名称。命令行:

sudo /etc/init.d/nfs-kernel-server restart
showmount -e

5cdbd538cc75bb2912206785f916ff9e.png

开发板

查看本地ip地址,命令行:ifconfig

4ea60fa6fb86f94a5e2a4ee3ebc7925c.png

配置ip地址与nfs开发机同一网段,使用命令行:ifconfig eth0 192.168.10.241

4ef8cd19f60cf085c5361ea16f97b108.png

测试网络是否连通,命令行:ping 192.168.10.242

cdb1cd0b47d13e2240c94f3a0ee4faaf.png

新建nfs共享文件夹,并且修改权限为777.命令行

620a7a17b111060e4d522b962042c181.png

使用命令挂接nfs。命令行:

mount -t nfs -o nolock 192.168.10.242:/home/ubuntu/zynq/nfs_share /home/root/nfs_share/

ac85fd4accea7382a3b716dc8e72eec0.png

测试

开发机在nfs共享目录,新建文件test.txt。

e6ab60e0c8e39f5cb7a209fe75ccb1a2.png

输入测试内容

e4bf6f503661294200152fde1d11f44c.png

开发板进入nfs共享目录,查看文件是否正确。

f754845b28c57cc47492ac32199b9707.png

往期 · 推荐

实时系统vxWorks - 任务(重要)

实时系统vxWorks - 加载应用程序的方法

实时系统vxWorks - 在线调试

实时系统vxWorks - 虚拟机环境搭建

实时系统vxWorks - zynq7020移植vxWorks

关注

更多精彩内容,请关注微信公众号:不只会拍照的程序猿,本人致力分享linux、设计模式、C语言、嵌入式、编程相关知识,也会抽空分享些摄影相关内容,同样也分享大量摄影、编程相关视频和源码,另外你若想要获得更多内容教程请关注公众号:不只会拍照的程序猿

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

浅谈linux - 搭建nfs服务 的相关文章

  • 从 Python 调用 PARI/GP

    我想打电话PARI GP http pari math u bordeaux fr dochtml gpman html仅从Python计算函数nextprime n 对于不同的n是我定义的 不幸的是我无法得到帕里蟒蛇 http code
  • nslookup 报告“无法解析 '(null)': 名称无法解析”,尽管它成功解析了 DNS 名称

    我在 ubuntu 上 并且正在运行 docker 默认桥接网络 我有 Zookeeper kafka 的容器化版本 以及我编写的与 kafka 对话的应用程序 I do a docker exec it
  • 两种情况或 if 哪个更快? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我必须制作一个 非常 轻的脚本 它将接受用户的选项并调用脚本中的函数来执行一些任务 现在我可以使用 IF 和 CASE 选项 但我想知道两
  • CentOS:无法安装 Chromium 浏览器

    我正在尝试在 centOS 6 i 中安装 chromium 以 root 用户身份运行以下命令 cd etc yum repos d wget http repos fedorapeople org repos spot chromium
  • Linux 可执行文件与 OS X“兼容”吗?

    如果您在基于 Linux 的平台上用 C 语言编译一个程序 然后将其移植以使用 MacOS 库 它会工作吗 来自编译器的核心机器代码在 Mac 和 Linux 上兼容吗 我问这个问题的原因是因为两者都是 基于 UNIX 的 所以我认为这是真
  • SSE:跨页边界的未对齐加载和存储

    我在页面边界旁边执行未对齐加载或存储之前读过某处 例如使用 mm loadu si128 mm storeu si128内在函数 代码应首先检查整个向量 在本例中为 16 个字节 是否属于同一页 如果不属于同一页 则切换到非向量指令 我知道
  • 在我的 index.php 中加载 CSS 和 JS 等资源时出现错误 403

    我使用的是 Linux Elementary OS 并在 opt 中安装了 lampp My CSS and JS won t load When I inspect my page through browser The console
  • 在脚本内使用不带密码的 sudo

    由于某种原因 我需要作为用户在没有 sudo 的情况下运行脚本 script sh 该脚本需要 root 权限才能工作 我认为将 sudo 放入 script sh 中是唯一的解决方案 让我们举个例子 script sh bin sh su
  • CoAP数据包的大小是多少?

    我是这项技术的新手 有人可以帮助我了解一些疑问吗 Q 1 CoAP数据包的大小是多少 我知道有 4 字节固定标头 但是包括标头 选项和负载在内的最大大小限制是多少 Q 2 有像MQTT那样的Keep Alive的概念吗 它在UDP上工作 它
  • Gtk-ERROR **:检测到 GTK+ 2.x 符号

    我正在使用 gcc 编译我的 c 应用程序 并使用以下标志 gcc evis c pkg config cflags libs gtk 2 0 libs clutter gtk 1 0 libs gthread 2 0 Wall o evi
  • 我不明白 execlp() 在 Linux 中如何工作

    过去两天我一直在试图理解execlp 系统调用 但我还在这里 让我直奔主题 The man pageexeclp 将系统调用声明为int execlp const char file const char arg 与描述 execl exe
  • 需要一些建议来开始在 ARM(使用 Linux)平台上编程

    我 也许 很快就会在托管 Linux 发行版的 ARM 平台上工作 我不知道哪个发行版 我知道该项目涉及视频流 但我无法告诉你更多信息 其实我只收到通知 还没见到任何人 我从来没有在这样的平台上工作过 所以我的想法是在项目开始之前进行测试
  • php exec 返回的结果比直接进入命令行要少

    我有一个 exec 命令 它的行为与通过 Penguinet 给 linux 的相同命令不同 res exec cd mnt mydirectory zcat log file gz echo res 当将命令直接放入命令行时 我在日志文件
  • waitpid() 的作用是什么?

    有什么用waitpid 它通常用于等待特定进程完成 或者如果您使用特殊标志则更改状态 基于其进程 ID 也称为pid 它还可用于等待一组子进程中的任何一个 无论是来自特定进程组的子进程还是当前进程的任何子进程 See here http l
  • Linux:如何设置进程的时区?

    我需要设置在 Linux 机器上启动的各个进程的时区 我尝试设置TZ变量 在本地上下文中 但它不起作用 有没有一种方法可以使用与系统日期不同的系统日期从命令行运行应用程序 这可能听起来很愚蠢 但我需要一种sandbox系统日期将被更改的地方
  • 我如何知道 C 程序的可执行文件是在前台还是后台运行?

    在我的 C 程序中 我想知道我的可执行文件是否像这样在前台运行 a out 或者像这样 a out 如果你是前台工作 getpgrp tcgetpgrp STDOUT FILENO or STDIN FILENO or STDERR FIL
  • 使用 Grep 查找两个短语之间的文本块(包括短语)

    是否可以使用 grep 来高亮所有以以下内容开头的文本 mutablePath CGPathCreateMutable 并以以下内容结尾 CGPathAddPath skinMutablePath NULL mutablePath 这两个短
  • 监视目录的更改

    很像一个类似的问题 https stackoverflow com questions 112276 directory modification monitoring 我正在尝试监视 Linux 机器上的目录以添加新文件 并希望在这些新文
  • 快速像素绘图库

    我的应用程序以每像素的方式生成 动画 因此我需要有效地绘制它们 我尝试过不同的策略 库 但结果并不令人满意 尤其是在更高分辨率的情况下 这是我尝试过的 SDL 好的 但是慢 OpenGL 像素操作效率低下 xlib 更好 但仍然太慢 svg
  • C++ Boost ASIO 简单的周期性定时器?

    我想要一个非常简单的周期性计时器每 50 毫秒调用我的代码 我可以创建一个始终休眠 50 毫秒的线程 但这很痛苦 我可以开始研究用于制作计时器的 Linux API 但它不可移植 I d like使用升压 我只是不确定这是否可能 boost

随机推荐

  • Spring框架基础看这一篇就够

    第一章Spring的概念 spring全家桶 xff1a Spring SpringMVC SpringBoot SpringCloud Spring 出现在2002年左右 xff0c 解决企业开发难度 xff0c 减轻对项目模块之间的管理
  • 实时系统vxWorks-Zynq7020 PL中断使用(重要)

    概述 在任何嵌入式设计中 中断都是必不可少的部分 采用中断系统可以提高计算机系统效率 维持系统可靠正常工作 满足实时处理要求 提供故障现场处理手段 注意 开发环境 vxWorks6 9 4 workbench3 3 5 开发板 TLZ7x
  • 实时系统vxWorks-Zynq7020 axi uart使用

    概述 UART是通用异步收发传输器 Universal AsynchronousReceiver Transmitter 在嵌入式设计中 通常用于主机与辅助设备通信 注意 开发环境 vxWorks6 9 4 workbench3 3 5 开
  • 实时系统vxWorks - 信号量(重要)

    概述 信号量是VxWorks任务间进行通信 同步和互斥的最优选择 提供任务间最快速的通信 也是提供任务间同步和互斥的主要手段 注意 vxworks提供二进制信号量 互斥信号量 计数信号量 读写信号量4种类型的信号量 二进制信号量 主要用于任
  • 实时系统vxWorks-Zynq7020 自定义axi ip核

    概述 AXI Advanced eXtensible Interface 协议主要描述了主设备 Master 和从设备 Slave 之间的数据传输方式 主设备和从设备之间通过握手信号建立连接 当主设备的数据准备好时 会发出和维持VALID信
  • 实时系统vxWorks - Shell命令

    概述 在开发调试中 Shell总是作为目标机的输入和输出终端 用户可以通过Shell在主机端输入命令 也可以在Shell窗口中看到目标机输出的内容 注意 开发环境 vxWorks6 9 4 workbench3 3 5 另外 小编所有文章均
  • 实时系统vxWorks - 环形缓冲

    概述 Vxwroks 环形缓冲模块主要定义在rngLib c和rngLib h中 对于数据结构比较了解的小伙伴应该知道 环形缓冲实际就是一个双向循环队列 注意 关于循环队列 小编之前在 也没想象中那么神秘的数据结构 先来后到的 队列 循环队
  • 听说Zynq-Zynq7 Processing System配置导入导出

    概述 zynq开发中 我们如何才能将一个工程的Zynq Process System快速准确的配置到另一个工程 这里就需要我们对Zynq7 Processing System ip核的配置导入导出 注意 开发环境 vivado2018 2
  • 实时系统vxWorks - 动态库、静态库建立及调用

    概述 静态库的本质就是将多个目标文件打包成一个文件 在使用时链接静态库就是将库中被调用的代码复制到调用模块中 动态库又名共享库 和静态库最大的不同就是 链接共享库并不需要将库中被调用的代码复制到调用模块中 相反被嵌入到调用模块中的仅仅是被调
  • 实时系统vxWorks - 多任务调试手段

    概述 nbsp 对于vxWorks而言 任务可以说是我们项目工程中不可或缺的组成部分 在实际应用中 我们不可能所有工作都放在一个任务中完成 这样势必会建立多个任务 此时就需要我们对每个任务具备一定的调试手段 注意 开发环境 vxWorks6
  • 实时系统vxWorks - 添加头文件路径的方法

    概述 因为模块化的编程思想 在实际项目工程中往往会存在大量的不同功能的模块 这种模块的体现形式就是不同文件名的源文件和头文件 当我们调用自己写的头文件时 大多数时候需要指定头文件路径 否则编译会出错 注意 开发环境 vxWorks6 9 4
  • 华为开发者大会总结——个人总结

    方舟编译器 xff08 开源 xff09 xff1a 干掉Java虚拟机 将java代码直接编译成机器码 xff0c 静态语义好编译 xff0c 核心是静态编译出动态语义 xff08 通过华为编译实验室的核心专利 xff09 xff0c 代
  • 二叉树遍历应用——计算节点个数与树的高度

    二叉树的节点个数等于左子树的节点数加上右子树的节点数再加上根节点数1 递归算法 xff1a span class token keyword template span span class token operator lt span s
  • 实时系统vxWorks - 增加删除ip

    概述 实际应用中 相信各位小伙伴都遇到过以下的情况 只有一个网络端口 但是想要与多台设备通讯 而不同的设备网段又不一样 这个时候需要频繁的修改自己的ip地址 显得很不方便 windows系统下 操作系统为我们提供了一种可以添加多个ip地址的
  • 实时系统vxWorks - 多IP系统UDP通讯

    概述 在 实时系统vxWorks 增加删除ip 一文中 小编已经向大家展示了如何在网口上添加多个IP 接下来将为大家展示如何编写代码绑定各个IP进行UDP通讯 注意 开发环境 vxWorks6 9 4 workbench3 3 5 另外 小
  • 实时系统vxWorks - 配置多网口

    概述 本文提供在系统运行中对网口进行配置的方法 注意 开发环境 vxWorks6 9 4 workbench3 3 5 1 之前小编网上找相关资料时 有博主说使用新增网口不能与已存在的网口处于同一网段 不过经过小编的测试 两个网口ip可以处
  • 听说Zynq-uboot命令行

    概述 本文主要介绍在linux中uboot命令行的一些常见命令使用方法 注意 开发板 TLZ7x EasyEVM A3 另外 小编所有文章均是自己亲手编写验证 由于文件太多 小编就不在公众号后台一一回复列举了 若需要小编的工程代码 请关注公
  • 听说Zynq-通过tftp加载镜像

    概述 本文主要介绍在linux中如果通过tftp加载启动镜像 以及将启动方式固话到uboot程序中 注意 开发板 TLZ7x EasyEVM A3 另外 小编所有文章均是自己亲手编写验证 由于文件太多 小编就不在公众号后台一一回复列举了 若
  • 浅谈linux - virtual box设置共享文件夹

    概述 本文用于展示在virtual box虚拟机创建共享文件夹 xff0c 实现windows和ubuntu文件互传 注意 开发环境 xff1a VirtualBox 6 1 ubuntu 16 04 另外 xff0c 小编所有文章均是自己
  • 浅谈linux - 搭建nfs服务

    概述 本文用于展示如何搭建nfs服务 xff0c 实现开发机和目标机之间的文件共享 注意 开发环境 xff1a ubuntu 16 04 xff0c linux 4 9 xff0c 开发板 xff1a TLZ7x EasyEVM A3 另外