查看占用内存最多的进程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查看占用内存最多的进程相关的知识,希望对你有一定的参考价值。

很多次,你可能遇见过系统消耗了过多的内存。如果是这种情况,那么最好的办法是识别出 Linux 机器上消耗过多内存的进程。我相信,你可能已经运行了下文中的命令以进行检查。如果没有,那你尝试过哪些其他的命令?我希望你可以在评论中更新这篇文章,它可能会帮助其他用户。
使用 top 命令 和 ps 命令 可以轻松的识别这种情况。我过去经常同时使用这两个命令,两个命令得到的结果是相同的。所以我建议你从中选择一个喜欢的使用就可以。
1) 如何使用 ps 命令在 Linux 中查找内存消耗最大的进程
ps 命令用于报告当前进程的快照。ps 命令的意思是“进程状态”。这是一个标准的 Linux 应用程序,用于查找有关在 Linux 系统上运行进程的信息。
它用于列出当前正在运行的进程及其进程 ID(PID)、进程所有者名称、进程优先级(PR)以及正在运行的命令的绝对路径等。
下面的 ps 命令格式为你提供有关内存消耗最大进程的更多信息。
# ps aux --sort -rss | head
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
mysql 1064 3.2 5.4 886076 209988 ? Ssl Oct25 62:40 /usr/sbin/mysqld
varnish 23396 0.0 2.9 286492 115616 ? SLl Oct25 0:42 /usr/sbin/varnishd -P /var/run/varnish.pid -f /etc/varnish/default.vcl -a :82 -T 127.0.0.1:6082 -S /etc/varnish/secret -s malloc,256M
named 1105 0.0 2.7 311712 108204 ? Ssl Oct25 0:16 /usr/sbin/named -u named -c /etc/named.conf
nobody 23377 0.2 2.3 153096 89432 ? S Oct25 4:35 nginx: worker process
nobody 23376 0.1 2.1 147096 83316 ? S Oct25 2:18 nginx: worker process
root 23375 0.0 1.7 131028 66764 ? Ss Oct25 0:01 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
nobody 23378 0.0 1.6 130988 64592 ? S Oct25 0:00 nginx: cache manager process
root 1135 0.0 0.9 86708 37572 ? S 05:37 0:20 cwpsrv: worker process
root 1133 0.0 0.9 86708 37544 ? S 05:37 0:05 cwpsrv: worker process
使用以下 ps 命令格式可在输出中仅展示有关内存消耗过程的特定信息。
参考技术A 内存是计算机的重要部件之一。
它是外存与CPU进行沟通的桥梁,计算机中所有程序的运行都在内存中进行。
内存性能的强弱影响计算机整体发挥的水平。
内存(Memory)也称内存储器和主存储器,它用于暂时存放CPU中的运算数据,与硬盘等外部存储器交换的数据。
只要计算机开始运行,操作系统就会把需要运算的数据从内存调到CPU中进行运算。当运算完成,CPU将结果传送出来。
内存的运行也决定计算机整体运行快慢的程度。
内存条由内存芯片、电路板、金手指等部分组成。[1]
中文名
内存
外文名
Memory
别名
内存储器
所属
计算机
接口类型
DIP、SIMM、DIMM
快速
导航
发展分类接口类型技术指标选购方法故障修复常见误解
概述
在计算机的组成结构中有一个很重要的部分是存储器。它是用来存储程序和数据的部件。
内存
对于计算机来说,有了存储器,才有记忆功能,才能保证正常工作。
存储器的种类很多。按其用途可分为主存储器和辅助存储器,主存储器又称内存储器(简称内存,港台称之为记忆体)。[2]
内存又称主存。它是CPU能直接寻址的存储空间,由半导体器件制成。特点是存取速率快。
内存是电脑中的主要部件,它是相对于外存而言的。
我们平常使用的程序,如:Windows操作系统、打字软件、游戏软件等。一般安装在硬盘等外存上,但仅此是不能使用其功能,必须把它们调入内存中运行,才能真正使用其功能。

查看linux占用内存/CPU最多的进程

ps –aux

使用sort排序

查看占用cpu最多的10个进程

ps –aux |sort –k 3 –nr|head –n 10

查看占用cpu最多的10个进程

ps –aux |sort –k 4 –nr|head –n 10

 

sort

-t 设置分隔符

-k 选定列

-r 反向,默认从小到大

-n 以数字形式比较大小

[root@node0 tmp]# cat test

1:10

2:2

[root@node0 tmp]# cat test |sort -t : -k 1 以:为分隔符,排序第1列,从小到大

1:10

2:2

[root@node0 tmp]# cat test |sort -t : -k 2 以:为分隔符,排序第2列,从小到大,不带-n,10比2小,按字符串比较

1:10

2:2

[root@node0 tmp]# cat test |sort -t : -k 2 –n 以:为分隔符,排序第2列,从小到大,带-n,按数字比较

2:2

1:10

[root@node0 tmp]# cat test |sort -t : -k 2 –nr 以:为分隔符,排序第2列,从大到小,带-n,按数字比较

 

1:10

2:2

以上是关于查看占用内存最多的进程的主要内容,如果未能解决你的问题,请参考以下文章

查看Linux占用内存/CPU最多的进程

查看linux占用内存/CPU最多的进程

查看linux占用内存/CPU最多的进程

Linux(CentOS) 查看当前占用CPU或内存最多的K个进程

Linux查看当前占用CPU或内存最多的n个进程

Linux查看当前占用CPU或内存最多的n个进程