Linux安装配置NFS服务器

2023-10-26

NFS简介

NFS(network file system)即网络文件系统,能使使用者访问网络上别处的文件就像在使用自己的计算机一样。我们可以在 Ubuntu 上制作开发板的根文件系统,然后使用 NFS 来加载根文件系统到开发板的DDR 上。
NFS作用:开发板可直接访问ubuntu虚拟机下的文件,调试程序时就减少程序下载的环节,直接运行ubuntu下的生成bin文件,非常方便,nice!,very nice!!!。

安装NFS服务

在ubuntu终端执行以下指令:

  • 安装NFS服务:sudo apt-get install nfs-kernel-server

  • 新建NFS共享目录:sudo mkdir /home/ boyee/nfs

  • 设置NFS共享目录权限:sudo chmod 777 /home/boyee/nfs/

  • 打开NFS配置文件:sudo vim /etc/exports

  • 在配置文件最后添加内容:/home/boyee/nfs *(rw,sync,no_root_squash)
    /home/ boyee /nfs 表示 NFS 共享的目录
    *表示允许所有的网络段访问
    rw 表示访问者具有可读写权限
    sync 表示将缓存写入设备中,可以说是同步缓存的意思
    no_root_squash 表示访问者具有 root 权限。
    修改完如下图所示。
    在这里插入图片描述

  • 重启NFS服务器:sudo /etc/init.d/nfs-kernel-server restart

  • 查看 NFS 共享目录:showmount -e

网络环境配置

开发板通过NFS挂载到ubuntu下,需保证ubuntu、windows、开发板之间可以互ping。
3个环境的IP需要配置到同一网段,规划如下:
Ubuntu固定IP:192.168.1.180
windows固定IP:192.188.1.170
开发板固定IP:192.168.1.160
(一) Ubuntu环境设置
vmware虚拟机设置为桥接模式,在ubuntu下图形化界面上配置网络IP为手动。如下图所示:
在这里插入图片描述
在这里插入图片描述

(二) windows环境设置
电脑的IP设置如下:
在这里插入图片描述

(三) 开发板环境设置
开发板终端输入指令:sudo ifconfig eth0 192.168.1.160设置IP。
设置完成过后,开发板则可ping通ubuntu。

开发板挂载NFS

  • 在NFS服务端共享目录下新建一个文件:echo “test”>test.txt
  • 开发板创建get目录,用于挂载NFS所共享的目录:mkdir get
  • 挂载NFS:mount -t nfs -o nolock,nfsvers=3 192.168.1.180:/home/boyee/nfs get/
  • 查看挂载的NFS目录:df –h
    在这里插入图片描述
  • 卸载NFS:umount /get

常见问题

mount时出现如下错误:

mount: mounting 192.168.0.110:/home/boyee/nfs on get/ failed: Permission denied

请检查server的IP和路径是否正确!

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

Linux安装配置NFS服务器 的相关文章

  • 确定 TCP Listen() 队列中当前积压的连接数

    有没有办法找出currentLinux 上 TCP 套接字上等待 Accept 的连接尝试次数 我想我可以在每个事件循环上点击 EWOULDBLOCK 之前计算成功的 Accept 数量 但我使用的是隐藏这些细节的高级库 Python Tw
  • 如何告诉 mex 链接到 /usr/lib 中的 libstdc++.so.6 而不是 MATLAB 目录中的 libstdc++.so.6?

    现在 MATLAB 2012a 中的 mex 仅正式支持 gcc 4 4 6 但我想使用 gcc 4 7 风险自负 现在如果我直接用 mex 编译一些东西 它会抱怨 usr lib gcc i686 linux gnu 4 7 cc1plu
  • 如何通过ssh获取远程命令的退出代码

    我正在通过 ssh 从远程计算机运行脚本 ssh some cmd my script 现在 我想在本地计算机上存储 shell 脚本的退出状态 我该怎么做 假设没有任何问题ssh其本身 其退出状态是在远程主机上执行的最后一个命令的退出状态
  • 如何在Linux上用C/C++编写Web服务器[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在考虑在 Linux 平台上开发一个小型 阅读 初级 Web 服务器 但我不知道从哪里开始 我希望它能够做的是 监听特定端口 接受
  • 如何将一个文本文件拆分为多个 *.txt 文件?

    我有一个文本文件file txt 12 MB 包含 something1 something2 something3 something4 有没有办法分开file txt分成 12 个 txt 文件 比方说file2 txt file3 t
  • 在 scapy 中通过物理环回发送数据包

    我最近发现了 Scapy 它看起来很棒 我正在尝试查看 NIC 上物理环回模块 存根上的简单流量 但是 Scapy sniff 没有给出任何结果 我正在做的发送数据包是 payload data 10 snf sniff filter ic
  • bash 将输出重定向到文件,但结果不完整

    重定向命令输出的问题已经被问过很多次了 但是我有一个奇怪的行为 我使用的是 bash shell debian 版本 4 3 30 1 release 并尝试将输出重定向到文件 但并非所有内容都记录在文件中 我尝试运行的 bin 文件是 l
  • 为什么 OS X 和 Linux 之间的 UTF-8 文本排序顺序不同?

    我有一个包含 UTF 8 编码文本行的文本文件 mac os x cat unsorted txt foo foo 津 如果它有助于重现问题 这里是文件中确切字节的校验和和转储 以及如何自己生成文件 在 Linux 上 使用base64 d
  • Docker忽略limits.conf(试图解决“打开文件太多”错误)

    我正在运行一个 Web 服务器 该服务器正在处理数千个并发 Web 套接字连接 为了实现这一点 在 Debian linux 我的基本镜像是 google debian wheezy 在 GCE 上运行 上 打开文件的默认数量设置为 100
  • 如何在 Linux 和 C 中使用文件作为互斥体?

    我有不同的进程同时访问 Linux 中的命名管道 并且我想让此访问互斥 我知道可以使用放置在共享内存区域中的互斥体来实现这一点 但作为一种家庭作业 我有一些限制 于是 我想到的是对文件使用锁定原语来实现互斥 我做了一些尝试 但无法使其发挥作
  • Crontab 每 5 分钟一次 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我如何告诉 crontab 每 5 分钟运行一次 但从每小时的第二分钟开始 换句话说 我想在以下时间执行我的脚本minute 5 2 例如 我的脚本应
  • Ubuntu Python shebang 线不工作

    无法让 shebang 线在 Ubuntu 中为 python 脚本工作 我每次只收到命令未找到错误 test py usr bin env python print Ran which python usr bin python 在 sh
  • 如何在 Linux 上通过 FTP 递归下载文件夹 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的答案
  • 为什么 fork 炸弹没有使 android 崩溃?

    这是最简单的叉子炸弹 我在许多 Linux 发行版上执行了它 但它们都崩溃了 但是当我在 android 终端中执行此操作时 即使授予后也没有效果超级用户权限 有什么解释为什么它没有使 Android 系统崩溃吗 一句话 ulimit Li
  • 如何才能将 TCP 连接返回到同一端口?

    机器是 RHEL 5 3 内核 2 6 18 有时我在 netstat 中注意到我的应用程序有连接 建立了 TCP 连接本地地址 and 国外地址是一样的 其他人也报告了同样的问题 症状与链接中描述的相同 客户端连接到本地运行的服务器的端口
  • grep 排除文件的数组参数

    我想从我的文件中排除一些文件grep命令 为此我使用参数 exclude excluded file ext 为了更容易阅读 我想使用包含排除文件的 bash 数组 EXCLUDED FILES excluded file ext 然后将
  • ssh 连接超时

    我无法在 git 中 ssh 到 github bitbucket 或 gitlab 我通常会收到以下错误消息 如何避免它 输出 ssh T email protected cdn cgi l email protection i ssh
  • vmsplice() 和 TCP

    在原来的vmsplice 执行 有人建议 http lwn net Articles 181169 如果您的用户态缓冲区是管道中可容纳的最大页面数的 2 倍 则缓冲区后半部分成功的 vmsplice 将保证内核使用缓冲区的前半部分完成 但事
  • 为什么 Linux 原始套接字的 RX 环大小限制为 4GB?

    背景 我试图mmap 我的原始套接字的 RX 环形缓冲区64 bitLinux 应用程序 我的环由 4096 个块组成 每个块大小为 1MB 总共 4GB 请注意 每个 1MB 块中可以有许多帧 如果您好奇 请参阅此文档了解背景信息 htt
  • Google 计算引擎 + Google 云存储 + NFS 虚拟机实例

    我想知道是否有人在设置方面尝试过并取得了成功Google 计算引擎 Google 云存储 NFS 虚拟机实例 我想到的场景是创建一个 Google Cloud Storage 实例并将其呈现给在 GCE 上运行的 NFS VM 实例 然后

随机推荐

  • Faceswap安装及使用(附图文介绍,简单易上手)

    Faceswap是github上面的一个项目 可以用于实现换脸 本章分为两节 分别介绍了faceswap具体的安装步骤以及使用方法 操作简单易上手 阅读完本文觉得有用的记得点个赞奥 谢谢大家 一 faceswap安装 1 打开faceswa
  • docker “no space left on device” 解决方案

    问题原因 出现此问题一般是 docker 根目录空间不足导致 解决方案 修改 Docker Root Dir 的值 指向一个更大空间的目录 1 查看docker磁盘使用情况 docker system df 2 查看docker挂载目录 d
  • 在ubantu下安装sublime

    1添加Sublime text 3软件包的软件源sudo add apt repository ppa webupd8team sublime text 32使用以下命令更新系统软件源sudo apt get update3使用以下命令安装
  • 五、Jvm调优

    Jvm调优调什么 这个疑问必须要有 当对一个技术或者系统调优的时候 我们一定要知道去调什么 这样有一个出发点 有一个目标 不能胡乱的调对吧 那么Jvm调优 主要调以下 1 减少Full GC 2 解决OOM 3 总的来说就是 使用较小的内存
  • 【JAVA与C#比较】语言选择

    JAVA与C 是当下使用率很高的高级语言中 最为相近的两门语言 在语言特性上非常相似 其差别比起其它流行的高级编程语言 例如c object c swift 也是最小的 在版本演进中 也存在相互借签 取长补短 java 语言是1996 年发
  • MyBatisPlus 分页查询

    首先要定义一个配置类 MybatisConfig 放在 config 类下 他的生效是通过拦截生效的 所以是要写拦截器的 这段拦截器的配置是固定的 CV 也可以 Configuration public class MybatisConfi
  • 卷积神经网络CNN原理——结合实例matlab实现

    程序及数据下载链接 https download csdn net download u010540396 10839936 程序及数据下载链接 https download csdn net download u010540396 108
  • INVALID_USER_SCODE问题的解决办法

    在用高德地图API的时候 还会遇见一个为题 就是总是提示 INVALID USER SCODE 当遇见这个问题的时候 一般的问题都是 注册key之后没有十分钟就开始使用这个key值了 另外一种情况就是注册的key值有问题 应该重新注册一个k
  • 使用STM32让示波器显示图片及播放动画思路的经验分享

    到手了一块某夕夕上一百三入手的STM32F407VE的开发板 一个字 香 把玩时发现了DAC这个看起来就很有意思的功能 软件输出了正弦波三角波之后突然想起了示波器的XY模式 刚好这个芯片有一个DAC两路通道 于是便折腾了一下用XY模式显示图
  • pgbackrest 简要使用说明

    测试环境 CentOS Linux release 7 4 1708 Core X64 PostgreSQL 10 1 Source pgbackrest pgbackrest release 1 27 tar gz 1 Test Simp
  • 5.1 activiti执行监听器ExecutionListener

    1 执行监听器的使用场景 1 1 人员动态分配 节点审批人员需要在流程运行过程中动态分配 当前任务节点完成的时候 指定需要指定下一个节点的处理人 比如 一个请假流程 a员工请假 需要指定下一步需要处理请假流程的领导 1 2 任务节点调取业务
  • MongoDB文档数据库

    一 引言 MongoDB 是一个开源的文档数据库 并是领先的NoSQL数据库 MongoDB 是由C 语言编写 通过本系列教程的讲解 使得学习者可以了解并掌握创建和部署高度可扩展和高性能的面向对象数据库MongoDB概念和理解 该系列教程是
  • 使用MATLAB做传热学分析及后处理——CFDTool 官方例程

    目录 前言 1 环境配置 2 问题背景 3 传热学例程 heat transfer3 最后 中国加油 武汉加油 前言 cfdtool 官网 https www cfdtool com 是一个MATLAB的扩展工具箱 既然看到这个CFD问题了
  • 消消乐游戏算法实现(三消乐)

    先上前端效果图 3消乐地图初始化的时候不允许有下面两种情况的发生 就是不允许3个 3个以上已经包含3个 所以只要判断3个就可以了 相同颜色的格子连在一起 下图是两种情况 细分分为6种情况 就是初始点为3个格子中的一个为一种情况 所以细分2
  • 多线程(五)线程的不安全原因及解决方案

    目录 一 什么是线程安全 二 线程不安全的原因 1 修改共享数据 2 原子性 3 内存可见性 4 指令重排序 三 解决线程安全方案 volatile 解决内存可见性和指令重排序 通过synchronized锁实现原子性操作 一 什么是线程安
  • SyntaxError: can‘t delete function call

    复习之前的python课件 抄代码的时候发现了一个问题 然后上网查 发现跟自己的情况好像不太符合 然后又看了一眼老师的课件 发现原来是自己无用了小括号的原因 因为那个counts是字典 它提取元素用的是方括号 不是小括号 改了之后就可以运行
  • 指针和数组笔试题解析【上篇】

    文章目录 1 前言 2 整型数组与指针 3 字符数组与指针 3 1 代码段 1 3 2 代码段 2 4 字符指针变量与数组 5 二维数组与指针 1 前言 数组 能够存放一组相同类型的元素 数组的大小取决于数组的元素个数和元素类型 指针 地址
  • linux安装enca

    简介 enca是Linux下的文件编码转换工具 1 查看是否安装enca 在命令行输入如下命令 若显示enca安装版本则表示已安装 enca version 2 安装enca 1 1 安装方式二 sudo命令安装 sudo apt get
  • Git极简入门

    Git极简入门 1 本地仓库 1 1工作流程 git本地操作的三个区域 Git Repository Git仓库 最终确定的文件保存到仓库 成为一个新的版本 并且对他人可见 暂存区 暂存已经修改的文件最后统一提交到git仓库中 工作区 Wo
  • Linux安装配置NFS服务器

    目录 NFS简介 安装NFS服务 网络环境配置 开发板挂载NFS 常见问题 NFS简介 NFS network file system 即网络文件系统 能使使用者访问网络上别处的文件就像在使用自己的计算机一样 我们可以在 Ubuntu 上制