nfsstat -s 命令

NFS 服务器显示接收到的 NFS 调用数。calls,被拒绝,badcalls,由于认证以及所进行的各种调用的计数和百分比。

以下示例显示了由 -s 选项指定的 nfsstat 命令输出的服务器部分:
# nfsstat -s

Server rpc:
Connection oriented:
calls     badcalls  nullrecv badlen    xdrcall  dupchecks dupreqs
15835      0          0          0          0          772        0
Connectionless:
calls     badcalls  nullrecv badlen    xdrcall  dupchecks dupreqs
0          0          0          0          0          0          0

Server nfs:
calls      badcalls   public_v2  public_v3
15835      0          0          0
Version 2: (0 calls)
null       getattr    setattr    root       lookup     readlink   read
0 0%       0 0%       0 0%       0 0%       0 0%       0 0%       0 0%
wrcache    write      create     remove     rename     link       symlink
0 0%       0 0%       0 0%       0 0%       0 0%       0 0%       0 0%
mkdir      rmdir      readdir    statfs
0 0%       0 0%       0 0%       0 0%
Version 3: (15835 calls)
null       getattr    setattr    lookup     access     readlink   read
7 0%       3033 19%   55 0%      1008 6%    1542 9%    20 0%      9000 56%
write      create     mkdir      symlink    mknod      remove     rmdir
175 1%     185 1%     0 0%       0 0%       0 0%       120 0%     0 0%
rename     link       readdir    readdir+   fsstat     fsinfo     pathconf
87 0%      0 0%       1 0%       150 0%     348 2%     7 0%       0 0%
commit
97 0%

RPC 输出的服务器部分(-s)如下:

调用
从客户机接收到的 RPC 调用总数
badcalls
RPC 层已拒绝的调用的总数
nullrecv
被认为应该接收到而事实上没有捕获可用 RPC 调用的次数
badlen
包截断或包损坏(长度小于最小 RPC 调用标准长度的 RPC 调用数)
xdrcall
报头无法由扩展数据表示 (XDR) 解码的 RPC 调用数
dupchecks
重复请求高速缓存中已查找过的 RPC 调用数
dupreqs
已发现的重复 RPC 调用数

输出结果中还同时显示了各类调用的数目和各自的百分比。

重复性检查是为那些不能在两次执行中返回同一结果的操作而提供的。 典型示例为 rm 命令。 第一个 rm 命令也许成功了,但是如果应答丢失了,客户机将会重发这个命令。 我们希望这样的重复请求能获得成功,此时重复高速缓存被查询,如果发现是一个重复请求则相同的(成功的)结果被作为第二个重复请求的结果返回,就好像是由第一个请求所产生的结果一样。

通过查看不同类型操作调用(例如 getattr()read()write()readdir())的百分比,可以决定将使用何种类型的调整。 例如:如果 getattr() 调用的百分比非常高的话,那么调整属性的高速缓存是可能会有效果的。 如果 write() 调用的百分比过高的话,那么磁盘和 LVM 调整就显得重要了。 如果 read() 调用百分比过高,那么使用更多的内存用以缓冲文件就能提高性能。