NFS简介

概述

1、概述
网络文件系统,英文Network File System(NFS),是由SUN公司研制的UNIX表示层协议(presentation layer protocol),能使使用者访问网络上别处的文件就像在使用自己的计算机一样
在Centos 7系统中,需要安装nfs-utils、 rpcbind 软件包来提供NFS共享服务,前者用于NFS共享发布和访问,后者用于RPC支持。
手动加载NFS共享服务时,应该先启动rpcbind, 再启动nfs。
nfs端口:2049
RPC端口:111
2、特点
采用TCP/IP传输网络文件
安全性低
简单易操作
适合局域网环境

NFS工作原理

NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统中来看,那个远程主机的目录就好像是自己的一个磁盘分区一样,在使用上相当便利;

1、NFS工作流程

1.首先服务器端启动RPC服务,并开启111端口
2.服务器端启动NFS服务,并向RPC注册端口信息
3.客户端启动RPC(portmap服务),向服务端的RPC(portmap)服务请求服务端的NFS端口
4.服务端的RPC(portmap)服务反馈NFS端口信息给客户端。
5.客户端通过获取的NFS端口来建立和服务端的NFS连接并进行数据的传输。

windows搭建NFS

服务端

安装

执行 nfs1169.exe

安装完成后会生成一个快捷图标

修改配置文件

1、打开《NFS服务器》程序,按下图修

2、直接修改配置文件

在安装目录下有个export文件

![在这里插入图片描述](https://img-blog.csdnimg.cn/6064dd04be1c4bc8af38b7f1dfc813ab.png

重启 NFS Server

查看是否生效

NFS Server重启启动后,再点击NFS的重启服务的按钮,这时中间的配置会发生变化,出现下图所示的配置就说明nfs服务已经开启了,如果你想修改nfs的共享目录为其他什么目录的话,可以按照以上操作,在exports进行修改即可

客户端

安装客户端

打开控制面板 > 程序 > 启用或关闭 Windows 功能,找到NFS服务打开子目录勾选NFS客户端与管理工具。

NFS客户端:通过界面操作挂在NFS

管理工具:通过命令行挂在NFS

查看远端电脑nfs共享目录

showmount -e 远程电脑的IP

挂载nfs

mount     服务ip:共享路径 盘符名:
mount 192.168.2.158:/e/nfs z:

取消挂载

net use * /del  #取消所有
umount x: #x盘符名

解决挂载成功后没有权限

需要读写权限的需要修改注册表

通过修改注册表将windows访问NFS时的UID和GID改成0即可,步骤如下

1、在运行中输入regedit,打开注册表编辑器;

2、进入HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default条目;

3、选择新建----QWORD值,新建AnonymousUidAnonymousGid两个值,值为0

4、重启电脑 注册表才会生效;

右键查看属性发现读写权限跟隐藏文件都打开了

设置开机自动挂载

1、新建 .bat 文件

2、输入指令保存

# mount nfs服务端IP:/共享磁盘目录 盘符:
mount 192.168.2.158:/e/nfs Z:

3、把.bat文件放入 C:\Users\用户\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup 目录

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-onKrpsUt-1651732504637)(C:\Users\liuhg\AppData\Roaming\Typora\typora-user-images\image-20220424151219737.png)]

Linux搭建NFS

  • 下载安装

    yum -y install nfs-utils
    
  • 是否启动服务

    systemctl status nfs-server
    
  • 启动服务

    #按顺序启动rpcbind和nfs服务:
    systemctl start rpcbind
    systemctl enable nfs  ||  systemctl start nfs-server
    
  • 设置开机启动

    systemctl enable rpcbind
    systemctl enable nfs
    
  • 查看运行端口是否生效

    rpcinfo -p
    
  • NFS配置文件位置

    /etc/exports
    /etc/exports.d/*.exports
    
  • NFS共享配置文件格式

    /dir  主机1(opt1,opt2)  主机1(opt1,opt2)...主机格式(1) *表示同配所有客户端opt参数说明(默认选项:ro,sync,root_squash,no_all_squash)(1) ro 该主机对该共享目录有只读权限(2) rw 该主机对该共享目录有读写权限(3) root_squash 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户(4) no_root_squash 客户机用root访问该共享文件夹时,不映射root用户(5) all_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户anonuid和anongid只匿名用户映射为特定用户UID和GID,而非nfsnobody,可配合all_squash使用(6) anonuid 将客户机上的用户映射成指定的本地用户ID的用户(7) anongid 将客户机上的用户映射成属于指定的本地用户组ID(8) sync 资料同步写入到内存与硬盘中(9) async 资料会先暂存于内存中,而非直接写入硬盘(10) insecure 允许从这台机器过来的非授权访问 (11) subtree_check 如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)(12) no_subtree_check 和上面相对,不检查父目录权限(13) wdelay 如果多个用户要写入NFS目录,则归组写入(默认)(14) no_wdelay 如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置。(15) hide 在NFS共享目录中不共享其子目录(16) no_hide 共享NFS目录的子目录(17) secure NFS通过1024以下的安全TCP/IP端口发送(18) insecure NFS通过1024以上的端口发送
    
  • 创建共享目录

    mkdir /data/nfschmod 777 /data/NFS  #修改权限
    
  • 设置配置文件

    vim /etc/exports#配置文件示例
    /data/nfs  *(rw,no_root_squash)#重读配置文件无需重启服务
    exportfs -r
    
  • 查看服务端是否可连接

    showmount -e IP
    

showmount报错

1、rpc mount export: RPC: Timed out1)在**/etc/sysconfig/nfs**配置文件设置固定端口,将下列内容的注释去掉,如果没有则添加:vim /etc/sysconfig/nfsRQUOTAD_PORT=21500LOCKD_TCPPORT=21501LOCKD_UDPPORT=21502MOUNTD_PORT=21503STATD_PORT=21504STATD_OUTGOING_PORT=215052)添加完后,重启NFS服务systemctl restart nfs-server2、clnt_create: RPC: Port mapper failure - Timed out1)开放对应端口firewall-cmd --zone=public --add-port=21503/tcp --permanentfirewall-cmd --zone=public --add-port=111/udp --permanent2) 重载防火墙firewall-cmd --reload3)查看开放的端口firewall-cmd --zone=public --list-ports

mount报错

  • 网络错误 - 53
C:\Users\liuhg>mount 121.37.4.101:/data/nfs X:
网络错误 - 53有关详细信息,请键入“NET HELPMSG 53”。
  • 解决方法

​ 1)NFS服务器有一个”在非安全模式工作(允许更高的端口号)“的选项。Windows NFS客户端经常使用的是大的端口号。你可以在你的共享项设置中添加insecure选项

/data/nfs  *(rw,no_root_squash,insecure)
#重启 nfs
systemctl restart nfs-server

​ 2)以上还未解决,有可能是端口问题,开放nfs端口

windwos搭建NFS相关推荐

  1. Ubuntu下搭建NFS,并在开发板挂载

    ---恢复内容开始--- zai root huanjingxiachaozhuo $ su 一.搭建NFS 1.执行命令:sudo apt-get install nfs-kernel-server ...

  2. ubuntu下搭建nfs服务器

    1.1       搭建NFS服务器 NFS(Network FileSystem,网络文件系统)是由SUN公司发展,并于1984年推出的技术,用于在不同机器,不同操作系统之间通过网络互相分享各自的文 ...

  3. windows上搭建NFS服务器

    在进行嵌入式开发的时候,我们常用的做法是搭建NFS服务器,然后使把文件系统.调试程序放在NFS服务器上,这样可以方便调试,以前都是在linux里面开启NFS服务器,今天来说下window里的nfs服务 ...

  4. cif文件服务器搭建,在linux下搭建NFS服务器实现文件共享

    介绍在linux下搭建NFS服务器实现文件共享 目录一.关于NFS 二.搭建一台NFS服务器共享特定资源 三.调优 一.关于NFS 1.NFS是Network File System的简写,即网络文件 ...

  5. Linux 搭建NFS文件服务器实现文件共享

    我们接着玩Linux,O(∩_∩)O哈哈~ 1.什么是nfs NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP ...

  6. 麒麟服务器系统搭建nfs共享

    麒麟服务器系统搭建nfs共享 1. NFS介绍 NFS(Network File System,网络文件存储系统)最早是由 Sun 公司发展出来的,也是 FreeBSD 支持的文件系统中的一个,它允许 ...

  7. Centos7 搭建NFS文件共享存储

    Centos7 搭建NFS文件共享存储 NFS概述: 概述:NFS是一种基于TCP/IP传输的网络文件系统协议,最初由SUN公司开发.通过NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享 ...

  8. Win7系统下搭建NFS服务器

    Win7系统下搭建NFS服务器 采用Linux系统的服务器管理员都知道linux系统中能用NFS网络文件系统这套程序实现linux和unix系统之间的文件共享.那么能否在windows系统中采用NFS ...

  9. 利用阿里云搭建NFS服务器

    一.阿里云服务器(ECS) Linux是现在计算机运维的主流服务器,正好阿里云服务器也是目前非常主流的云服务器,我就简单地利用阿里云服务器和Linux配置的NFS服务器和客户端.功能非常简单,但这是第 ...

最新文章

  1. 堆、栈、方法区、静态代码块---Java
  2. hdu4869 费马小+快速幂
  3. ssl1056-金明的预算方案【dp之有依赖的背包】
  4. Geometric Shapes - POJ 3449(多边形相交)
  5. SpringCloud(二) 服务注册与发现Eureka
  6. ETL异构数据源Datax_工具部署_02
  7. 老男孩IT教育在线3期新学员司毅第一期作业
  8. raspberry pi3_Raspberry Pi 3,Linux Mint安全漏洞,针对Zika病毒的Google数据处理等
  9. 刘强东发新年信:过去一年我们异常艰难
  10. LeetCode #1349. 参加考试的最大学生数 - 学到了:压缩状态动态规划、位运算、reduce()、str().count()
  11. matlab按图像边缘抠图_不会抠图?保姆级抠图教程!手把手教你抠图(二)
  12. python网格搜索核函数_python机器学习——超参数网格搜索
  13. python属于哪种类型_下列哪种类型是Python的列表类型?
  14. 【UVA No. 12676】转换哈夫曼编码 Inverting Huffman
  15. ubuntu双系统修改启动菜单
  16. c语言windows文本框,windows编程 如何创建文本框?
  17. 二叉树的左视图-java
  18. 利用three建立一个3d园区
  19. ARM Linux 内核 panic 之cache 一致性 ——cci-400 cache一致互联
  20. 复旦Moss团队:Moss参数规模约是ChatGPT的1/10;贾跃亭再获FF执行官身份;PowerToys新版发布|极客头条

热门文章

  1. 2021年刷脸支付市场前景怎么样?
  2. 基于Python实现的语音特征提取声音信号处理
  3. linux initrd usb热插拔,linux技术之制作USB启动盘
  4. Linux系统中管理用户登录及登录信息的处理
  5. 知乎周源微信_每周源代码18-深度缩放(Seadragon)Silverlight 2 MultiScaleImage鼠标滚轮缩放和平移版...
  6. 天气图标(Weather Icon Showcase)
  7. ZEMAX | 如何使用光学制造全息图修正像差
  8. 1-0 三台PC集群的搭建(noHA)
  9. 使用SQL Server行级安全性的分片多租户数据库
  10. 潜在语义分析(LSA)详解