企业级NFS网络文件共享服务

简介: 企业级NFS网络文件共享服务

NFS服务环境准备

服务器角色列表

NFS server:192.168.1.5
NFS clent01:192.168.1.4
NFS clent01:192.168.1.3

系统及内核版本

[root@nfs-server ~]# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core) 
[root@nfs-server ~]# uname -r
3.10.0-693.el7.x86_64
注:防火墙和selinux都关闭

软件列表

nfs-utils
rpcbind

NFS服务企业案例部署

将NFS server的/data目录共享给192.168.1.0网段,要求可读写

NFS服务端部署

服务安装

[root@nfs-server ~]# yum -y install nfs-utils rpcbind
[root@nfs-server ~]# rpm -qa nfs* rpcbind
nfs-utils-1.3.0-0.66.el7_8.x86_64
rpcbind-0.2.0-49.el7.x86_64
[root@nfs-server ~]# systemctl start rpcbind.service
[root@nfs-server ~]# systemctl enable rpcbind
[root@nfs-server ~]# lsof -i :111
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
rpcbind 16202  rpc    6u  IPv4  64534      0t0  UDP *:sunrpc 
rpcbind 16202  rpc    8u  IPv4  64536      0t0  TCP *:sunrpc (LISTEN)
rpcbind 16202  rpc    9u  IPv6  64537      0t0  UDP *:sunrpc 
rpcbind 16202  rpc   11u  IPv6  64539      0t0  TCP *:sunrpc (LISTEN)
[root@nfs-server ~]# systemctl start nfs.service 
[root@nfs-server ~]# systemctl enable nfs.service 

创建共享目录及授权

[root@nfs-server ~]# mkdir -p /data
[root@nfs-server ~]# chown -R nfsnobody.nfsnobody /data
[root@nfs-server ~]# ll -d /data/
drwxr-xr-x 2 nfsnobody nfsnobody 6 10月 23 15:20 /data/

配置NFS配置文件

[root@nfs-server ~]# vim /etc/exports
[root@nfs-server ~]# cat /etc/exports
/data 192.168.1.0/24(rw,sync)
[root@nfs-server ~]# exportfs -rv
exporting 192.168.1.0/24:/data
[root@nfs-server ~]# showmount -e localhost
Export list for localhost:
/data 192.168.1.0/24
[root@nfs-server ~]# cat /var/lib/nfs/etab 
/data 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,secure,root_squash,no_all_squash)

本地挂载测试

[root@nfs-server ~]# mount -t nfs 192.168.1.5:/data /mnt/
[root@nfs-server ~]# df -h 
192.168.1.5:/data         18G  1.6G   17G    9% /mnt

客户端配置(所有)

[root@nfs-clent01 ~]# yum -y install rpcbind nfs-utils
[root@nfs-clent01 ~]# systemctl start rpcbind.service 
[root@nfs-clent01 ~]# systemctl enable rpcbind.service
注:nfs服务不用启动
[root@nfs-clent01 ~]# showmount -e 192.168.1.5
Export list for 192.168.1.5:
/data 192.168.1.0/24
[root@nfs-clent01 ~]# mount -t nfs 192.168.1.5:/data /mnt
[root@nfs-clent01 ~]# df -h
192.168.1.5:/data         18G  1.6G   17G    9% /mnt
[root@nfs-clent01 ~]# echo "/bin/mount -t nfs 192.168.1.5:/data /mnt" >>/etc/rc.local 

测试:在clent01的/mnt目录下创建测试文件,clent02和nfs-server都能收到共享文件

[root@nfs-clent01 ~]# cd /mnt/
[root@nfs-clent01 mnt]# ls
[root@nfs-clent01 mnt]# touch test.txt

clent02查看

[root@nfs-clent02 ~]# ll /mnt/
总用量 0
-rw-r--r-- 1 nfsnobody nfsnobody 0 10月 23 15:41 test.txt

nfs-server查看

[root@nfs-server ~]# ll /mnt/
总用量 0
-rw-r--r-- 1 nfsnobody nfsnobody 0 10月 23 15:41 test.txt

NFS服务常用配置参数权限

即为括号内参数

rw:表示可读写
ro:表示只读
sync:写数据时同步写入NFS server磁盘(有点安全,缺点性能会稍降低)
async:写数据会先写入缓冲区,硬盘有空档在写入硬盘
no_root_squash:访问NFS server共享目录的如果是root的话,它对该目录具有root权限
root_squash:访问NFS server共享目录的如果是root的话,权限将会压缩为匿名用户
all_squash:所有用户的权限都会压缩为匿名用户
anonuid:匿名用户,uid通常为nfsnobody用户的值
anongid:匿名用户组,uid通常为nfsnobody用户组的值

企业生产NFS exports配置实例

配置例一:

/data 192.168.1.0/24(rw,sync)
注:允许客户端读写,并且数据同步到服务器端的磁盘里

配置例二:

/data/blog 192.168.1.0/24(rw,sync,all_squash,anonuid=2000,anongid=2000)
注:允许客户端读写,并且数据同步写入服务端磁盘,指定客户端用户的UID和GID

配置例三:

/data/log 192.168.1.0/24(ro)
注:只读,例如有特定用户需要查看共享目录文件的需求,又不希望用户有修改的权限

重点NFS服务文件或命令说明

/etc/exports:主配置文件,默认为空
/usr/sbin/exportfs:管理命令,加载配置生效:exportfs -rv
/usr/sbin/showmount:查看配置及挂在结果:showmount -e 192.168.1.5
/var/lib/nfs/etab:配置文件的完整设定参数
/proc/mounts:客户端挂载参数:grep mnt /proc/mounts
/var/lib/nfs/rmtab:客户端访问服务器exports的信息列表


目录
相关文章
|
2月前
|
存储 安全 Unix
网络文件系统 (NFS)
【10月更文挑战第12天】
141 5
|
2月前
|
存储 缓存 安全
网络文件系统 (NFS)
【10月更文挑战第11天】
48 1
|
4月前
|
消息中间件 存储 Serverless
函数计算产品使用问题之怎么访问网络附加存储(NAS)存储模型文件
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
2月前
|
安全 网络安全 数据中心
转发路由器 Transit Router(TR):实现企业级互联网络的灵活与可靠
【10月更文挑战第18天】转发路由器(Transit Router,TR)是企业级网络架构中的关键设备,用于实现不同网络间的高效互连。本文通过问答形式,详细介绍了TR的基本概念、主要功能、配置方法及应用场景,强调了其在多数据中心互联、云服务接入、ISP网络核心和企业分支互联中的重要性,并探讨了确保TR高可用性和安全性的措施。
43 3
|
2月前
|
Unix Linux 网络安全
NFS挂载服务
【10月更文挑战第14天】
68 2
|
2月前
|
Kubernetes 容器
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
159 0
|
4月前
|
Java
java网络编程 UDP通信协议实现局域网内文件的发送和接收
java网络编程 UDP通信协议实现局域网内文件的发送和接收
java网络编程 UDP通信协议实现局域网内文件的发送和接收
|
4月前
|
运维 Ubuntu 安全
在Linux中,如何配置NFS共享?
在Linux中,如何配置NFS共享?
|
4月前
|
存储 Kubernetes 网络安全
[k8s]使用nfs挂载pod的应用日志文件
[k8s]使用nfs挂载pod的应用日志文件
184 1
|
4月前
|
存储 Linux 网络安全
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
下一篇
DataWorks