单独查看内存使用情况的命令:free -m
查看内存及cpu使用情况的命令:top
也可以安装htop工具,这样更直观,
安装命令如下:sudo apt-get install htop
安装完后,直接输入命令:htop
就可以看到内存或cpu的使用情况了。
动态查看一个进程的内存使用
1、top命令
top-d1-ppid[,pid...]//设置为delay1s,默认是delay3s
如果想根据内存使用量进行排序,可以shift+m(Sortbymemoryusage)
静态查看一个进程的内存使用
1、pmap命令
pmap pid
2、ps命令
ps aux|grep process_name
3、查看/proc/process_id/文件夹下的status文件
Name: PHP
State: R (running)
SleepAVG: 0%
Tgid: 21574
Pid: 21574
PPid: 10005
TracerPid: 0
Uid: 1000 1000 1000 1000
Gid: 100 100 100 100
FDSize: 256
Groups: 16 100
VmPeak: 161740 kB
VmSize: 161740 kB
VmLck: 0 kB
VmHWM: 107144 kB
VmRSS: 107144 kB
VmData: 106192 kB
VmStk: 84 kB
VmExe: 5588 kB
VmLib: 7884 kB
VmPTE: 268 kB
Threads: 1
SigQ: 0/69632
SigPnd: 0000000000000000
Shdpnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000001000
SigCgt: 00000001818040a7
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
cpus_allowed: 00000000,00000000,0000000f
Mems_allowed: 1
任务虚拟地址空间的大小 VmSize
应用程序正在使用的物理内存的大小 VmRSS
查看ubuntu的资源占用的命令为$: top
top命令就可以查看内存,cpu和进程了,很方便
top:
主要参数
d:指定更新的间隔,以秒计算。
q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高的优先序执行。
S:累积模式,会将己完成或消失的子行程的cpu时间累积起来。
s:安全模式。
i:不显示任何闲置(Idle)或无用(Zombie)的行程。
显示参数:
PID(Process ID):进程标示号。
USER:进程所有者的用户名。
PR:进程的优先级别。
NI:进程的优先级别数值。
VIRT:进程占用的虚拟内存值。
RES:进程占用的物理内存值。
SHR:进程使用的共享内存值。
S:进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。
%MEM:该进程占用的物理内存和总内存的百分比。
TIME+:该进程启动后占用的总的cpu时间。
Command:进程启动的启动命令名称,如果这一行显示不下,进程会有一个完整的命令行。
top命令
《空格》:立刻刷新。
P:根据cpu使用大小进行排序。
T:根据时间、累计时间排序。
q:退出top命令。
m:切换显示内存信息。
M:根据使用内存大小进行排序。
W:将当前设置写入~/.toprc文件中。这是写top配置文件的推荐方法。
free
1.作用
2.格式
free [-b-k-m] [-o] [-s delay] [-t] [-V]
3.主要参数
-b -k -m:分别以字节(KB、MB)为单位显示内存使用情况。
-t:显示内存总和列。
-o:不显示缓冲区调节列。
uptime
18:59:15 up 25 min, 2 users, load average: 1.23, 1.32, 1.21
现在的时间
系统开机运转到现在经过的时间
连线的使用者数量
最近一分钟,五分钟和十五分钟的系统负载
参数: -V 显示版本资讯。
vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
0 1 24980 10792 8296 47316 5 19 205 52 1161 698 26 3 1 70
1 观察磁盘活动情况
磁盘活动情况主要从以下几个指标了解:
bi:表示从磁盘每秒读取的块数(blocks/s)。数字越大,表示读磁盘的活动越多。
bo:表示每秒写到磁盘的块数(blocks/s)。数字越大,表示写磁盘的活动越多。
wa:cpu等待磁盘I/O(未决的磁盘IO)的时间比例。数字越大,表示文件系统活动阻碍cpu的情况越严重,因为cpu在等待慢速的磁盘系统提供数据。wa为0是最理想的。如果wa经常大于10,可能文件系统就需要进行性能调整了。
2 观察cpu活动情况
vmstat比top更能反映出cpu的使用情况:
us:用户程序使用cpu的时间比例。这个数字越大,表示用户进程越繁忙。
sy:系统调用使用cpu的时间比例。注意,NFS由于是在内核里面运行的,所以NFS活动所占用的cpu时间反映在sy里面。这个数字经常很大的 话,就需要注意是否某个内核进程,比如NFS任务比较繁重。如果us和sy同时都比较大的话,就需要考虑将某些用户程序分离到另外的服务器上面,以免互相 影响。
id:cpu空闲的时间比例。
wa:cpu等待未决的磁盘IO的时间比例。
iostat
用于统计cpu的使用情况及tty设备、硬盘和CD-ROM的I/0量
参数:
-d 显示磁盘行
avg-cpu: %user %nice %sys %iowait %idle
20.25 0.18 2.61 76.39 0.57
%iowait 等待本地I/O时cpu空闲时间的百分比
%idle 未等待本地I/O时cpu空闲时间的百分比
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
hda 9.86 284.34 84.48 685407 2036
每秒传输数(tps)、每秒512字节块读取数(Blk_read/s)、每秒512字节块写入数(Blk_wrtn/s)和512字节块读取(Blk_read)和写入(Blk_wrtn)的总数量。