如何找出在 FreeBSD 上使用交换的内容?

dzh*_*zhi 6 freebsd swap process-management

我试图查明我的 FreeBSD 服务器上的哪个进程正在吃掉交换。

我只能看到正在使用多少(顶部),但不能看到哪个进程正在交换它的胆量。

我尝试在谷歌上搜索这个,但没有找到任何东西。

有没有办法通过本机进程或使用某些外部软件来显示交换数据的列表来实现这一点?

谢谢。

D_B*_*Bye 5

FreeBSD 的ps命令W在该state列中打印 a 来指示进程被换出。默认情况下,ps打印state为第三列,因此这将为您提供您想要的内容:

$ ps ax | awk 'NR==1{print};$3 ~ /W/'
Run Code Online (Sandbox Code Playgroud)

'NR==1{print}'将为您提供列标题。如果您不需要或不想要它们,请忽略它。

另请注意,FreeBSD 的top显示交换了进程名称(最后一列),并用尖括号括起来。