linuxnfs服务安装与配置实践

目录

一.NFS服务

二.NFS和RPC的概念

三.什么是RPC

四.工具

五.安装配置NFS环境

1.查看一下是否有nfs-utils和rpcbind软件包的安装rpm包

2.安装nfs-utils 、rpcbind

3.环境配置

1.nfs配置文件需要遵守如下规则:

2.nfs语法参数解释:

3.nfs客户端地址形式

4.nfs客户端权限参数

七、nfs服务端的文件目录共享实践

1.前提

2.nfs服务端部署

3.修改nfs服务端的配置文件,进行客户端授权

4.挂载


一.NFS服务

专用于linux和linux之间的专门的文件共享服务(NFS)服务,network filesystem网络文件系统

NFS服务可以把远程linux机器上面的文件目录数据,通过挂载的形式,映射到用户本地机器

本地/mnt ------------- 远方的一台服务器/sharedir

二.NFS和RPC的概念

NFS通过port传输数据,NFS服务在传输数据的时候,端口是随机选择的(自己重启NFS服务,查看端口是否在变化)

但是因为NFS的端口是随机的,既然端口不确定,客户端是无法链接NFS服务的

所以我们就需要一个另外的服务,进行NFS的端口注册,并且告知客户端NFS的工作端口是哪一个,以此让客户端能连接到服务器的NFS服务

三.什么是RPC

RPC(远程过程调用)

linux使用NFS服务必须启动2个服务

  • NFS服务
  • RPC服务

NFS服务通过RPC注册自己的端口功能

RPC服务功能就是记录每个NFS服务对应的端口号,并且RPC保证了NFS客户端发出请求的时候,把该功能对应的端口信息告知NFS客户端,保证客户端能够正确连接到NFS服务端的端口,达到数据传输目的

0c31c0eecac5455588167404f3ceeeac.png

四.工具

  • nfs-utils:NFS服务的主程序,包括了rpc.nfsd rpc.mountd这两个守护进程,相关配置文件信息
  • RPCBIND:

RPC在centos7系统平台下,实现的软件RPCBIND服务

NFS服务的配置,必须要先运行好RPCBIND服务才可以

如果RPCBIND服务重启了,原本注册的NFS服务端的信息也失效了,你还得再重启NFS服务端,重新注册信息才可以

如果仅仅修改了NFS配置文件,不需要重启NFS服务端,因为重启后,端口的信息就更新了,还得重新注册。

五.安装配置NFS环境

1.查看一下是否有nfs-utils和rpcbind软件包的安装rpm包

[root@localhost virtual_user_dir]# rpm -qa nfs-utils rpcbind
nfs-utils-1.3.0-0.68.el7.x86_64
rpcbind-0.2.0-49.el7.x86_64

66c9acac9d5b4a04b4ac38cd98b5a99a.png

2.安装nfs-utils 、rpcbind

yum install nfs-utils

31ddec9741c948269652a6387b19ac52.png

yum install rpcbind

82be20580af74c40858edbb5ee78e0c8.png

3.环境配置

NFS是c/s模式,准备一个nfs服务端,准备一个nfs客户端,两台linux机器

再nfsserver端创建一个 用于共享的文件夹,且设置相应的读写权限

mkdir /sharenfs
chmod -Rf 777 /sharenfs/

六、nfs的配置文件

vim /etc/exports

1.nfs配置文件需要遵守如下规则:

nfs共享目录 nfs客户端地址(参数1,参数2……) NFS客户端地址2(参数1,参数2……)

例如:

#把nfs服务端的根目录共享出去,且允许两个主机名为client1,client2的机器,可以进行rw读写权限 / client1(rw) client2(rw)

#允许任意的客户端,都能够挂载到此nfs /public *(rw)

#只允许指定的ip地址的服务器,能够挂载此NFS服务端的/home/nfsfile文件夹且是只读的 /home/nfsfile 101.1.16.61(ro)

2.nfs语法参数解释:

nfs共享目录是绝对路径

nfs客户端地址,也就是nfs服务器授权可以访问共享目录的地址,可以写主机名,可以写通配符,ip地址

权限参数对nfs授权的客户端,进行权限控制的参数

3.nfs客户端地址形式

单一客户端 10.1.1.1 ---用的很少

允许整个网段访问 10.1.1.0/24 ---局域网,用的较多

授权整个域名客户端 nfs.baidu.cn ---用的很少

授权子域名客户端 *.baidu.cn ---用的少

4.nfs客户端权限参数

ro ---只读

rw ---读写

root_squash ---当nfs客户端以root账号访问nfs服务端共享目录数据的时候,把该root映射为nfs服务端的一个匿名用户,该用户的uid,gid会变成nfsnobody的信息

no_root_squash ---几乎和上面一样,但是不安全,因为会映射成root账户

all_squash ---所有nfs客户端的用户都映射为匿名用户,很安全,生产环境常用

sync ---数据同步写入到内存和磁盘,有点是保证内存数据安全,但效率太低

async ---数据先写入内存,再写入到磁盘,但是内存是易失性存储,所以掉电可能会出问题

七、nfs服务端的文件目录共享实践

1.前提

nfs服务是基于rpc的111通信端口,必须要先确保已经启动了rpc服务

如果rpcbind服务停止了,111端口也不会挂掉,因为centos7还提供了rpcbind.socket服务运行着

其实也就是保证rpcbind服务正常运行

[root@localhost virtual_user_dir]# systemctl restart rpcbind
[root@localhost virtual_user_dir]# systemctl status rpcbind

b0de97f1803e4fa0be3e2554f3c041b7.png

[root@localhost virtual_user_dir]# netstat -tunlp|grep 111

92ad4806b7884f84bc673b969bfbe5ce.png

2.nfs服务端部署

前面已经确保了rpcbind服务正确启动

现在需要创建nfs服务端共享的目录

mkdir -p /sharenfs
chmod -Rf 777 /sharenfs/

我们再创建两个文件

touch /sharenfs/file1
touch /sharenfs/file2

33f128a99f1f40e4b09d84d14bd73ed9.png

防止出现权限问题,把目录所有人调整为nfsnobody

chown -R nfsnobody.nfsnobody /sharenfs/

3.修改nfs服务端的配置文件,进行客户端授权

vim /etc/exports
/sharenfs *(insecure,rw,sync:)

a2e6d931affb45459f848741bc39bb26.png

4.挂载

[root@localhost sharenfs]# mount -t nfs 127.0.0.1:/sharenfs /mnt
[root@localhost sharenfs]# df -h
Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                 3.6G     0  3.6G   0% /dev
tmpfs                    3.6G   20M  3.6G   1% /dev/shm
tmpfs                    3.6G   13M  3.6G   1% /run
tmpfs                    3.6G     0  3.6G   0% /sys/fs/cgroup
/dev/mapper/centos-root   47G  8.0G   40G  17% /
/dev/sda1               1014M  185M  830M  19% /boot
tmpfs                    727M   36K  727M   1% /run/user/1000
/dev/sr0                 4.4G  4.4G     0 100% /run/media/o/CentOS 7 x86_64
127.0.0.1:/sharenfs       47G  8.0G   40G  17% /mnt
[root@localhost sharenfs]# cd /mnt/
[root@localhost mnt]# ls
file1  file2
[root@localhost mnt]# 

9a76ebcaef854e5cb981e57dd57b0ba7.png

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

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

相关文章

质数(素数)prime :只能被 1 和 它本身整除的自然数,不可再分,(三种方式求出质数)

从 2 开始,到这个数 减 1 结束为止, 都不能被这个数本身整除。例如:5 是否是质数 ? 那么 2,3,4,都不能被 5 整除 所以 5 是 质数判断 n 是否是质数? 2,3,4&…

el-tree横向纵向滚动条

el-tree未展开时样式 el-tree展开时样式 给容器一个高度&#xff0c;然后样式加上overflow: scroll&#xff0c;这样纵向滚动条就出来了。 <el-card style"height: 528px;overflow: scroll"><el-inputplaceholder"输入关键字进行过滤"v-model&…

嵌入式系统设计师考试笔记之操作系统基础复习笔记一

目录 1、嵌入式软件基础 &#xff08;1&#xff09;嵌入式软件的特点&#xff1a; &#xff08;2&#xff09;嵌入式软件分类&#xff1a; &#xff08;3&#xff09;无操作系统的嵌入式软件的两种实现方式&#xff1a; &#xff08;4&#xff09;有操作系统的三大优点&am…

2021-arXiv-The Power of Scale for Parameter-Efficient Prompt Tuning

2021-arXiv-The Power of Scale for Parameter-Efficient Prompt Tuning Paper: https://arxiv.org/abs/2104.08691 Code: https://github.com/google-research/ text-to-text-transfer-transformer/ blob/main/released_checkpoints.md# lm-adapted-t511lm100k 在这项工作中&…

大数据调度最佳实践 | 从Airflow迁移到Apache DolphinScheduler

迁移背景 有部分用户原来是使用 Airflow 作为调度系统的&#xff0c;但是由于 Airflow 只能通过代码来定义工作流&#xff0c;并且没有对资源、项目的粒度划分&#xff0c;导致在部分需要较强权限控制的场景下不能很好的贴合客户需求&#xff0c;所以部分用户需要将调度系统从…

地面文物古迹保护方案,用科技为文物古迹撑起“智慧伞”

一、行业背景 当前&#xff0c;文物保护单位的安防系统现状存在各种管理弊端&#xff0c;安防系统没有统一的平台&#xff0c;系统功能不足、建设标准不同&#xff0c;产品和技术多样&#xff0c;导致各系统独立&#xff0c;无法联动&#xff0c;形成了“信息孤岛”。地面文物…

阿里云服务结构--长期更新

CNCF 全称Cloud Native Computing Foundation&#xff08;云原生计算基金会&#xff09;&#xff0c;成立于 2015 年7月21日&#xff08;于美国波特兰OSCON 2015上宣布&#xff09;&#xff0c;其最初的口号是坚持和整合开源技术来让编排容器作为微服务架构的一部分&#xff0…

uni-app中tab选项卡的实现效果 @click=“clickTab(‘sell‘)“事件可传参数

一、效果图 二、代码 <template><view><view class"choose-tab"><view class"choose-tab-item" :class"chooseTab 0 ? active : " data-choose"0" click"clickTab">选项1</view><view …

JVM | 命令行诊断与调优 jhsdb jmap jstat jps

目录 jmap 查看堆使用情况 查看类列表&#xff0c;包含实例数、占用内存大小 生成jvm的堆转储快照dump文件 jstat 查看gc的信息&#xff0c;查看gc的次数&#xff0c;及时间 查看VM内存中三代&#xff08;young/old/perm&#xff09;对象的使用和占用大小 查看元数据空…

Spark【Spark Streaming】

1、基本数据源 1.1、文件流 在spark Shell 下运行&#xff1a; [lyhhadoop102 spark-yarn-3.2.4]$ spark-shell Setting default log level to "WARN". To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel). 2022-09-…

HTML笔记-狂神

1. 初识HTML 什么是HTML&#xff1f; Hyper Text Markup Language : 超文本标记语言 超文本包括&#xff1a;文字、图片、音频、视频、动画等 目前使用的是HTML5&#xff0c;使用 W3C标准 W3C标准包括&#xff1a; 结构化标准语言&#xff08;HTML、XML&#xff09; 表现标…

Kafak - 单机/集群快速安装指北(3.x版本)

文章目录 官方下载地址上传安装包解压安装包到指定目录修改解压包名为kafka修改config目录下的配置文件server.propertie配置环境变量其他机器同上 - 修改配置文件中的brokerid启动集群停止Kraft 方式部署集群----(不使用zookeeper) 官方下载地址 http://kafka.apache.org/dow…

【ROS入门】机器人系统仿真——相关组件以及URDF集成Rviz

文章结构 相关组件URDF(Unified Robot Description Format)——创建机器人模型Gazebo——搭建仿真环境Rviz(ROS Visualization Tool)——显示机器人各种传感器感知到的环境信息 URDF集成RvizURDF相关语法robotlinkjoint URDF优化——xacro相关语法属性与算数运算宏文件包含 实操…

工作:三菱伺服驱动器连接参数及其电机钢性参数配置与调整

工作&#xff1a;三菱伺服驱动器参数及电机钢性参数配置与调整 一、三菱PLC与伺服驱动器连接参数的设置 1. 伺服配置 单个JET伺服从站链接侧占用点数:Rx/Ry占用64点、RWw/RWr占用32点 图中配置了22个JET伺服从站&#xff0c;占用点数:Rx/Ry占用64222048‬点、RWw/RWr占用322…

基于YOLOv8模型和UA-DETRAC数据集的车辆目标检测系统(PyTorch+Pyside6+YOLOv8模型)

摘要&#xff1a;基于YOLOv8模型和UA-DETRAC数据集的车辆目标检测系统可用于日常生活中检测与定位汽车&#xff08;car&#xff09;、公共汽车&#xff08;bus&#xff09;、面包车&#xff08;vans&#xff09;等目标&#xff0c;利用深度学习算法可实现图片、视频、摄像头等方…

金融行业网络安全保护与三级等保合规实施方案

金融行业网络安全保护与三级等保合规实施方案旨在帮助金融机构实施符合三级等保标准的网络安全保护措施。以下是一个基本的实施方案概述&#xff1a; 评估和规划&#xff1a; 进行风险评估&#xff1a;评估网络系统的风险&#xff0c;确定安全威胁、弱点和潜在风险。 确定等级…

Node学习笔记之MongoDB

一、简介 1.1 Mongodb 是什么 MongoDB 是一个基于分布式文件存储的数据库&#xff0c;官方地址 MongoDB: The Developer Data Platform | MongoDB 1.2 为什么选择 Mongodb 操作语法与 JavaScript 类似&#xff0c;容易上手&#xff0c;学习成本低 二、核心概念 Mongodb 中…

css 三栏布局的实现?

目录 前言 用法 代码 理解 高质量图片 1. 左侧栏 - 导航菜单 2. 中间栏 - 主要内容 3. 右侧栏 - 小部件和广告 布局的响应式设计 三栏布局在前端页面设计中是一个常见的布局方式&#xff0c;通常包含左侧、中间和右侧三个部分。这种布局方式在多种场景中都很受欢迎&am…

node实战——搭建带swagger接口文档的后端koa项目(node后端就业储备知识)

文章目录 ⭐前言⭐初始化项目⭐配置router目录自动扫描路由⭐swagger文件配置自动生成json文件⭐封装扫描目录路由加入swagger⭐配置项目入口总文件⭐运行效果⭐总结⭐结束⭐前言 大家好,我是yma16,本文分享关于node实战——搭建带swagger接口文档的后端koa项目(node后端就…

使用Redis部署 PHP 留言板应用

使用Redis部署 PHP 留言板应用 启动 Redis 领导者&#xff08;Leader&#xff09;启动两个 Redis 跟随者&#xff08;Follower&#xff09;公开并查看前端服务清理 启动 Redis 数据库 创建 Redis Deployment apiVersion: apps/v1 kind: Deployment metadata:name: redis-le…