NFS(网络文件系统)

简介:

系统版本:CentOS7.X

概念


NFS(Network File System)名为网络文件系统,是一种用于网络中主机与主机之间共享文件的一种服务。它把主机上要共享的目录通过文件系统的方式挂载到网络中的主机上,让网络中的主机访问共享目录就如同访问自己本地的磁盘分区一样。

NFS一般用于企业内网文件共享,相对Samba传输效率较好,相对vSFTP安全性较低。

NFS依赖于RPC(远程调用)服务,NFS支持的功能很多,每启动一个功能都需要启用一些端口来传输数据,NFS功能所对应的端口都是随机去用一些小于1024的端口。而RPC的最主要的功能就是定位对应功能的端口号并告诉给客户端连接。

NFS启动的RPC Daemons(守护进程):

  • rpc.nfsd   :NFS主要服务进程,用于管理挂载信息,判断登陆用户的ID,身份验证等。

  • rpc.mountd :当客户端成功访问并将共享目录挂载到本地,提供文件权限管理功能。

  • rpc.lock   :提供文件是否锁定(Lock)方面功能。(非必要开启)

  • rpc.statd  :用来检查文件的一致性,用于恢复损坏的文件,与rpc.lock相关,需要客户端与服务端同时开启此功能。(非必要开启)


服务端:搭建NFS服务


一、安装nfs-utils、rpcbind软件包

# yum -y install nfs-utils rpcbind

二、创建要共享的目录并授权,将目录增加到NFS中托管

# mkdir /data                   (创建要共享的目录

# chmod 007 /data                (授权共享目录,007表示其他用户将拥有可读、可写、可执行权限。NFS默认用户为“nfsnobody”,也可以使用“chown nfsnobody.nfsnobody /data”命令授权。

# vi /etc/exports                (将目录加入到NFS中托管,在exports文件中增加条目

/data 192.168.116.0/24(rw,sync)       #书写格式:/共享目录 指定IP网段/掩码(参数1,参数2)

三、开启服务

# systemctl start rpcbind        (必须首先启动RPC服务

# systemctl start nfs             (启动NFS服务

# netstat -lnupt |grep rpc          (查看端口情况


客户端:挂载NFS共享目录


一、挂载NFS共享目录到本地

# mount 192.168.116.130:/home /mnt   #挂载命令:mount NFS服务器地址:/共享目录  本地挂载目录


配置完整解读


配置文件路径:/etc/exports

配置格式:

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


配置说明

一、NFS共享的目录:

使用绝对路径指定目录路径,如:/data

二、NFS客户端地址:

指定主机IP,如:192.168.1.1

指定主机网段,如:192.168.1.0/24

指定所有主机,如:*

三、参数:

ro                 #拥有只读的权限

rw                 #拥有可读可写的权限

sync                #将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性(同步传输)

async                    #将数据先保存在内存缓冲区中,必要时才写入磁盘(异步传输)

all_squash                 #将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody)

no_all_squash               #与all_squash取反(默认设置),默认使用nfsnobody匿名用户

root_squash                #将root用户及所属组都映射为匿名用户或用户组(默认设置)

no_root_squash           #与rootsquash取反

anonuid=xxx                #将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=XXX)

anongid=xxx                #将远程访问的所有用户组都映射为匿名用户组账户

本文转自   触动的风   51CTO博客,原文链接:http://blog.51cto.com/10978134/2043983

相关文章
|
3月前
|
存储 Unix Linux
分布式文件系统协议:NFS(Network File System)网络文件系统
NFS(Network File System)网络文件系统是一种分布式文件系统协议,最初由Sun Microsystems开发,并在1984年首次发布。 NFS允许不同计算机通过网络共享资源,特别是文件和目录,就像它们是本地存储的一部分一样。使用NFS的客户端可以挂载远程服务器上的文件系统,使得用户能够以透明的方式访问远程数据,实现跨多个系统的文件共享。
137 0
|
8月前
|
存储 缓存 运维
【运维知识进阶篇】集群架构-NFS网络文件系统
【运维知识进阶篇】集群架构-NFS网络文件系统
256 0
|
11月前
|
监控 Linux
NFS - Network FileSystem网络文件系统的实现原理
NFS - Network FileSystem网络文件系统的实现原理
110 0
|
网络协议 Linux 网络安全
Linux网络服务NFS(网络文件系统)(探戈不像人生,无所谓对错)
Linux网络服务NFS(网络文件系统)(探戈不像人生,无所谓对错)
126 0
Linux网络服务NFS(网络文件系统)(探戈不像人生,无所谓对错)