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. 介绍几个常用的makefile函数

    addprefix. $(addprefix <prefix>, <name1 name2 ...>) 功能:把<prefix>加到name序列中的每一个元素前面. ...

  2. RobotFramework自动化测试框架-Selenium Web自动化(二)关于在RobotFramework中如何使用Selenium很全的总结(上)

    好久没有继续分享关于自动化测试相关的东西了,自动化在现今的测试领域已经越来越重要了,大部分公司在测试岗位招聘中都需要会相关的自动化测试知识.而 RobotFramework自动化测试框架 是自动化测试 ...

  3. Linux下安装nexus

    下载地址:https://help.sonatype.com/repomanager3/download tar xf nexus-linux-3.19.1-01.tar.gz cd nexus-li ...

  4. unittest使用总结

    unittest简介 Unittest是python内置的一个单元测试框架,主要用于自动化测试用例的开发与执行 简单的使用如下 import unittest class TestStringMeth ...

  5. 你知道如何优化Join语句吗?

    join语句的两种算法,分别是:NLJ和BNL 测试数据: create table t1(id int primary key, a int, b int, index(a)); create ta ...

  6. SSM整合相关试题

    1.下列关于Spring自动装配的说法中,错误的是() A 在Spring配置文件中,可以通过<bean>元素的autowire属性指定自动装配方式 B autowire属性值可以设置为n ...

  7. 项目——基于httpd镜像演示Dockerfile所有的指令

    基于httpd镜像演示Dockerfile所有的指令: 第一步:创建Dockerfile工作目录 [root@localhost harbor]# mkdir /test [root@localhos ...

  8. Conda/Miniconda/Anaconda 常用命令整理及介绍

    作者:HELO 出处:http://www.cnblogs.com/HELO-K 欢迎转载, 转载时请保留此声明, 谢谢! 在这里整理一份全一点的 Conda 常用命令, 方便大家日常使用时参考, 一 ...

  9. [LC]219题 Contains Duplicate II (存在重复元素 II )

    ①英文题目: Given an array of integers and an integer k, find out whether there are two distinct indices ...

  10. Mssql 查询某记录前后N条

    Sqlserver 查询指定记录前后N条,包括当前数据 条件 [ID] 查询 [N]条 select * from [Table] where ID in (select top ([N]+1) ID ...