系统管理指南:网络服务

如何挂载文件系统

以下说明适用于 NFS 版本 3 挂载。NFS 版本 4 挂载过程既不包括端口映射服务,也不包括 MOUNT 协议。

客户机需要从服务器挂载文件系统时,客户机必须从服务器获取文件句柄。文件句柄必须与文件系统对应。此过程需要在客户机与服务器之间进行多项事务处理。在本示例中,客户机正在尝试从服务器挂载 /home/terry。此事务处理的 snoop 跟踪如下。


client -> server PORTMAP C GETPORT prog=100005 (MOUNT) vers=3 proto=UDP

server -> client PORTMAP R GETPORT port=33492

client -> server MOUNT3 C Null

server -> client MOUNT3 R Null 

client -> server MOUNT3 C Mount /export/home9/terry

server -> client MOUNT3 R Mount OK FH=9000 Auth=unix

client -> server PORTMAP C GETPORT prog=100003 (NFS) vers=3 proto=TCP

server -> client PORTMAP R GETPORT port=2049

client -> server NFS C NULL3

server -> client NFS R NULL3 

client -> server NFS C FSINFO3 FH=9000

server -> client NFS R FSINFO3 OK

client -> server NFS C GETATTR3 FH=9000

server -> client NFS R GETATTR3 OK

在此跟踪中,客户机首先从 NFS 服务器上的端口映射服务请求挂载端口号。客户机收到挂载端口号 (33492) 后,会使用该端口号测试服务器上的服务的可用性。客户机确定服务正在该端口号上运行后,便会请求挂载。服务器对此请求做出响应时,服务器中包括正在挂载的文件系统 (9000) 的文件句柄。随后,客户机将针对 NFS 端口号发送请求。客户机收到来自服务器的端口号后,客户机便会测试 NFS 服务 (nfsd) 的可用性。另外,客户机还将请求有关使用文件句柄的文件系统的 NFS 信息。

在以下跟踪中,客户机正在使用 public 选项挂载文件系统。


client -> server NFS C LOOKUP3 FH=0000 /export/home9/terry

server -> client NFS R LOOKUP3 OK FH=9000

client -> server NFS C FSINFO3 FH=9000

server -> client NFS R FSINFO3 OK

client -> server NFS C GETATTR3 FH=9000

server -> client NFS R GETATTR3 OK

通过使用缺省的公共文件句柄(即 0000),系统将跳过所有要从端口映射服务获取信息并要确定 NFS 端口号的事务。


注 –

NFS 版本 4 提供对可变文件句柄的支持。有关更多信息,请参阅NFS 版本 4 中的可变文件句柄