Linux:如何确定哪些程序占用了 35G 的系统内存

Linux:如何确定哪些程序占用了 35G 的系统内存

目前其中一个用户的系统的进程正在消耗6.5G RSS:

root@system:~# ps aux | awk 'BEGIN {sum=0} {sum +=$6} END {print sum/1024, "MB"}'
6575.42 MB
root@system:~#

如果我运行它,free -m它会告诉我当前已使用 41G(43,9G - 2,1G)内存:

root@system:~# free -m
              total        used        free      shared  buff/cache   available
Mem:          64402       43952       18322           0        2127       19735
Swap:        131070         129      130941
root@system:~#

所以我怀念~35G的系统内存

通常我会期望 RSS 总和更高,因为有共享段(ps 没有考虑)?!

我如何才能确定是什么消耗了我的内存?

系统重新启动计划于 6 日进行...

答案1

安装该工具后,您可以清楚地查看系统进程以及所使用的相关资源htop

您可以使用以下命令汇总内存使用情况:

ps aux --sort -rss

有关该主题的更多信息,请参阅以下链接: http://alvinalexander.com/linux/unix-linux-process-memory-sort-ps-command-cpu

相关内容