监控各个进程、用户的内存使用情况


基础条件:需要安装yum工具
centos 7.0

1、安装smem

[root@VM_31_182_centos src]# yum install smem python-matplotlib python-tk

Dependency Updated:

glib2.i686 0:2.46.2-4.el7                                                                           glib2.x86_64 0:2.46.2-4.el7

Complete!

2、查看各进程的内存使用情况
默认按PSS升序
  • VSS- Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
  • USS- Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
  • PSS- Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
  • RSS- Resident Set Size 实际使用物理内存(包含共享库占用的内存)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
[root@VM_31_182_centos src]# smem
  PID User     Command                         Swap      USS      PSS      RSS
  292 libstoragemgmt /usr/bin/lsmd -d                   0      120      139      584
  372 root     /sbin/iprdump --daemon             0      132      142      312
  349 root     /sbin/iprinit --daemon             0      140      158      400
  347 root     /sbin/iprupdate --daemon           0      144      162      404
 1950 root     /sbin/agetty --keep-baud tt        0      128      173      824
 1951 root     /sbin/agetty --noclear tty1        0      148      194      860
  334 avahi    avahi-daemon: chroot helpe         0       96      217      524
  307 root     /usr/sbin/acpid                    0      172      222      680
  306 root     /usr/sbin/atd -f                   0      224      261     1040
 2518 root     /usr/sbin/anacron -s               0      248      296      648
  246 root     /usr/sbin/lvmetad -f               0      412      465     1212
  312 chrony   /usr/sbin/chronyd -u chrony        0      412      485     1296
  295 avahi    avahi-daemon: running [VM31        0      372      572     1712
  294 root     /usr/lib/systemd/systemd-lo        0      532      632     1680
  255 root     /sbin/auditd -n                    0      556      648     1808
  305 root     /usr/sbin/crond -n                 0      692      728     1564
  247 root     /usr/lib/systemd/systemd-ud        0      708      781     1700
 1747 root     /usr/local/qcloud/stargate/        0      700      812     1728
  297 dbus     /bin/dbus-daemon --system -        0      824      873     1720
  222 root     /usr/lib/systemd/systemd-jo        0      836     1223     2444
 1704 root     /usr/libexec/postfix/master        0     1164     1237     2240
  612 root     /usr/sbin/sshd -D                  0      848     1429     3592
 1719 postfix  pickup -l -t unix -u               0     1180     1748     3936
 1720 postfix  qmgr -l -t unix -u                 0     1224     1793     3984
 2001 root     -bash                              0     1792     1827     2532
 1999 root     sshd: root@pts/0                   0     1692     2365     4844
    1 root     /usr/lib/systemd/systemd --        0     2268     2430     3712
  291 root     /usr/sbin/rsyslogd -n              0     3052     3437     4692
 2953 root     python /usr/bin/smem               0     5568     6249     7676
 2062 root     barad_agent                        0     5816     6760     9112
 2067 root     barad_agent                        0     8172     9235    11908
 2068 root     barad_agent                        0     9552    10556    13088
  293 root     /usr/bin/python -Es /usr/sb        0    14552    15560    18168
 1693 root     /usr/local/sa/agent/secu-tc        0    18544    18544    18544

3、常用命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
查看用户进程占用内存情况
    smem
查看系统占用内存的情况
    smem -w
每一个用户的内存使用情况
    smem -u
按照映射显示内存使用情况
    smem -m
进程名称筛选输出信息
    smem --processfilter="firefox"
以百分比的形式报告内存使用情况
    smem -p
最后一行汇总信息
    smem -t
条形图
    smem --userfilter="root" --bar pid -c"pss rss"
饼图
    smem --userfilter="root" --pie name -s pss


4、参考文档,包括各种命令


Shell命令_smem的更多相关文章

  1. Hadoop Shell命令大全

    hadoop支持命令行操作HDFS文件系统,并且支持shell-like命令与HDFS文件系统交互,对于大多数程序猿/媛来说,shell-like命令行操作都是比较熟悉的,其实这也是Hadoop的极大 ...

  2. Shell命令和流程控制

    Shell命令和流程控制 在shell脚本中可以使用三类命令: 1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字 ...

  3. 在程序中执行shell命令

    在linux系统下的操作中我们会经常用到shell命令来进行,一开始学习进程的时候对于shell命令也进行了思考,认为shell命令就是一个进程的外壳,经过了后来的学习对于这一点也有了更多的认识. 用 ...

  4. Linux远程执行Shell命令或脚本

    ## 远程执行shell命令 ssh [user]@[server] '[command]' # eg. ssh root@192.168.1.1 'uptime' ## 远程执行本地shell脚本 ...

  5. HBase基本shell命令

    HBase基本shell命令 以下shell命令都是经过测试,正常展示,若有不足,还望指点! 1.创建表 create ‘表名称’,‘列族名称1’,‘列族名称1’create 'test_M_01', ...

  6. Linux SHELL 命令入门题目答案(一)

    1.如何使用shell 打印 “Hello World!” (1)如果你希望打印 !,那就不要将其放入双引号中,或者你可以通过转义字符转义(2)echo 'hello world!' 使用单引号ech ...

  7. Linux SHELL 命令入门题目(一)

    新年新气象,注重知识积累,提高手敲代码能力,而不是眼高手低,只会复制黏贴. 1.使用shell 打印 “Hello World!” 2.求变量'hello world'的字符长度 3.$0 .$SHE ...

  8. shell命令获取最新文件的名称

    最近有一个需求,在部署游戏战场服时,从程序包到部署需要做一些本地化的操作,手工操作费时费力,故写一个shell脚本,一键部署. 遇到的问题是每次要部署最新的程序包,因此需要shell命令获取最新的文件 ...

  9. 【转】Hadoop FS Shell命令

    FS Shell 调用文件系统(FS)Shell命令应使用 bin/hadoop fs <args> 的形式. 所有的的FS shell命令使用URI路径作为参数.URI格式是scheme ...

随机推荐

  1. 实现对gridview删除行时弹出确认对话框的一种简单方法

    在VS2008提供的GridView中我们可以直接添加一个CommandField删除列:<asp:CommandField ShowDeleteButton="True" ...

  2. 使用page object模式抓取几个主要城市的pm2.5并从小到大排序后写入txt文档

    #coding=utf-8from time import sleepimport unittestfrom selenium import webdriverfrom selenium.webdri ...

  3. SpringMVC传值、转发、重定向例子

    练习接收页面参数值 使用request 使用@RequestParam注解 使用实体对象 练习向页面传出数据 使用HttpServletRequest和session 使用ModelAndView对象 ...

  4. mariadb 最新精简压缩版 win64 解压即用

    包含版本: mariadb-10.1.18-winx64 mariadb-5.5.53-winx64 32的没有压缩,估计用的人也比较少. 网盘链接: http://pan.baidu.com/s/1 ...

  5. 让ABAP开发者愈加轻松的若干快捷键

    引言 ABAP是一种和当代编程语言在许多方面有着相当不同的编程语言.ABAP的某些方面可能会让我们奇怪,为什么它会如此复杂?而它的某些方面又是那么杰出,给予了ABAP开发者们比其它任何语言更多的便利. ...

  6. 通过使用OpenVPN来构建一个VPN

    首先我们需要简单熟悉一下OpenVPN和VPN概念,方便我们在使用OpenVPN构建VPN时的操作~  VPN概述 VPN,即虚拟专用网络,其功能是:在公用网络上建立专用网络,进行加密通讯.在企业网络 ...

  7. Oracle hint

    1.use_concat 网上说法: CONCATENATION和UNION/UNION ALL操作比较类似,根据OR查询条件,将一个查询分解为两个或更多的部分,然后在去掉两个部分重复的记录.由于CO ...

  8. [MySQL性能优化系列]提高缓存命中率

    1. 背景 通常情况下,能用一条sql语句完成的查询,我们尽量不用多次查询完成.因为,查询次数越多,通信开销越大.但是,分多次查询,有可能提高缓存命中率.到底使用一个复合查询还是多个独立查询,需要根据 ...

  9. MySQL 导入数据

    MySQL中可以使用两种简单的方式来导入MySQL导出的数据. 使用 LOAD DATA 导入数据 MySQL 中提供了LOAD DATA INFILE语句来插入数据. 以下实例中将从当前目录中读取文 ...

  10. Web系统性能测试术语简介

    并发用户 并发一般分为两种情况.一种是严格意义上的并发,即所有的用户在同一时刻做同一件事情或者操作.这种操作一般指做同一类型的业务,比如在信用卡审批业务中,一定数目的用户在同一时刻对已经完成的审批业务 ...