Network File System 网络文件系统
NFS基本概念
NFS(Network File System)是一种分布式文件系统协议,用于在网络上共享文件系统。它允许远程计算机系统通过网络访问共享的文件和存储资源,就好像它们是本地文件一样。NFS通常用于在UNIX和类UNIX操作系统之间共享文件,允许用户在网络上共享和访问文件。
NFS工作方式
NFS的工作方式是,服务器端将文件系统挂载(Mount)到网络上,客户端系统可以通过NFS协议访问这些挂载的文件系统。客户端可以读取、写入和执行这些文件,就像它们是本地文件一样。NFS提供了透明的访问,用户可以像操作本地文件一样操作远程文件。
NFS工作流程
- 客户端请求挂载文件系统:客户端发起一个请求,要求将远程服务器上的特定文件系统挂载到本地系统上。通常,这是通过操作系统提供的mount命令或者在系统启动时自动挂载完成的。
- 服务器确认请求:服务器收到挂载请求后,会验证客户端的身份和权限。如果客户端被授权访问该文件系统,服务器会允许挂载操作。
- 建立连接:一旦服务器确认挂载请求,它会与客户端建立连接。通常,这个连接是通过TCP/IP网络建立的,因为NFS是基于网络的。
- 传输数据:一旦连接建立,客户端可以向服务器发送文件访问请求。这包括读取、写入和执行文件等操作。客户端向服务器发送NFS请求,服务器响应并传输所需的数据。
- 断开连接:当文件访问操作完成后,或者客户端不再需要文件系统时,可以断开与服务器的连接。这通常通过取消挂载操作来完成,即使用操作系统提供的umount命令。
CentOS 7.9使用NFS
在CentOS 7系统中,需要安装nfs-utils,rpcbind软件包来提供NFS共享服务
前者用于NFS共享发布和访问,后者用于RPC支持。
手动加载NFS共享服务时,应该先启动rpcbind,再启动NFS
NFS端口为2049,RPC端口:111
NFS配置选项
- /etc/exports:这是NFS服务器的主要配置文件,用于指定要共享的文件系统以及允许访问这些文件系统的客户端。每行配置通常包括共享的路径、允许访问的客户端、权限选项等。
/shared/path *(rw,sync)
- rw:允许客户端对共享的文件系统进行读写操作。
ro:仅允许客户端对共享的文件系统进行只读操作。 - sync:同步写入操作,即在数据写入到NFS服务器之前,要求客户端确认数据已经成功写入。这可以确保数据的完整性,但可能会影响性能。