您的位置:首页 > 运维架构 > Linux

Linux下查看内存使用情况方法总结

2018-02-12 12:03 716 查看
转自:http://www.cnblogs.com/xd502djj/archive/2011/03/01/1968041.html

Linux查看CPU和内存使用情况:http://www.cnblogs.com/xd502djj/archive/2011/03/01/1968041.html

有些时候需要确实进程内部当前运行着多少线程,那么以下几个方法值得一用。

根据进程号进行查询:

pstree -p 进程号

top -Hp 进程号

根据进程名字进行查询:

pstree -p `ps -e | grep server | awk '{print $1}'`

pstree -p `ps -e | grep server | awk '{print $1}'` | wc -l


这里利用了管道和命令替换,

关于命令替换,我也是今天才了解,就是说用“括起来的命令会优先执行,然后以其输出作为其他命令的参数,

上述就是用 ps -e | grep server | awk ‘{print $1}’ 的输出(进程号),作为 pstree -p 的参数

管道和命令替换的区别是:

管道:管道符号”|”左边命令的输出作为右边命令的输入

命令替换:将命令替换符”“”中命令的输出作为其他命令相应位置的参数

在做Linux系统优化的时候,物理内存是其中最重要的一方面。自然的,Linux也提供了非常多的方法来监控宝贵的内存资源的使用情况。下面的清单详细的列出了Linux系统下通过视图工具或命令行来查看内存使用情况的各种方法。

1. /proc/meminfo

查看RAM使用情况最简单的方法是通过
/proc/meminfo
。这个动态更新的虚拟文件实际上是许多其他内存相关工具(如:free / ps / top)等的组合显示。
/proc/meminfo
列出了所有你想了解的内存的使用情况。进程的内存使用信息也可以通过/proc/<pid>/statm 和 /proc/<pid>/status 来查看。

1

$ cat /proc/meminfo





2. atop

atop命令是一个终端环境的监控命令。它显示的是各种系统资源(CPU, memory, network, I/O, kernel)的综合,并且在高负载的情况下进行了彩色标注。

1

$ sudo atop





3. free

free命令是一个快速查看内存使用情况的方法,它是对 /proc/meminfo 收集到的信息的一个概述。

1

$ free -h





4. GNOME System Monitor

GNOME System Monitor 是一个显示最近一段时间内的CPU、内存、交换区及网络的使用情况的视图工具。它还提供了一种查看CPU及内存使用情况的方法。

1

$ gnome-system-monitor





5. htop

htop命令显示了每个进程的内存实时使用率。它提供了所有进程的常驻内存大小、程序总内存大小、共享库大小等的报告。列表可以水平及垂直滚动。

1

$ htop





6. KDE System Monitor

功能同 4 中介绍的GENOME版本。

1

$ ksysguard
9c29





7. memstat

memstat是一个有效识别executable(s), process(es) and shared libraries使用虚拟内存情况的命令。给定一个进程ID,memstat可以列出这个进程相关的可执行文件、数据和共享库。

1

$ memstat -p <PID>





8. nmon

nmon是一个基于ncurses的系统基准测试工具,它可以监控CPU、内存、I/O、文件系统及网络资源等的互动模式。对于内存的使用,它可以实时的显示 总/剩余内存、交换空间等信息。

1

$ nmon





9. ps

ps命令可以实时的显示各个进程的内存使用情况。Reported memory usage information includes %MEM (percent of physical memory used), VSZ (total amount of virtual memory used), and RSS (total amount of physical memory used)。你可以使用 “–sort”选项对进程进行排序,例如按RSS进行排序:

1

$ ps aux –sort -rss





10. smem

smem命令允许你统计基于/proc信息的不同进程和用户的内存使用情况。内存使用情况的分析可以导出图表(如条形图和饼图)。

1

$ sudo smem –pie name -c “pss”





11. top

top命令提供了实时的运行中的程序的资源使用统计。你可以根据内存的使用和大小来进行排序。

1

$ top





12. vmstat

vmstat命令显示实时的和平均的统计,覆盖CPU、内存、I/O等内容。例如内存情况,不仅显示物理内存,也统计虚拟内存。

1

$ vmstat -s

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: