centos7搭建NFS共享存储服务
时间:2022-07-24
本文章向大家介绍centos7搭建NFS共享存储服务,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
安装nfs
提供RPC支持的服务为rpcbind 提供NFS共享的服务为nfs 注意:先启动rpc服务,再启动nfs服务
yum install nfs-utils rpcbind
systemctl start rpcbind
systemctl start nfs
firewall-cmd --permanent --add-service=nfs #配置防火墙放行nfs服务
设置共享目录
配置文件说明: NFS的配置文件为/etc/exports,文件内容默认空白 格式: 共享目录的路径 允许访问的NFS客户端(共享权限参数) 如下,共享目录为/ftp , 允许访问的客户端为192.168.1.0/24网络用户,权限为只读。
mkdir /ftp
vim /etc/exports
/ftp 192.168.1.0/24(rw)
用于配置NFS服务程序配置文件的参数:
ro 只读
rw 读写
root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户
no_root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员
all_squash 无论NFS客户端使用什么账户访问,均映射为NFS服务器的匿名用户
sync 同时将数据写入到内存与硬盘中,保证不丢失数据
async 优先将数据保存到内存,然后再写入硬盘;这样效率更高,但可能会丢失数据
重新加载NFS服务,使配置文件生效
systemctl reload nfs
配置NFS固定端口
NFS启动时会随机启动多个端口并向RPC注册,为了设置安全组以及iptables规则,需要设置NFS固定端口。 NFS服务需要开启 mountd,nfs,nlockmgr,portmapper,rquotad这5个服务,其中nfs、portmapper的端口是固定的,另外三个服务的端口是随机分配的,所以需要给mountd,nlockmgr,rquotad设置固定的端口。
给mountd、rquotad设置端口的方式很简单,在/etc/sysconfig/nfs中添加一下设置即可
vim /etc/sysconfig/nfs
RQUOTAD_PORT=30001
LOCKD_TCPPORT=30002
LOCKD_UDPPORT=30002
MOUNTD_PORT=30003
STATD_PORT=30004
重启rpc、nfs的配置与服务
systemctl restart rpcbind.service
systemctl restart nfs.service
在/etc/modprobe.d/lockd.conf中添加以下设置
vim /etc/modprobe.d/lockd.conf
options lockd nlm_tcpport=30002
options lockd nlm_udpport=30002
重新加载NFS配置和服务
systemctl restart nfs-config
systemctl restart nfs-idmap
systemctl restart nfs-lock
systemctl restart nfs-server
查看端口使用情况
rpcinfo -p
防火墙开放端口号
firewall-cmd --permanent --add-port=111/tcp
firewall-cmd --permanent --add-port=111/udp
firewall-cmd --permanent --add-port=30004/tcp
firewall-cmd --permanent --add-port=30004/udp
firewall-cmd --permanent --add-port=30003/tcp
firewall-cmd --permanent --add-port=30003/udp
firewall-cmd --permanent --add-port=2049/tcp
firewall-cmd --permanent --add-port=2049/udp
firewall-cmd --permanent --add-port=3002/tcp
firewall-cmd --permanent --add-port=3002/udp
NFS客户端挂载配置
NFS客户端安装rpcbind和nfs
yum install nfs-utils rpcbind
systemctl start rpcbind
使用showmount命令查看nfs服务器共享信息。输出格式为“共享的目录名称 允许使用客户端地址
showmount -e 192.168.1.4
新建挂载服务端的目录到本地的目录
mkdir /www
将服务器上面的共享目录192.168.1.4:/ftp挂载到本地的/www目录
mount -t nfs 192.168.1.4:/ftp /www
fstab自动挂载设置
设置客户端开机时自动挂载192.168.1.4:/ftp到本地的/www
vim /etc/fstab
192.168.40.128:/share /www nfs default,_netdev 0 0
- 开源API测试工具 Hitchhiker v0.7更新 - Schedule的对比diff
- com.mysql.jdbc.exceptions.jdbc4.CommunicationsE...
- 简陋的swift carthage copy-frameworks 辅助脚本
- 【自问自答】关于 Swift 的几个疑问
- 高级PHP应用程序漏洞审核技术【一】
- 【读书笔记】The Swift Programming Language (Swift 4.0.3)
- Ubuntu 下mysql常用操作
- JDK1.8源码(五)——java.util.ArrayList 类
- 代码审计入门总结
- ubuntu mysql启动|停止|重启
- JDK1.8源码(四)——java.util.Arrays 类
- JDK1.8源码(三)——java.lang.String 类
- JDK1.8源码(二)——java.lang.Integer 类
- Java关键字——instanceof
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 用 GitLab 做 CI/CD 是什么感觉,太强了!!
- 避坑指南:通过expdp/impdp迁移数据的7个坑
- 组复制背景 | 全方位认识 MySQL 8.0 Group Replication
- kubernete编排技术六:RBAC权限控制
- Redis 的过期策略是如何实现的?
- 记一次线上问题及反思
- 用 Redis 散列实现短网址生成器|文末福利
- 原创|面试官:Java对象一定分配在堆上吗?
- 频繁FGC的真凶原来是它
- 类加载器知识点吐血整理
- ThreadPoolExecutor 线程池"源码分析"
- 一起刷 leetcode 之螺旋矩阵(头条和美团真题)
- 如何快速判断一个用户是否访问过我们的 APP?
- replication-manager之switchover剖析
- 组复制安装部署 | 全方位认识 MySQL 8.0 Group Replication