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


基础条件:需要安装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. Unmanaged Exports使用方法

    Unmanaged Exports,可以利用C#生成非托管的DLL文件. 从https://sites.google.com/site/robertgiesecke/下载UnmanagedExport ...

  2. Springmvc responsebody 返回对象属性 是date日期格式时 如何返回给前台自己想要的形式

    1添加依赖 <!-- Jackson Json处理工具包 -->            <dependency>              <groupId>org ...

  3. 数据库表结构设计方法及原则(li)

    数据库设计的三大范式:为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满 ...

  4. springmvc配置文件web.xml详解各方总结(转载)

    Spring分为多个文件进行分别的配置,其中在servlet-name中如果没有指定init-param属性,那么系统自动寻找的spring配置文件为[servlet-name]-servlet.xm ...

  5. [连载]《C#通讯(串口和网络)框架的设计与实现》- 10.宿主程序详细设计

    目       录 第十章           宿主程序详细设计... 2 10.1        配置文件设计... 3 10.2        加载设备驱动... 4 10.3        加载 ...

  6. iOS通知的整理笔记

    iOS通知用于高耦合界面的传值确实方便快捷. 需要实现模态弹出的视图控制器上,有一个视图控制器可以导航.这必定要将这个视图控制器的导航视图控制器naVC.view添加到模态弹出的视图控制器presen ...

  7. ubuntu自动执行

    一般先写个sh脚本文件---->要执行的语句写入sh文件----->chromd -x ???.sh增加权限即可 crontab -e * * * * * /home/???.sh */1 ...

  8. 动态调用WebService

    WebService内容 using Microsoft.CSharp;using System;using System.CodeDom;using System.CodeDom.Compiler; ...

  9. 解决ubuntu eclipse中 Android SDK Manager 图标不见的方法

    在eclipse中选择的步骤如下:   Window ---> Custom Perspective  --> command Group Availability ----> an ...

  10. 利用联合双边滤波或引导滤波进行升采样(Upsampling)技术提高一些耗时算法的速度。

    这十年来,在图像处理领域提出了很多新的图像分析和处理方法,包括是自动的以及一些需要有人工参与的,典型的比如stereo depth computations.image colorization.to ...