文章目录

  • NFS分布式文件系统
  • NFS服务器搭建
    • ubuntu中
    • centos中
  • NFS服务器配置及使用
    • NFS服务端配置:
      • export文件配置:
    • NFS客户端配置:
    • window系统中配置NFS客户端

NFS分布式文件系统

NFS就是Network File System的缩写,是一个分布式文件系统。在一个PC中使用NFS工具搭建一个NFS服务器,然后其他PC安装NFS客户端工具,将网络中的NFS服务器共享的网络磁盘挂载到本地端的文件系统中。在NFS客户端就可以像操作自己本地的磁盘一样,操作这个共享的网络磁盘,在使用上相当便利。

这个共享的网络磁盘中的所有文件都是存储在NFS服务器端,NFS客户端不会存储备份。

下图中,Z盘挂载了NFS服务器分享出来的网络磁盘,操作Z盘就像操作C盘,D盘等本地的磁盘一样
NFS底层使用呢了RPC远程调用协议,这里不再做过多介绍,只讲一下如何配置和使用NFS服务器

NFS服务器搭建

搭建使用NFS服务器前必须要安装一些基础的工具,centos和ubuntu两个系统中的操作不同

ubuntu中

首先安装基础工具包,客户端和服务器端安装不同的工具包

sudo apt-get install nfs-kernel-server  # 安装 NFS服务器端
sudo apt-get install nfs-common         # 安装 NFS客户端

启动NFS服务

sudo /etc/init.d/nfs-kernel-server start

centos中

首先安装基础工具包

sudo yum install -y nfs-utils
sudo yum install -y rpcbind

启动NFS服务

systemctl start rpcbind
systemctl enable rpcbind
systemctl start nfs-server nfs-secure-server
systemctl enable nfs-server nfs-secure-server

NFS服务器配置及使用

NFS服务端配置:

修改NFS的配置文件/etc/exports,设置共享目录,centos系统和ubuntu系统中都是修改这个文件。

export文件配置:

下面两行是在/etc/exports文件中配置的两个共享目录,192.168.245.0/24的含义是ip地址的前24位必须是192.168.245。

/public 192.168.245.0/24(ro)的含义是,将NFS服务器上的/public目录共享给ip地址前24位是192.168.245的NFS客户端,这个目录对NFS客户端来说是只读的(ro)

如果想配置一个所有人都可以挂载的目录,那么可以使用通配符“*”

/public 192.168.245.0/24(ro)
/protected 192.168.245.0/24(rw)
/share *(rw)
参数 作用
ro 只读
rw 读写
root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户
no_root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员
all_squash 无论NFS客户端使用什么账户访问,均映射为NFS服务器的匿名用户
sync 同时将数据写入到内存与硬盘中,保证不丢失数据
async 优先将数据保存到内存,然后再写入硬盘;这样效率更高,但可能会丢失数据

/etc/exports文件配置完成后,使用命令使其生效:

ubuntu系统下使用命令:

/etc/init.d/nfs-kernel-server restart

centos系统下使用命令:

systemctl reload nfs

NFS客户端配置:

在NFS服务端配置完之后,需要在NFS客户端做一些配置来使用NFS服务端共享出来的文件存储空间。
第一步要查看一下NFS服务端共享出来的文件夹是否可用,使用命令:

showmount -e NFS服务器的ip地址

showmount命令参数:

参数 作用
-e 显示NFS服务器的共享列表
-a 显示本机挂载的文件资源的情况NFS资源的情况
-v 显示版本号

如果出现上图所示信息,表示NFS服务器可以正常使用。上图左侧是NFS服务器共享出来的目录,右侧是显示哪些ip的机器可以使用这个共享的目录。例如/home/k8spv就只能由ip的前16位是10.108的机器进行使用。

确认共享目录可以进行挂载操作后,可以选择使用命令挂载或者修改配置文件,使用命令的方式,机器重启之后配置就会失效,所以一般通过修改配置文件的方式来挂载共享目录。修改/etc/fstab

vim /etc/fstab

如果需要将NFS服务器共享的/home/k8spv目录挂载到NFS客户端的/home/kuber目录下,则添加如下的配置

10.108.224.173:/home/kuber  /home/kuber      nfs    defaults 0 0

这是配置一个可读可写的文件目录,如果配置只读文件目录,则最后一个值要设为1

10.108.224.173:/home/ro  /home/protect      nfs    defaults 0 1

使用命令使文件/etc/fstab生效:

mount -a

window系统中配置NFS客户端

准备工作:

Windows系统下使用NFS经常会出现权限问题,所以使用前最好修改一下注册表。打开注册表:regedit, 在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default 下新建两个OWORD(64)位值,添加值AnonymousGid,值默认为0,AnonymousUid,值默认为0。

配置NFS目录:

第一步:在控制面板–>添加程序和功能–>添加NFS组件。

第二步:在此电脑,映射驱动器中添加nfs地址,和要共享的文件夹。

使用ubuntu18搭建nfs分布式文件系统相关推荐

  1. 如何搭建GFS分布式文件系统

    如何搭建GFS分布式文件系统 什么是文件系统 文件系统的组成部分 文件系统作用 文件系统的使用 分布式文件系统GFS GFS简介 GFS组成 GFS的特点 GFS专业术语 GFS模块化和堆栈式架构 G ...

  2. Linux - 搭建FastDFS分布式文件系统

    1. FastDFS简介 说明:FastDFS简介部分的理论知识全部来自于博主bojiangzhou的 <用FastDFS一步步搭建文件管理系统>,在此感谢博主的无私分享.当然最最要感谢的 ...

  3. 基于滴滴云搭建 Lustre 分布式文件系统

    1. Lustre简介 Lustre 是一个具有高可用.高性能.可扩展的分布式文件系统.主要由 Manage Server.Meta Data Server 和 Data Server 组成.详细介绍 ...

  4. 64位Ubuntu kylin 16.04搭建nfs网络文件系统

    一 安装配置nfs服务 1.新建目录 mkdir /home/ning/rootfs 2.安装nfs服务 ning@ENVY:/$ sudo apt install nfs-kernel-server ...

  5. 基于docker搭建cephfs分布式文件

    目的 在一台机器上, 利用多块硬盘, 搭建一个cephfs文件系统. 具体来说就是1个mon, 1个mds, 1个mgr, 3个osd 注意 a. 使用vmware会很方便 b. 安装过程中会遇到很多 ...

  6. GFS(GlusterFS)分布式文件系统

    GFS(GlusterFS)分布式文件系统 一.GlusterFS概述 1.GliusterFS特点 2.GFS组成 3.GFS文件系统组成 4.GFS术语 5.GFS架构 6.GlusterFS工作 ...

  7. 详细讲解MFS分布式文件系统搭建(内含源码包)

    初步了解分布式原理: 分布式文件系统(Distributed File Systemm)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连.简单来说,就是把一些分散 ...

  8. NFS(网络文件系统)简介及搭建

    NFS简介及搭建 网络文件系统 定义 演化 特点 工作原理 网络文件系统架构 网络文件系统协议 网络文件系统中的创新 网络文件系统的替代物 部署NFS 实验环境 安装nfs.rpcbind服务 在no ...

  9. EasyDSS分布式文件系统(CFS)的搭建过程分享

    我们接触到的部分EasyDSS项目中需要频繁的对视频做合成处理,但是使用单一服务器会导致CPU占用率一直处于高负载的状态,因此需要采用分布式系统来减小web服务器的CPU负载,需要快速的同步录像视频文 ...

  10. Spark环境搭建(一)-----------HDFS分布式文件系统搭建

    下载的压缩文件放在~/software/    解压安装在~/app/ 一:分布式文件系统搭建HDFS 1,下载Hadoop HDFS环境搭建    使用版本:hadoop-2.6.0-cdh5.7. ...

最新文章

  1. spring+mybatis事务的readonly属性无效
  2. 数据结构的映像方法(数据元素的机内表示)
  3. php 检测网络,PHP+Ajax 检测网络是否正常实例详解
  4. C#验证 中国 身份证 代码
  5. mysql空间释放_linux 空间释放,mysql数据库空间释放
  6. 无法获取 vmci 驱动程序版本: 句柄无效
  7. springbboot加密打包_Spring Boot 配置 Security 密码加密
  8. jQuery框架学习第六天:jQuery中的Ajax应用
  9. python初学者必背函数_新手必看python vlog 1: 函数
  10. VB6 中 善用 ByRef 提升速度
  11. LINUX/CentOS防CC***脚本
  12. 同步异步阻塞非阻塞杂记 1
  13. hrbust/哈理工oj 2220 强迫症【思维】
  14. 达芬奇密码--buuctf密码学
  15. ctime(ctime头文件的作用)
  16. C语言中的puts()、putchar()、printf()
  17. 网易视频云:HBase BlockCache系列-性能对比测试报告
  18. java关于文件的操作
  19. 重庆大学计算机学院王臣,计算机学院召开人才引进及人才聘期考核工作会
  20. 如何打通AD、企业微信、飞书、钉钉等社交账号及内外网应用身份?

热门文章

  1. splice方法_JavaScript数组_数组方法【一】(二十六)
  2. html制作翻牌游戏,基于javascript实现句子翻牌网页版小游戏
  3. idesk卸载教程_iDesk助手使用帮助
  4. FFmpeg学习(0)——使用ffmpeg视频切片并加密
  5. 设计模式(9)——模板方法模式
  6. Hector代码笔记
  7. C++对结构体按照某一项元素进行排序
  8. c++类详解:访问权限,构造函数,拷贝构造函数,析构函数
  9. LeetCode之反转字符串中的单词
  10. HTML和小程序的 12 种 flex 布局