一、简介

1. NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。

2.对于大多数负载均衡群集来说,使用NFS协议来共享数据储存是比较常见的作法,NFS也是NAS储存设备必然支持的一种协议。但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能局域网中使用。

3.NFS服务的实现依赖于RPC(Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。所以需要安装nfs-utils、rpcbind软件包来提供NFS共享服务,前者用于NFS共享发布和访问,后者用于RPC支持。

4.NFS的配置文件为/etc/exports,格式为:共享的目录位置+客户机地址(权限选项)

权限选项:

rw:允许读写

ro:只读

sync:同步写入到内存和硬盘中

async:讲数据先保存在内存缓冲区中,必要时才写入磁盘

no_root_squash:当客户机以root身份访问时赋予本地root权限

root_squash:当客户机用root用户访问该共享目录时,将root映射成匿名用户

all_squash:所有访问用户都映射为匿名用户或用户组

subtree_check(默认):若输出目录是一个子目录,则nfs服务器将检查其父目录的权限

no_subtree_check:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限

anonuid=xxx:指定NFS服务器/etc/passwd文件中匿名用户的UID

anongid=xxx:指定NFS服务器/etc/passwd文件中匿名用户的GID

附NFS原理图

nfs 协议详解 nfs使用什么协议_共享目录

二、配置过程

注意:操作之前,将防火墙关闭

1.安装nfs-utils、rpcbind软件包

服务器与客户端均要安装

nfs 协议详解 nfs使用什么协议_共享目录_02

2.设置共享目录权限

nfs 协议详解 nfs使用什么协议_子目录_03


nfs 协议详解 nfs使用什么协议_子目录_04


nfs 协议详解 nfs使用什么协议_子目录_05


先修改exports权限

nfs 协议详解 nfs使用什么协议_子目录_06


nfs 协议详解 nfs使用什么协议_子目录_07


nfs 协议详解 nfs使用什么协议_子目录_08

3.启动NFS服务程序

手动加载的情况下,先启动rpc,再启动nfs

nfs 协议详解 nfs使用什么协议_linux_09

4.查看本机发布的NFS共享目录

nfs 协议详解 nfs使用什么协议_子目录_10

5.在客户机中访问NFS共享资源

先安装nfs-utils、rpcbind软件包

nfs 协议详解 nfs使用什么协议_nfs 协议详解_11


启动rpc服务

nfs 协议详解 nfs使用什么协议_子目录_12


查看NFS服务器共享了哪些目录

nfs 协议详解 nfs使用什么协议_服务器_13

6.手动挂载NFS共享目录

nfs 协议详解 nfs使用什么协议_子目录_14


至此,共享目录创建完成,在服务器端口共享目录wwwroot下添加、删除文件,会同步至客户机中和wwwroot挂载的目录myshare中。