百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程文章 > 正文

Linux系统搭建NFS网络文件系统,实现文件共享

qiyuwang 2024-10-20 10:47 14 浏览 0 评论

1.NFS概念

NFS是Network File System(网络文件系统)。

NFS客户端一般是应用服务器(比如web,负载均衡等),可以通过挂载的方式将NFS服务器端共享的目录挂载到NFS客户端本地的目录下 。

  • 主要功能:通过网络让不同的服务器之间可以共享文件或者目录。
  • 优点:1.节省本地存储空间,将常用的数据存放在一台NFS服务器上且可以通过网络访问,那么本地终端将可以减少自身存储空间的使用;2.用户不需要在网络中的每个机器上都建有Home目录,Home目录可以放在NFS服务器上且可以在网络上被访问使用。3.一些存储设备如软驱、CDROM和Zip(一种高储存密度的磁盘驱动器与磁盘)等都可以在网络上被别的机器使用。这可以减少整个网络上可移动介质设备的数量。

2.NFS工作原理

  • 启动RPC服务
  • 启动NFS服务
  • 客户端请求NFS服务
  • RPC把端口和IP地址给客户端

3.NFS协议

NFS在文件传送过程中依赖RPC(远程过程调用)协议。
NFS本身是没有提供信息传送的协议和功能的,但是能够
用过网络进行图片,视频,附件等分享功能。
只要用到NFS的地方都需要启动RPC服务,不论是NFS的服务端还是客户端

4.NFS默认端口:TCP 2049

二、实际操作

NFS服务端:192.168.1.2
NFS客户端:192.168.1.3

1.安装NFS服务器

[root@c74 ~]# yum install rpcbind nfs-utils -y

2.关闭防火墙和selinux

[root@c74 ~]# systenctl stop firewalld 
[root@c74 ~]# setenforce 0

3.配置NFS服务端

  1. 创建NFS共享目录
    [root@c74 ~]# mkdir /data1
    [root@c74 ~]# chmod -Rf 777 /data1
  1. NFS服务的主配置文件
    [root@c74 ~]# vi /etc/exports
    /data1 192.168.1.2(rw,sync,root_squash)  #IP可以是网段也可以是客户端的IP地址。
                
 #exports配置常用参数 
 #ro 只读 
 #rw 读写 
 #root_squash    当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户
 #no_root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员 
 #all_squash 无论NFS客户端使用什么账户访问,均映射为NFS服务器的匿名用户 
 #sync   同时将数据写入到内存与硬盘中,保证不丢失数据 
 #async  优先将数据保存到内存,然后再写入硬盘;这样效率更高,但可能会丢失数据

4.启动NFS服务

     [root@c74 ~]# systemctl restart rpcbind && systemctl enable rpcbind 
     [root@c74 ~]# systemctl start nfs-server && systemctl enable nfs-server

5.客户端连接服务端

     showmount,主要使用命令来查询共享信息。此处测试好在其它机器测试    
     [root@c66 ~]# showmount -e 192.168.1.3 
     [root@c66 ~]# mount -t nfs 192.168.1.3:/data1 /mnt 
     #如果想要开机挂载,请编辑 /etc/fstab文件

6.测试

  1. 服务端测试
    在服务端的共享文件里新建目录、文件,在客户端查看是否同步
    1)在服务端共享目录里新建目录11和文件22.txt
    2)在客户端查看
  2. 客户端测试
    在客户端的服务端的挂载目录里新建目录、文件,在服务端查看是否同步
    1)在客户端挂载目录里新建目录和文件
    2)在服务端查看
    注意:在服务端创建目录和文件与在客户端创建目录和文件它们的属主、属组不同

相关推荐

基于Docker方式安装与部署Camunda流程引擎

1Camunda简介官网:https://docs.camunda.org/manual/7.19/installation/docker/Camunda是一个轻量级、开源且高度灵活的工作流和决策自...

宝塔Linux面板如何部署Java项目?(宝塔面板 linux)

通过宝塔面板部署Java还是很方便的,至少不需要自己输入tomcat之类的安装命令了。在部署java项目前,我还是先说下目前的系统环境,如果和我的系统环境不一样,导致部署不成功,那你可能需要去找其他资...

浪潮服务器如何用IPMI安装Linux系统

【注意事项】此处以浪潮服务器为例进行演示所需使用的软件:Chrome浏览器个人PC中需要预先安装java,推荐使用jdk-8u181-windows-x64.exe【操作步骤】1、在服务器的BIOS中...

Centos7环境Hadoop3集群搭建(hadoop集群环境搭建实验报告)

由于项目需要存储历史业务数据,经过评估数据量会达到100亿以上,在原有mongodb集群和ES集群基础上,需要搭建Hbase集群进行调研,所以首先总结一下Hadoop集群的搭建过程。一、三个节点的集群...

Hadoop高可用集群搭建及API调用(hadoop高可用原理)

NameNodeHA背景在Hadoop1中NameNode存在一个单点故障问题,如果NameNode所在的机器发生故障,整个集群就将不可用(Hadoop1中虽然有个SecorndaryNameNo...

使用Wordpress搭建一个属于自己的网站

现在开源的博客很多,但是考虑到wordpress对网站的seo做的很好,插件也多。并且全世界流量排名前1000万的网站有33.4%是用Wordpress搭建的!所以尝试用Wordpress搭建一个网站...

Centos 安装 Jenkins(centos 安装ssh)

1、Java安装查看系统是否已安装Javayumlistinstalled|grepjava...

Java教程:gitlab-使用入门(java中的git)

1导读本教程主要讲解了GitLab在项目的环境搭建和基本的使用,可以帮助大家在企业中能够自主搭建GitLab服务,并且可以GitLab中的组、权限、项目自主操作...

Dockerfile部署Java项目(docker部署java应用)

1、概述本文主要会简单介绍什么是Docker,什么是Dockerfile,如何安装Docker,Dockerfile如何编写,如何通过Dockerfile安装jar包并外置yaml文件以及如何通过do...

如何在Eclipse中搭建Zabbix源码的调试和开发环境

Zabbix是一款非常优秀的企业级软件,被设计用于对数万台服务器、虚拟机和网络设备的数百万个监控项进行实时监控。Zabbix是开放源码和免费的,这就意味着当出现bug时,我们可以很方便地通过调试源码来...

Java路径-02-Java环境配置(java环境搭建及配置教程)

1Window环境配置1.1下载...

35.Centos中安装python和web.py框架

文章目录前言1.Centos7python:2.Centos8python:3.进行下载web.py框架然后应用:4.安装好之后进行验证:5.总结:前言...

《我的世界》服务器搭建(我的世界服务器如何搭建)

1.CentOS7环境1.1更改YUM源#下载YUM源文件curl-o/etc/yum.repos.d/CentOS-Base.repohttps://mirrors.aliyun.com...

CentOS 7 升级 GCC 版本(centos7.4升级7.5)

1.GCC工具介绍GCC编译器:...

Linux安装Nginx详细教程(linux安装配置nginx)

环境准备1.因为Nginx依赖于gcc的编译环境,所以,需要安装编译环境来使Nginx能够编译起来。命令:yuminstallgcc-c++显示完毕,表示安装完成:2.Nginx的http模块需要...

取消回复欢迎 发表评论: