Linux查看高内存进程方法大全 (linux查看内存高进程)

随着计算机技术的发展,内存容量越来越大,但是在运行过程中,仍然会出现内存不足的情况。其中,高内存进程占用内存较高,是造成内存不足的主要原因之一。因此,了解如何查看高内存进程非常重要。本篇文章将介绍多个查看高内存进程的方法,供大家参考。

一、使用top命令

top是一个Linux系统资源监视器,可以在终端中查看系统的实时运行情况。其中,可以通过top命令查看系统中最耗费内存的进程。具体操作如下:

1. 打开终端,输入以下命令:

top

2. 在终端中显示类似下面的信息:

“`

top – 10:16:25 up 43 min, 1 user, load average: 0.41, 0.46, 0.47

Tasks: 183 total, 2 running, 181 sleeping, 0 stopped, 0 zombie

%Cpu(s): 1.7 us, 0.7 sy, 0.0 ni, 97.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

MiB Mem : 16044.2 total, 11352.1 free, 1989.9 used, 1702.1 buff/cache

MiB Swap: 16384.0 total, 16284.0 free, 100.0 used. 13736.8 avl Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

75855 root 20 0 1979864 1.1g 39772 S 0.0 7.3 0:20.77 java

67774 root 20 0 1051520 717392 22872 S 0.0 4.4 0:32.19 docker

75475 tomcat 20 0 19.046g 829700 30380 S 0.0 5.1 0:02.17 java

“`

3. 在Processes中,按下shift+m键,会按照内存使用量从高到低排序,可以查看使用内存最多的进程。其中,RES表示进程占用物理内存大小(不包括共享内存和虚拟内存)。

二、使用ps命令

ps命令是一个Linux系统中用于查看进程信息的命令。可以通过ps命令查看系统中进程的详细信息,包括进程ID和占用内存大小等。具体操作如下:

1. 打开终端,输入以下命令(其中,-e选项表示显示所有进程):

ps -e -o pid,user,%mem,command –sort=-%mem | head

2. 在终端中显示类似下面的信息:

“`

PID USER %MEM COMMAND

81816 root 9.9 /usr/bin/python3 /usr/bin/gunicorn –config /etc/gunicorn.d/ga –env DJANGO_SETTINGS_MODULE=ga_core.settings ga_core.wsgi:application

17846 mongodb 5.5 /usr/bin/mongod –config /etc/mongodb.conf

18592 redis 3.3 /usr/bin/redis-server *:6379

76947 root 3.3 /usr/bin/java -Xms256m -Xmx3072m -XX:MaxPermSize=128m -Djava.awt.headless=true -cp /usr/share/t-launcher-packaging/bin/t-launch.jar xt.boot.Boot run

81096 root 2.9 /usr/bin/dockerd -H fd:// –contnerd=/run/contnerd/contnerd.sock

17847 mongodb 2.4 /usr/bin/mongod –config /etc/mongodb.conf

35387 root 1.6 /usr/bin/dockerd -H fd:// –contnerd=/run/contnerd/contnerd.sock

16091 root 1.3 /usr/in/mysqld –basedir=/usr –datadir=/var/lib/mysql –plugin-dir=/usr/lib/mysql/plugin –user=mysql –log-error=/var/log/mysqld.log –pid-file=/run/mysqld/mysqld.pid –socket=/var/lib/mysql/mysql.sock –port=3306

23488 www-data 1.3 php-fpm: pool www

“`

3. 在命令中添加–sort=-%mem选项,可以将结果按照内存使用量从高到低排序。其中,%MEM表示进程占用物理内存大小占总内存大小的百分比。

三、使用em命令

em是一个Linux系统中用于查看进程和内存使用情况的命令,可以根据进程和用户等多种方式进行分类和过滤。具体操作如下:

1. 打开终端,输入以下命令(其中,-r选项表示以内存使用量为基准进行排序):

em -r

2. 在终端中显示类似下面的信息:

“`

PID User Command Swap USS PSS RSS

12355 root /usr/bin/mongod –quiet –cfi 0 403.03M 410.61M 523.85M

29859 mysql /usr/in/mysqld –daemonize- 0 237.89M 244.01M 297.78M

14872 root /usr/bin/dockerd –host=fd:// 0 710.93M 781.37M 922.35M

23271 root /in/iptables -w2 -t nat -A 0 6.77M 8.69M 28.09M

25732 root /usr/bin/dockerd –host=unix: 0 34.08M 36.16M 55.73M

12378 mongodb /usr/bin/mongod –quiet –cfi 0 134.24M 189.43M 243.47M

29777 mysql /usr/in/mysqld –daemonize- 0 2.66M 3.08M 31.49M

15257 root /usr/bin/dockerd -H fd:// –v 0 11.86M 13.37M 26.02M

15261 root /usr/lib/snapd/snapd –no-fork 0 13.01M 13.55M 23.11M

26128 syslog /usr/in/rsyslogd -n 0 5.56M 11.02M 22.22M

26403 root /usr/bin/dockerd –host=fd:// 0 7.42M 8.91M 18.81M

29523 root /usr/bin/dockerd –host=unix: 0 6.56M 8.81M 18.37M

11607 root /usr/bin/dockerd -H fd:// –v 0 9.17M 10.04M 16.31M

28414 root /usr/bin/docker-proxy –proto 0 4.08M 4.66M 10.62M

29626 root /usr/bin/dockerd –host=unix: 0 4.05M 4.56M 10.04M

32234 root /usr/in/nginx -g daemon off 0 3.80M 4.84M 9.85M

29700 root /usr/bin/dockerd -H fd:// –v 0 7.51M 8.32M 9.66M

16980 root /usr/lib/snapd/snapd –n 0 6.80M 7.63M 9.62M

29795 root /usr/bin/dockerd –host=unix: 0 5.16M 5.80M 9.20M

“`

3. 在命令中添加–sort=USS选项,可以将结果根据进程实际使用的内存大小从高到低排序。其中,USS表示进程占用物理内存大小(不包括共享内存和虚拟内存)。

四、使用pidstat命令

pidstat是Linux系统中一个用于查看指定进程的CPU、内存和IO等性能数据的命令。具体操作如下:

1. 打开终端,输入以下命令(其中,-r选项表示查看内存使用情况):

pidstat -r [PID]

2. 在终端中显示类似下面的信息:

“`

Linux 4.4.0-62-generic (xxx) 05/18/2023 _x86_64_ (2 CPU)

05:14:55 PM pid uid tgid total_vm rss softirq majflt minflt pswpin pswpout swapused uname %usr %system %guest %CPU CPU %mem minflt/s majflt/s VSZ RSS LTP

05:14:55 PM 67 1000 67 34070 164 3171 0 50 0 0 0 root 0.15 0.07 0.00 0.22 1 0.00 0.02 0.00 3.74M 172.0K chronyd

05:14:55 PM 88 0 88 12659 166 579 0 8 0 0 0 syslog 0.03 0.02 0.00 0.05 0 0.00 0.00 0.00 1.47M 168.0K rsyslogd

05:14:55 PM 97 0 97 75533 1016 13882 0 163 0 0 0 root 0.49 0.25 0.00 0.74 1 0.05 0.49 0.01 411.82M 1.02M systemd-journal

05:14:55 PM 150 0 150 25291 102 2 0 27 0 0 0 root 0.00 0.01 0.00 0.01 1 0.00 0.00 0.00 8.80M 100.0K systemd-udevd

05:14:55 PM 2977 0 2977 56659 1280 41 6 7 0 0 0 www-data 0.04 0.01 0.00 0.05 1 0.05 0.00 0.00 218.35M 1.24M nginx

“`

3. 修改命令中的[PID]为具体进程ID,即可查看指定进程的内存使用情况。

五、使用pmap命令

pmap命令可以显示进程的内存映射信息,包括虚拟地址、权限、映射文件等。从而可以分析进程的内存使用情况。具体操作如下:

1. 打开终端,输入以下命令(其中,[PID]表示进程ID):

pmap -d [PID]

2. 在终端中显示类似下面的信息:

“`

Address Kbytes RSS Dirty Mode Mapping

00007f69a5585000 920 520 0 r-xp /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18.0.0

00007f69a5ec7000 2023 664 208 rw-p /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18.0.0

00007f69a6c9f000 24 24 24 rw-p [heap]

00007f69a6ca7000 196 108 108 rw-p [heap]

00007f69a8e0e000 132 80 80 rw-p /usr/lib/x86_64-linux-gnu/libnettle.so.6.4

00007f69a901d000 96 44 44 rw-p /usr/lib/x86_64-linux-gnu/libhogweed.so.4.3

00007f69a91a0000 32 20 20 rw-p /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.2

“`

3. 在命令中查找RSS(即常驻内存大小)更大的模块,即可得知占用内存较多的代码位置。

六、使用psutil库

psutil是一个跨平台的Python第三方库,可以提供系统信息和进程运行情况等详细信息。可以通过psutil库查看内存使用量较高的进程。具体操作如下:

1. 安装psutil库(可以通过pip命令进行安装):

pip install psutil

2. 在Python脚本中,输入以下代码:

“`

import psutil

for process in psutil.process_iter(attrs=[‘pid’, ‘name’, ‘memory_info’]):

rss = process.info[‘memory_info’].rss / 1024 / 1024 # 获取进程常驻内存大小(MB)

if rss > 100: # 显示常驻内存大小大于100MB的进程

print(‘PID: {}, Name: {}, Mem: {:.2f} MB’.format(process.info[‘pid’], process.info[‘name’], rss))

“`

3. 运行Python脚本,即可查看常驻内存超过100MB的进程信息。

综上所述,Linux查看高内存进程有多种方法,每种方法都有其特点和优缺点。可以根据具体情况选择合适的方法。同时,为了避免出现内存不足的情况,建议优化程序,减少不必要的内存占用。

相关问题拓展阅读:

  • linux 查看内存被哪些进程
  • Linux下如何查看哪些进程占用的CPU内存资源最多

linux 查看内存被哪些进程

查看占用内存更高的进程

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head

或者top (然后按下P,注意这里是大写)

该命令组合实际上是下面两句命令:

ps aux|head -1

ps aux|grep -v PID|sort -rn -k +3|head

其中之一句主要是为了获取标题(USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND)。

接下来的grep -v PID是将ps aux命令得到的标题去掉,即grep不包含PID这三个字母组合的行,再将其中结果使用sort排序。

sort -rn -k +3该命令中的-rn的r表示是结果倒序排列,n为以数值大小排序,而-k +3则是针对第3列的内容进行排序,再使用head命令获取默认前10行数据。(其中的|表示管道操作)

补充:内容解释

PID:进程的ID

USER:进程所戚态有者

PR:进程的优先级别,薯陪越小越优先被执行

NInice:值

VIRT:进程占用的虚拟内存

RES:进程占用的物理内存

SHR:高手源进程使用的共享内存

S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数

%CPU:进程占用CPU的使用率

%MEM:进程使用的物理内存和总内存的百分比

COMMAND:进程启动命令名称

Linux下如何查看哪些进程占用的CPU内存资源最多

linux下获取占用CPU资世肆源最多的10个进程,可以使用如下命令组合:

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head

linux下获取占用内存资源最多的10个进族裤程,可以使用如下命令组合:

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head

命令组合解析(针对CPU的兆返简,MEN也同样道理):

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head

该命令组合实际上是下面两句命令:

ps aux|head -1

ps aux|grep -v PID|sort -rn -k +3|head

linux查看内存高进程的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux查看内存高进程,Linux查看高内存进程方法大全,linux 查看内存被哪些进程,Linux下如何查看哪些进程占用的CPU内存资源最多的信息别忘了在本站进行查找喔。

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/172708.html<

(0)
运维的头像运维
上一篇2025-03-23 10:58
下一篇 2025-03-23 10:59

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注