在 Oracle® Solaris 11.2 中管理网络文件系统

退出打印视图

更新时间: 2014 年 7 月
 
 

如何在 NFS 版本 3 中挂载文件系统

本节中的信息适用于 NFS 版本 3 挂载。NFS 版本 4 挂载过程不包括端口映射服务或 MOUNT 协议。

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

client -> server PORTMAP C GETPORT prog=100005 (MOUNT) vers=3 proto=UDP
server -> client PORTMAP R GETPORT port=33482
client -> server MOUNT3 C Null
server -> client MOUNT3 R Null 
client -> server MOUNT3 C Mount /export/home9/user
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/user
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 中的可变文件句柄