Linux-centos上如何配置管理NFS服务器?

Linux/centos上如何配置管理NFS服务器?

1 NFS基础了解

  • NFS(Network File System)即文件操作系统;
  • NFS允许网络中不同计算机相互之间共享资源。

1.1 NFS概述

  • 1980年由SUN发展出来的在UNIX&Linux系统间实现文件共享的一种方法;
  • 是一种文件系统协议,支持应用程序在客户端通过网络存取位于服务器磁盘中的数据;
  • NFS只提供网络文件共享,不提供数据传输功能;
  • NFS客户端和服务端需借助RPC(Remote Procedure Calls)实现数据传输;
  • NFS服务器目录被访问称为导出(export),客户机访问导出目录过程称为挂载(mount)或导入(import)。

2.1 NFS工作流程

第一步:访问NFS共享资源,NFS客户端发出询问请求,即客户端RPC服务通过网络向服务端RPC服务的111端口发出询问请求。

第二步: NFS服务端RPC找到对应已注册的NFSdaemon端口,通知客户端RPC;

第三步:NFS客户端获取端口,直接与NFSNFSdaemon联机存储数据。

第四步:NFS客户端吧数据存储成功后,告诉用户结果。

2 安装和启动NFS服务

  • 一般情况,系统均已安装NFS;

  • 先检查下是否安装NFS,以下两个是相关的依赖包

    rpm -qa | grep nfs-utils
    rpm -qa | grep rpcbind
    

    请添加图片描述

  • 如果系统没有安装NFS依赖包,则需要安装:

    yum clean all
    yum -y install nfs-utils rpcbind
    

2.2 启动NFS服务

  • NFS状态查看:

    systemctl status rpcbind.service
    systemctl status nfs.service
    

    在这里插入图片描述

  • 启动NFS

    systemctl start rpcbind.service
    systemctl start nfs.service
    

    在这里插入图片描述

  • 停止NFS服务:

    systemctl stop nfs.service

  • 重启NFS服务:

    systemctl restart nfs.service

  • 设置开机自启动NFS服务:

    systemctl enable rpcbind.service

    systemctl enable nfs.service

3 配置NFS服务器和客户端

3.1 配置NFS服务器

  • 配置文件在/etc/exports
  • 格式为:

    共享目录 [客户端1(参数)] [客户端2(参数)]

    共享目录:NFS服务器需要共享的实际路径(绝对路径);  
    客户端:可以访问共享目录的计算机。
    
  • 客户端常用形式:
    客户端说明
    192.168.1.111指定IP地址的主机
    192.168.1.0/24指定子网的所有主机
    192.168.1.*指定子网的所有主机
    www.xxx.com指定域名的主机
    *.xxx.com指定域中的所有主机
    *所有主机
  • 常用访问权限:
    访问权限说明
    ro只读
    rw读写

用户映射参数

  • 用户映射参数表:
    用户映射说明
    all_squash将远程访问的所有用户映射为匿名用户或用户组(nfsnobody)
    no_all_squash与上边相反(默认设置)
    root_squash将root用户… (默认设置)
    no_root_squash与上边相反
    anonuid=xxx将该匿名账号为本地账号(UID=xxx
    anongid=xxx将该匿名用户组为本地用户组(GID=xxx)

其它参数:对输出目录进行控制。

  • 常用其它参数:

    其它参数说明
    secure限制客户端只能从小于1024的TCP/IP端口链接NFS
    insecure语序客户端大于1024的TCP/IP端口连接NFS
    sync将数据同步写入内存缓冲区与磁盘中
    async将数据先保存在缓冲区中,必要时才写入磁盘
    wdelay检查是否有相关的写操作
    no_wdelay有写操作立即执行,与sync配合使用
    subtree_check若输出目录为子目录,则NFS服务器将检查父目录的权限
    no_subtree_check若输出目录为子目录,则NFS服务器不检查父目录的权限
  • 比如将/mnt/temp目录,只给IP为172.16.1.33的计算机进行读写权限:

    /mnt/temp 172.16.1.33 (rw, sync)

  • 比如将/mnt/temp01目录,只给子网中为172.16.1.0/24的计算机进行读写权限,其他计算机制只读权限:

    /mnt/temp0 172.16.1.0/24 (rw, async) * (ro)

配置中不能有空格

在这里插入图片描述

在这里插入图片描述

3.2 配置NFS客户端

  • 查看NFS服务器信息:

    showmount [选项] (参数)
    

    -d:仅显示已被NFS客户端加载的共享目录;
    -e:显示NFS服务器上所有的共享目录。
    在使用showmount时建议关闭防火墙,将SELinux设为为允许。

    systemctl stop firewalld.service
    setenforce 0
    getenforce
    
  • 挂在NFS服务器的共享目录:

    将NFS的共享目录挂在到本地:
    mount -t NFS服务器IP:输出目录 本地挂在目录

  • 比如:

    mkdir /mnt/mytemp
    mount -t nfs 192.168.0.190:/mnt/mytemp /mnt/mytemp
  • 卸载NFS服务器:

    umount 挂载点
    
  • 启动时自动挂在NFS共享目录:

    192.168.0.190: /mnt/temp /mnt/mytemp nfs defaults 0 0

4 实际示例

4.1 基本要求

  • NFS服务器192.168.0.190;
    • 要求1:共享目录/mnt/temp,允许192.168.0.0/24网段内计算机访问;
    • 要求2:共享目录/mnt/share, 允许用户zhang访问,IP为192.168.0.10;
    • 要求3:共享目录/mnt/upload,允许192.168.0.0/24网段作为上传目录,所属组为nfsupload,UID和GID均为666;
    • 要求4:共享目录/mnt/nfs,除192.168.0.0/24网段用户访问,只读,可向internet提供数据内容;

4.2 案例实现

4.2.1 NFS服务器配置

  • 安装NFS服务:

    yum -y install rpcbind
    yum -y install nfs-utils
    
  • 创建目录和测试文件:

    # 创建目录:
    mkdir -p /mnt/public
    mkdir -p /mnt/minio
  • 编辑 vi /etc/exports

    在这里插入图片描述

  • 刷新配置exportfs -r

  • 查看共享exportfs -v

  • 启动服务

    systemctl start rpcbind
    systemctl start nfs
    
  • 设置开机自动启动

    systemctl enable rpcbind.service
    systemctl enable nfs-server.service
    

showmount -e 查看NFS服务器端共享目录

4.2.2 NFS客户端配置

  1. 关闭防火墙

    systemctl stop firewalld.service
    systemctl disable firewalld.service
    
  2. 关闭selinux

    vi /etc/selinux/config
    

    把SELINUX改成disabled

  3. 安装nfs-utils和rpcbind

    yum -y install nfs-utils rpcbind
    
  4. 启动服务

    systemctl start rpcbind
    systemctl start nfs
    
  5. 设置开机自动启动

    systemctl enable rpcbind.service
    systemctl enable nfs-server.service
    
  6. 查看服务端的共享目录

    showmount -e 192.168.0.243

  7. 建立本地目录

    mkdir /mnt/243_share_dir

  8. 把服务器端的共享目录mount到本地目录

    mount -t nfs 192.168.0.243:/share_dir /mnt/243_share_dir

    验证:

    df -h

  9. 编辑/etc/fstab,开机自动挂载

    vi /etc/fstab

  10. 在结尾添加如下一行

    192.168.0.243:/share_dir /mnt/243_share_dir nfs4 defaults 0 0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/203050.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机组成原理-数据寻址-(相对寻址 基址寻址 变址寻址 )

文章目录 指令寻址vs数据寻址总览偏移寻址基址寻址基址寻址的作用变址寻址变址寻址的作用基址&变址复合寻址相对寻址相对寻址的作用 总结硬件如何实现数的比较 指令寻址vs数据寻址 总览 偏移寻址 变址寄存器:IX 基址寄存器:BR 基址寻址 没有基址…

GitHub工业级开源软件:基于网络的过程可视化(SCADA/HMI/仪表板)

GitHub工业级开源软件:基于网络的过程可视化(SCADA/HMI/仪表板)  作者:本站编辑  2023-11-25 06:52:35  117 大家好,我是 Fun-Fun君,每天介绍github上最有价值的开源项目 今天介绍 FUXA 基于网络的过程可视化(SCADA/HMI/仪表板)软件 github地址:…

ChatGPT能帮助--掌握各种AI绘图工具,随意生成各类型性图像

2023年随着OpenAI开发者大会的召开,最重磅更新当属GPTs,多模态API,未来自定义专属的GPT。微软创始人比尔盖茨称ChatGPT的出现有着重大历史意义,不亚于互联网和个人电脑的问世。360创始人周鸿祎认为未来各行各业如果不能搭上这班车…

Camunda 7.x 系列【60】流程分类

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 2.7.9 本系列Camunda 版本 7.19.0 源码地址:https://gitee.com/pearl-organization/camunda-study-demo 文章目录 1. 前言2. 案例演示2.1 后端2.2 前端2.3 测试1. 前言 钉钉中的OA审批分类: 企业级的业务…

UDP多人群聊

一.创建类 二.类 1.Liao类 import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.net.*; import java.io.IOException; import java.lang.String;public class Liao extends JFrame{private static final int DEFAULT_PORT8899;private JLabel st…

【musl-pwn】msul-pwn 刷题记录 -- musl libc 1.2.2

前言 本文不分析 musl libc 相关源码,仅仅为刷题记录,请读者自行学习相关知识(看看源码就行了,代码量也不大) starCTF2022_babynote 保护:保护全开 程序与漏洞分析: 程序实现了一个菜单堆&…

自适应局部降噪滤波器的python实现-------冈萨雷斯数字图像处理

自适应局部降噪滤波器 自适应局部降噪滤波器是一种信号处理技术,用于降低图像或信号中的噪声水平,同时保留图像或信号的细节。其原理基于局部区域内信号的统计特性和噪声的特征,通过动态调整滤波器的参数来适应不同区域的信号和噪声属性。 自…

Day52力扣打卡

打卡记录 Collapsing Strings&#xff08;Trie树&#xff09; 链接 #include <iostream> #include <algorithm> using namespace std; const int N 2e6 10; int son[N][26], idx, cnt1[N], cnt2[N]; int main() {auto insert [&](string& str, int* c…

【Qt】在表格QTableWidget或者QTableView中,当主键Id存在时更新数据,不存在时添加数据解决方案

问题 有时在开发中&#xff0c;表格需要显示数据&#xff0c;每一行呢&#xff0c;需要记录对应的id。 当更新表格数据时&#xff0c;会根据id进行更新&#xff0c;id存在就更新行数据&#xff0c;不存在就添加一行新数据。 解决方案 如何知道id存在还是不存在呢&#xff1f…

记一次CDH集群迁移产生的问题——HIVE

背景 生产环境CDH集群迁移到新的环境&#xff0c;迁移之后使用Hive Client方执行任务一直失败。 问题1&#xff1a;metadata.SessionHiveMetaStoreClient 产生报错&#xff1a; FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.Ru…

车联网架构设计(二)_消息缓存

在上一篇博客车联网架构设计(一)_消息平台的搭建-CSDN博客中&#xff0c;我介绍了车联网平台需要实现的一些功能&#xff0c;并介绍了如何用EMQXHAPROXY来搭建一个MQTT消息平台。车联网平台的应用需要消费车辆发布的消息&#xff0c;同时也会下发消息给车辆&#xff0c;以实现车…

SpringBoot 属性配置解析

属性配置介绍 spring官方提供的17中属性配置的方式 Devtools全局配置测试环境TestPropertySource注解测试环境properties属性命令行参数SPRING_APPLICATION_JSON属性ServletConfig初始化参数ServletContext初始化参数JNDI属性JAVA系统属性操作系统环境变量RandomValueProperty…

基于OpenCV+CNN+IOT+微信小程序智能果实采摘指导系统——深度学习算法应用(含pytho、JS工程源码)+数据集+模型(二)

目录 前言总体设计系统整体结构图系统流程图 运行环境Python环境TensorFlow 环境Jupyter Notebook环境Pycharm 环境微信开发者工具OneNET云平台 相关其它博客工程源代码下载其它资料下载 前言 本项目基于Keras框架&#xff0c;引入CNN进行模型训练&#xff0c;采用Dropout梯度…

uni-app 设置tabBar的setTabBarBadge购物车/消息等角标

目录 一、效果二、代码实现二、全部代码1.index.vue2.cart.vue 三、真实案例参考最后 一、效果 二、代码实现 只要使用uni.setTabBarBadge和uni.removeTabBarBadge来进行对红点的设置和移除。 主要代码&#xff1a; //设置红点 uni.setTabBarBadge({index: 1, // 底部菜单栏…

大数据可视化项目——基于Python豆瓣电影数据可视化分析系统的设计与实现

大数据可视化项目——基于Python豆瓣电影数据可视化分析系统的设计与实现 本项目旨在通过对豆瓣电影数据进行综合分析与可视化展示&#xff0c;构建一个基于Python的大数据可视化系统。通过数据爬取收集、清洗、分析豆瓣电影数据&#xff0c;我们提供了一个全面的电影信息平台…

论文阅读[2023ICME]Edge-FVV: Free Viewpoint Video Streaming by Learning at the Edge

Edge-FVV: Free Viewpoint Video Streaming by Learning at the Edge 会议信息&#xff1a; Published in: 2023 IEEE International Conference on Multimedia and Expo (ICME) 作者&#xff1a; 1 背景 FVV允许观众从多个角度观看视频&#xff0c;但是如果所选视点的视频…

机器学习-逻辑回归

一、引言 逻辑回归&#xff08;Logistic Regression&#xff09;是一种广泛应用于分类问题的监督学习算法。尽管名字中含有“回归”二字&#xff0c;但这并不意味着它用于解决回归问题。相反&#xff0c;逻辑回归专注于解决二元或多元分类问题&#xff0c;如邮件是垃圾邮件还是…

vue2+typescript使用高德地图2.0版本

高德地图 webjs api 2.0官网教程 AMap.Driving使用说明 <div class"mmp"><div id"map" ref"mapcontainer"></div></div><script lang"ts"> //安全密钥 window._AMapSecurityConfig{securityJsCode: &qu…

ExoPlayer架构详解与源码分析(10)——H264Reader

系列文章目录 ExoPlayer架构详解与源码分析&#xff08;1&#xff09;——前言 ExoPlayer架构详解与源码分析&#xff08;2&#xff09;——Player ExoPlayer架构详解与源码分析&#xff08;3&#xff09;——Timeline ExoPlayer架构详解与源码分析&#xff08;4&#xff09;—…

数据结构初阶之二叉树性质练习与代码练习

个人主页&#xff1a;点我进入主页 专栏分类&#xff1a;C语言初阶 C语言程序设计————KTV C语言小游戏 C语言进阶 C语言刷题 数据结构初阶 Linux 欢迎大家点赞&#xff0c;评论&#xff0c;收藏。 一起努力,共赴大厂。 目录 1.前言 2.性质练习 3…