NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。RPC采用了XDR的支持。XDR是一种与机器无关的数据描述编码的协议,他以独立与任意机器体系结构的格式对网上传送的数据进行编码和解码,支持在异构系统之间数据的传送。

1、设置主机服务器

(1)安装NFS服务器

  root@ubuntu:~# apt-get update

  root@ubuntu:~# apt install nfs-kernel-server

(2)创建导出目录

  与客户端系统共享的目录称为导出目录。

  可以根据自己的选择来确定导出目录的路径及命名。

  root@ubuntu:~# mkdir -p /home/rabbit/NFS_SHARE

  删除文件夹的限制权限

  root@ubuntu:~# chown nobody:nogroup /home/rabbit/NFS_SHARE

  root@ubuntu:~# chmod 777 /home/rabbit/NFS_SHARE

  现在,客户端系统上的所有组的所有用户都可以访问导出目录。

(3)通过NFS导出文件为客户端分配服务器访问权限

  创建出导出目录后,需要为客户端提供访问主机服务器的权限。

  此权限通过位于系统的 /etc/exports 文件定义。

  root@ubuntu:~# vim /etc/exports

  • 单个客户端
  • /home/rabbit/NFS_SHARE clientIP(rw,sync,no_subtree_check)

  • 多个客户端(按IP)
  • /home/rabbit/NFS_SHARE clientIP_1(rw,sync,no_subtree_check)

    /home/rabbit/NFS_SHARE clientIP_2(rw,sync,no_subtree_check)
  • 多个客户端(整个子网)
  • /home/rabbit/NFS_SHARE 192.168.8.0/24(rw,sync,no_subtree_check)

    rw: 读写操作
    sync:
    no_subtree_check: 阻止子树检查

(4)导出共享目录

  在主机系统中完成上述配置后,可以通过以下命令将共享目录导出:

  root@ubuntu:~# exportfs -a

  为了使所有配置生效,重启NFS服务器:

  root@ubuntu:~# systemctl restart nfs-kernel-server

(5)为客户端打开防火墙

  ufw allow from [clientIP or clientSubnetIP] to any port nfs

  使用以下命令,访问客户端计算机的整个子网:

  root@ubuntu:~# ufw allow from 192.168.8.0/24 to any port nfs

  root@ubuntu:~# ufw status

2、设置客户端计算机

(1)安装 NFS Common

  更新系统的存储库索引和Internet的索引:

  root@ubuntu:~# apt-get update

  root@ubuntu:~# apt-get install nfs-common

(2)为NFS主机的共享文件夹创建安装点

  root@ubuntu:~# mkdir -p /home/rabbit/NFS_CLIENT

(3)在客户机上挂载共享目录

  mount serverIP:/shareFolder_server /home/rabbit/mountFolder_client

  root@ubuntu:~# mount 192.168.8.245:/home/rabbit/NFS_SHARE /home/rabbit/NFS_CLIENT

(4)测试连接

  在NFS主机服务器的导出目录中创建或保存文件。

  现在,打开客户端计算机上的 NFS_CLIENT 文件夹,可以在此文件夹中查看共享和访问的同一文件。

3、总结

  在 Ubuntu 系统上设置 NFS 服务器 - 客户端 环境已完成。

  学习了如何配置NFS服务器和客户端,以便可以共享文件夹,然后在没有任何防火墙或权限相关鼓掌的情况下顺利访问文件夹。

  现在,可以使用 NFS 协议轻松地将内容从一个 Ubuntu 系统共享到另一个系统。

Ubuntu 18.04 LTS上安装NFS服务器和客户端的更多相关文章

  1. 10分钟学会在Ubuntu 18.04 LTS上安装NFS服务器和客户端

    https://www.linuxidc.com/Linux/2018-11/155331.htm

  2. 如何在Ubuntu 18.04 LTS上安装和配置MongoDB

    MongoDB是一款非关系型数据库,提供高性能,高可用性和自动扩展企业数据库. MongoDB是一个非关系型数据库,因此您不能使用SQL(结构化查询语言)插入和检索数据,也不会将数据存储在MySQL或 ...

  3. 在Ubuntu 18.04系统上安装Systemback的方法(抄)

    在Ubuntu 18.04系统上安装Systemback的方法 2018-12-26 21:39:05作者:林莉稿源:云网牛站 本文介绍如何在Ubuntu 18.04或者Ubuntu 18.10系统上 ...

  4. Ubuntu 18.04 Linux上安装Etherpad,基于Web的实时协作编辑器

    介绍 Etherpad是一个开源的,基于Web的实时协作编辑器(http://www.0834nanke.com) 它允许多个人使用他们的Web浏览器同时编辑文档. 它还提供了一些很酷的功能,如富文本 ...

  5. Ubuntu 18.04 Server上安装LAMP

    由于要进行渗透测试,所以这两天就在搭LAMP的环境(过程及其痛苦) 这里分享一些我遇到的问题. 首先介绍一下我的使用环境  VM虚拟机,ubuntu 与主机NAT连接 由于之前一直使用的是kali(默 ...

  6. unbuntu 18.04 LTS 版 安装Samba服务器

      首先需要注意的是,此时服务器的版本是乌班图18.04 LTS Server ,安装配置Samba服务器 . 首先来对当前的软件进行更新. 1 sudo apt-get upgrade 2 sudo ...

  7. 在Ubuntu 18.04系统上安装Pydio Cells详细图文教程

    前言   基于云的协作工具Pydio cell提供了一系列灵活的特性,包括应用内消息传递.文件共享和版本控制.下面逐步介绍安装过程. Pydio cell最初是一个简单的基于云的文件共享系统,但经过升 ...

  8. 在 Ubuntu 16.04 LTS 上安装 Python 3.6.0

    原文连接:https://segmentfault.com/a/1190000007912666 最近 Python 3 发布了新版本 Python 3.6.0,好像又加入了不少黑魔法!- 由于暂时不 ...

  9. 在 Ubuntu 18.04 /centos7上安装 Python 3.7

    扩展源安装 sudo apt update sudo apt install software-properties-common sudo add-apt-repository ppa:deadsn ...

随机推荐

  1. JC的小苹果 逆矩阵

    这题主要有两种做法:1种是用逆矩阵,转移时无须高斯消元.2是将常数项回代.这里主要介绍第一种. 首先题里少个条件:点权非负.设f [ i ][ j ]表示hp为i时,到达j点的期望次数. 那么若点权为 ...

  2. Asp.net Core 系列之--1.事件驱动初探:简单事件总线实现(SimpleEventBus)

    ChuanGoing 2019-08-06  前言 开篇之前,简单说明下随笔原因.在园子里游荡了好久,期间也起过要写一些关于.NET的随笔,因各种原因未能付诸实现. 前段时间拜读daxnet的系列文章 ...

  3. Python基本数据结构之字典

    定义: {key1:value1,key2:value2} 1.键与值用冒号“:”分开: 2.项与项用逗号“,”分开: 示例: dic4={ 'name': 'xiaohu', 'age': 20, ...

  4. [转载]2.2 UiPath条件判断活动Flow Decision的介绍和使用

    一.Flow Decision介绍 FlowDecision节点是一个条件节点,它根据指定条件是否成立来控制流程的两个分支. 当条件为True时,流程执行一个分支 当条件为False时,流程执行另外一 ...

  5. Linux | 性能分析系列学习 (1)

    学习重点: 把观察到的性能问题跟系统原理关联起来,特别是把系统从应用程序.库函数.系统调用.再到内核和硬件等不同的层级贯穿起来. 主要是四个方面:CPU 性能.磁盘 I/O 性能.内存性能以及网络性能 ...

  6. centos6的mysql安装

    1.安装mysql服务端 yum install mysql-server        yum install mysql-devel 2.下载mysql的压缩包 wget http://dev.m ...

  7. 分享使用PHP开发留言板

    首先我不是一名开发人员,只是一名小小的运维工程师,PHP是我自己喜欢的一门开发语言,所以我偶尔也会敲一些代码,写一些案例.今天我给大家分享的是使用PHP开发的留言板,留言板功能不全所以请大家见谅,也不 ...

  8. 过滤条件的时候用between和<>的区别

    无论是sqlsever还是oracle都支持between函数, 2个函数的基本语法是 WHERE A BETWEEN 1 AND 2/ WHERE A >=1 AND A <=2 ,be ...

  9. 前端小白在asp.net core mvc中使用ECharts

    对于在浏览器中绘制图形图表,目前有较多的js类库可以使用,如:ChartJS,Flot,canvasjs等,但是今天介绍的主角为国产图表库,并在apache孵化,就是大名鼎鼎的echarts. 前方高 ...

  10. python3.7.1安装Scrapy爬虫框架

    python3.7.1安装Scrapy爬虫框架 环境:win7(64位), Python3.7.1(64位) 一.安装pyhthon 详见Python环境搭建:http://www.runoob.co ...