为什么 Nethogs 看不到生成某些 NFS 流量的进程的 PID?

Fra*_*urt 8 nfs bandwidth

我通常使用 Nethogs 查看每个进程的网络带宽。但是,Nethogs 不会看到生成一些 NFS 流量的进程的 PID,因此它们被聚合在一行中?,PID 如下:

在此处输入图片说明

为什么会发生这种情况,有什么方法可以绕过它,以便我可以看到每个 PID 的 NFS 带宽?

我在 Ubuntu 12.04(客户端)上使用 NFSv3。

Bru*_*ger 8

NFS 是一个文件系统,顾名思义。在 NFS 挂载目录上打开/读取/查找/写入/关闭文件的用户进程不知道它是 NFS 文件系统,因为内核使 NFS 看起来像任何其他文件系统。

因此,读取 NFS 挂载文件的用户进程将生成read(2)系统调用,最终导致某些内核代码运行。所有 NFS 流量都将来自 Linux/Unix 内核本身,而不是来自用户级进程。因此“?” 作为PID。