检查 Linux 上哪些进程正在占用交换空间?

NK-*_*ell 2 memory linux shell swap memory-management

top要查看一些内存信息,我可以在through中观看它cat /proc/meminfo
在 /proc/meminfo 中我可以看到整个系统的交换使用情况,如下所示:

SwapCached:            4 kB
SwapTotal:      33460220 kB
SwapFree:       33460216 kB
Run Code Online (Sandbox Code Playgroud)

但可能存在几乎所有交换都被使用的情况(即,有一小部分SwapFree)。我怎样才能知道哪些进程正在消耗这个交换?

UPD:有一个太小的块SwapFree基本上意味着有一些进程(进程)消耗了大量内存并且很长时间没有使用它。我需要找到这样的流程。

Per*_*o69 6

  1. 跑步top
  2. 按此键f选择显示的字段
  3. 使用箭头键向下导航至 SWAP
  4. 命中Space- SWAP 前面将带有星号*
  5. 按向右箭头键 - 这将允许您将 SWAP 移动到列表中方便的位置,例如 %MEM 和 TIME+ 之间
  6. 按 q 返回顶部视图

第 5 步不是必需的,只是为了方便 - 没有它,SWAP 将显示为列表的最后一个条目,位于 之后COMMAND