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


基础条件:需要安装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. Android 5.0源码编译问题

    如果是自己通过repo和git直接从google官网上download的源码,请忽略这个问题,但是由于google在国内被限制登录,通过这一种方法不是每个人都能download下来源码,通常的做法就是 ...

  2. C# if中连续几个条件判断

    C# if中连续几个条件判断 1.if (条件表达式1 && 条件表达式2) 当条件表达式1为true时 using System; using System.Collections. ...

  3. 超越 JSON: Spearal 序列化协议简介

      Spearal 是一个新的开源的序列化协议,这个协议旨在初步替换JSON 将HTML和移动应用连接到Java的后端. Spearal的主要目的是提供一个序列协议,这个协议即使是在端点间传输的复杂的 ...

  4. .NET DateTime类型变量作为参数时设置默认值

    一个小的 Tips. .NET 中函数参数的默认值需要是编译时常量.如果参数是引用类型,可以设置Null,如果是值类型,可以设置相应的编译时常量,如整型可以用整数,但对于DateTime(结构体,值类 ...

  5. [函数] Firemonkey Windows 重新计算 Font Baseline

    计算字型 Baseline 是一个不常用的函数,但如果想要显示不同大小文字下方对齐,就得用它来计算字型的 Baseline 才行,如果计算不准,显示的文字就会高高低低不整齐. 在 Firemonkey ...

  6. ubuntu安装navicat及常见问题解决

    1.安装navicat Step1: 下载Navicat ,网址:http://www.navicat.com/en/download/download.html Step2:进入下载目录,解压压缩包 ...

  7. java异常处理(父子异常的处理)

    我当初学java异常处理的时候,对于父子异常的处理,我记得几句话“子类方法只能抛出父类方法所抛出的异常或者是其子异常,子类构造器必须要抛出父类构造器的异常或者其父异常”.那个时候还不知道子类方法为什么 ...

  8. datatables中的Options总结(3)

    datatables中的Options总结(3) 十.ColReorder colReorder.fixedColumnsLeft 不允许x列重新排序(从左数) colReorder.fixedCol ...

  9. html5上传图片(二)一解决部分手机拍照上传图片转向问题

    本以为解决跨域上传后没有问题了,不成想被测试找出一个问题,那就是在手机上拍照上传后图片会旋转.很头痛,不过没有办法,问题还是需要解决的.在查阅了一系列资料后我找到了相应的解决方案,利用exif.js获 ...

  10. GitHub Pages 绑定二级域名

    Updated: 2016.06.22 网上搜出一大把,很多还是重复转载的文章,关键是步骤很麻烦,比如:要注册 DNSPod,要 Ping IP(感觉不靠谱,IP是可以变的). 后来看了官方帮助,其它 ...