使用ps、top、ps_mem命令找出Linux中的最大内存消耗过程

使用ps、top、ps_mem命令找出Linux中的最大内存消耗过程

2020-02-08 16:06:59作者:自力稿源:云网牛站


您可能已经看到Linux系统多次消耗过多的内存,如果是这种情况,那么最好的办法是识别在Linux计算机上消耗过多内存的进程。使用top命令和ps命令可以很容易地识别出它,我曾经同时检查这两个命令,并且都得到了相同的结果。

使用ps命令在Linux中查找最大内存消耗过程

ps命令用于报告当前进程的快照,ps命令代表进程状态,这是一个标准的Linux应用程序,用于查找有关Linux操作系统上正在运行的进程的信息。它用于列出当前正在运行的进程及其进程ID(PID),进程所有者名称,进程优先级(PR)以及正在运行的命令的绝对路径等。

下面的ps命令格式为您提供有关内存消耗最大过程的更多信息:

# ps aux --sort -rss | head

使用以下ps命令格式可仅在输出中包括有关内存消耗过程的特定信息:

# ps -eo pid,ppid,%mem,%cpu,cmd --sort=-%mem | head

如果您只想查看命令名称,而不是命令的绝对路径,请使用下面的ps命令格式:

# ps -eo pid,ppid,%mem,%cpu,comm --sort=-%mem | head

参考:演示讲解Linux中ps命令的使用方法及ps命令实例分析

使用top命令找出Linux中的最大内存消耗过程

Linux top命令是每个人用来监视Linux系统性能的最好,最著名的命令。它显示了在交互式界面上运行的系统进程的实时视图。但是,如果要查找内存消耗最大的进程,请在批处理模式下使用top命令,参考在批处理模式(Batch Mode)下运行top命令

您应该正确理解top命令的输出以解决系统中的性能问题:

# top -c -b -o +%MEM | head -n 20 | tail -15

如果只想查看命令名称,而不是命令的绝对路径,请使用下面的top命令格式:

# top -b -o +%MEM | head -n 20 | tail -15

使用ps_mem命令找出Linux中的最大内存消耗过程

ps_mem实用程序用于显示每个程序使用的核心内存,使用该实用程序,您可以检查每个程序使用了多少内存。它计算程序的专用和共享内存量,并以最适当的方式返回已使用的内存总量。

它使用以下逻辑来计算RAM使用率,总RAM =总和(程序进程的专用RAM)+总和(程序进程的共享RAM):

# ps_mem

相关主题

原文地址:https://www.cnblogs.com/xuanbjut/p/12543636.html

时间: 2024-10-29 19:10:32

使用ps、top、ps_mem命令找出Linux中的最大内存消耗过程的相关文章

用windbg+sos找出程序中谁占用内存过高,谁占用CPU过高(转载)

原文地址: http://www.cnblogs.com/Lawson/archive/2011/01/23/1942692.html 很早看到windbg+sos方面的知识,一直没仔细学习,也许因为自己做的系统还不够复杂,也没线上真实环境查看的权限,一直没学习这方面的知识,最近几天仔细找了这方面的资料,自己也写了个可能造成高CPU高内存的测试web页面,发现确实不错,即使一个生手,也可以用工具连蒙带骗的猜出哪里出了问题,当然对一些命令和内部标示更熟悉了后,可以更好的找出问题所在,非常值得学习.

找出进程中各线程cpu消耗情况

以root用户执行以下命令,以PID 5423举例: 1,根据top命令,找到占用CPU高的进程,找到PID  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND5423 root      20   0  8892 1284  856 R    0  0.0   0:00.04 top 2,找到该进程后,执行如下命令获取线程列表,并按照CPU占用高的线程排序:[[email protected]]# ps -mp

如何快速找出Linux服务器上不该存在恶意或后门文件

如何快速找出Linux服务器上不该存在恶意或后门文件.前段时间我在APT写作时注意到一个问题,我发现网上大多都是关于Windows恶意软件检测的文章以及教程,而关于如何寻找Linux系统上恶意软件的资料却少之又少.因此,这篇文章主要是向大家介绍一些有关检查Linux系统恶意软件的技巧和方法.话不多说,让我们进入正题. 校验二进制文件 有一件事需要检查确认即没有运行的二进制文件被修改.这种类型的恶意软件可以用sshd的版本来支持,以允许使用特定的密码连接到系统,甚至是一些二进制文件的修改版本,它以

找出Linux的名称,版本以及内核详细

This short tutorial is intended to help newbies who don't know how to find out the Linux distribution name, version and kernel details via command line. Method 1 – Distribution & Version Details Command: cat /etc/*-release Sample Output On CentOS 6.4

使用top工具,找出消耗CPU 较多的进程

1.使用top工具,找出消耗CPU 较多的进程 [[email protected] ~]$ top top - 10:48:27 up 23:15,  4 users,  load average: 1.09, 0.43, 0.15 Tasks: 161 total,   3 running, 158 sleeping,   0 stopped,   0 zombie Cpu(s): 74.3%us, 23.7%sy,  0.0%ni,  0.0%id,  2.0%wa,  0.0%hi, 

awk命令之 - 使用awk命令找出利用率超过20%的非镜像设备

使用awk命令找出利用率超过20%的非镜像设备 [[email protected] ~]# df -h Filesystem             Size  Used Avail Use% Mounted on /dev/mapper/rhel-root   10G  3.1G  7.0G  31% / devtmpfs               978M     0  978M   0% /dev tmpfs                  993M     0  993M   0%

当cpu飙升时,找出php中可能有问题的代码行

当你发现一个平时占用cpu比较少的进程突然间占用cpu接近100%时,你如何找到导致cpu飙升的原因?我的思路是,首先找到进程正在执行的代码行,从而确定可能有问题的代码段.然后,再仔细分析有问题的代码段,从而找出原因. 如果你的程序使用的是c.c++编写,那么你可以很容易的找到正在执行的代码行.但是,程序是php编写的,如何找到可能有问题的代码行呢?这个问题就是本文要解决的问题. 背景知识: 如果你对c语言不熟悉的话,可以略过,直接看 示例演示. 大家都知道php是一个解释性语言.用户编写的ph

找出矩阵中含有0最多的一行(find the longest row of zero)

对于一个n*n的矩阵,其中只包含有0,1两种元素且,所有的0都在1之前,请找出矩阵中0最多的一行.(Given an N-by-N matrix of 0s and 1s such that in each row no 0 comes before a 1, find the row with the most 0s in O(N) time.) 初看这题,想到的算法就是每一行都设置一个计数器,记录每行的0的个数,然后找出最大值即可(暴力解法). 算法实现: int* find_the_lon

经典算法学习——快速找出数组中两个数字,相加等于某特定值

这个算法题的描述如下:快速找出一个数组中的两个数字,让这两个数字之和等于一个给定的值.目前我假设数组中的都是各不相等的整数.这道题是我在一次面试中被问到的,由于各种原因,我没回答上来,十分尴尬.其实这道题十分简单,我们使用相对巧妙的方法来实现下.注意不使用两层循环的元素遍历.示例代码上传至:https://github.com/chenyufeng1991/SumTo100 . 算法描述如下: (0)首先对原数组进行排序,成为递增数组: (1)对排序后的数组头部i [0]和数组尾部j [n-1]