精华内容
下载资源
问答
  • Linux查看CPU使用情况

    千次阅读 2019-07-12 13:21:44
    linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。而监控CPU的性能一般包括以下3点:运行队列、CPU使用率和上下文切换。 对于每一个CPU来说运行队列最好不要超过3,例如,如果是双核CPU就...

    在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。而监控CPU的性能一般包括以下3点:运行队列、CPU使用率和上下文切换。

    对于每一个CPU来说运行队列最好不要超过3,例如,如果是双核CPU就不要超过6。如果队列长期保持在3以上,说明任何一个进程运行时都不能马上得到cpu的响应,这时可能需要考虑升级cpu。另外满负荷运行cpu的使用率最好是user空间保持在65%~70%,system空间保持在30%,空闲保持在0%~5% 。

    下面总结下查看CPU使用率常用的几个命令。

    1、top

    这个命令很常用,在第三行有显示CPU当前的使用情况。

    [root@li676-235 ~]# top -bn 1 -i -c
    top - 14:19:51 up 138 days, 7:15, 1 user, load average: 0.20, 0.33, 0.39
    Tasks: 115 total, 1 running, 114 sleeping, 0 stopped, 0 zombie
    Cpu(s): 4.5%us, 3.8%sy, 0.0%ni, 91.0%id, 0.6%wa, 0.0%hi, 0.0%si, 0.0%st
    Mem: 1014660k total, 880512k used, 134148k free, 264904k buffers
    Swap: 262140k total, 34788k used, 227352k free, 217144k cached
    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 
    12760 root 20 0 15084 1944 1632 R 2.0 0.2 0:00.01 top -bn 1 -i -c

    如上所示,top命令可以看到总体的系统运行状态和cpu的使用率 。

    %us:表示用户空间程序的cpu使用率(没有通过nice调度)

    %sy:表示系统空间的cpu使用率,主要是内核程序。

    %ni:表示用户空间且通过nice调度过的程序的cpu使用率。

    %id:空闲cpu

    %wa:cpu运行时在等待io的时间

    %hi:cpu处理硬中断的数量

    %si:cpu处理软中断的数量

    %st:被虚拟机偷走的cpu

    2、vmstat

    之前在本博客中有介绍过vmstat的使用,详细使用和参数介绍参考网址:http://www.sijitao.net/1925.html 。

    [root@li676-235 ~]# vmstat 1 5
    procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
     r b swpd free buff cache si so bi bo in cs us sy id wa st
     2 0 34792 68376 147688 356132 16 16 421 385 2 2 5 4 91 1 0
     3 0 34792 97368 147688 326884 0 0 0 0 133 134 15 6 79 0 0
     1 0 34792 62432 147696 360704 0 0 0 88 267 278 63 18 19 0 0
     0 0 34792 97160 147696 326904 0 0 0 0 71 82 12 4 84 0 0
     1 0 34792 56572 147696 364540 0 0 0 4 261 246 61 23 16 0 0

    3、sar

    sar命令语法和vmstat一样。命令不存在时需要安装sysstat包,这个包很有用。

    CPU使用率

    例如每1秒采集一次CPU使用率,共采集5次。

    [root@li676-235 ~]# sar -u 1 5
    Linux 3.18.5-x86_64-linode52 (li676-235) 07/20/2015 _x86_64_ (1 CPU)
    02:41:25 PM CPU %user %nice %system %iowait %steal %idle
    02:41:26 PM all 64.71 0.00 18.63 0.00 0.98 15.69
    02:41:27 PM all 29.47 0.00 22.11 14.74 0.00 33.68
    02:41:28 PM all 67.33 0.00 31.68 0.99 0.00 0.00
    02:41:29 PM all 7.00 0.00 2.00 0.00 0.00 91.00
    02:41:30 PM all 69.00 0.00 23.00 0.00 0.00 8.00
    Average: all 47.79 0.00 19.48 3.01 0.20 29.52

    和top一样,可以看到所有cpu的使用情况。如果需要查看某颗cpu的使用可以用-P参数。例如指定显示0号cpu 的使用情况。

    [root@li676-235 ~]# sar -P 0 -u 1 5
    Linux 3.18.5-x86_64-linode52 (li676-235) 07/20/2015 _x86_64_ (1 CPU)
    02:45:14 PM CPU %user %nice %system %iowait %steal %idle
    02:45:15 PM 0 44.00 0.00 52.00 4.00 0.00 0.00
    02:45:16 PM 0 9.28 0.00 26.80 62.89 1.03 0.00
    02:45:17 PM 0 3.06 0.00 14.29 81.63 1.02 0.00
    02:45:18 PM 0 4.12 0.00 22.68 72.16 1.03 0.00
    02:45:19 PM 0 4.12 0.00 22.68 72.16 1.03 0.00
    Average: 0 13.09 0.00 27.81 58.28 0.82 0.00

    进程队列长度和平均负载状态

    例如每1秒采集一次,共采集5次。

    [root@li676-235 ~]# sar -q 1 5
    Linux 3.18.5-x86_64-linode52 (li676-235) 07/20/2015 _x86_64_ (1 CPU)
    02:48:47 PM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15
    02:48:48 PM 1 133 0.34 0.43 0.41
    02:48:49 PM 2 132 0.34 0.43 0.41
    02:48:50 PM 1 133 0.34 0.43 0.41
    02:48:51 PM 2 134 0.31 0.42 0.40
    02:48:52 PM 1 133 0.31 0.42 0.40
    Average: 1 133 0.33 0.43 0.41

    输出项:

    runq-sz:运行队列的长度(等待运行的进程数)

    plist-sz:进程列表中进程(processes)和线程(threads)的数量

    ldavg-1:最后1分钟的系统平均负载(System load average)

    ldavg-5:过去5分钟的系统平均负载

    ldavg-15:过去15分钟的系统平均负载

    进程创建的平均值和上下文切换的次数

    例如每1秒收集一次,共收集5次。

    [root@li676-235 ~]# sar -w 1 5 
    Linux 3.18.5-x86_64-linode52 (li676-235) 07/20/2015 _x86_64_ (1 CPU)
    02:54:03 PM proc/s cswch/s
    02:54:04 PM 1.01 156.57
    02:54:05 PM 1.00 132.00
    02:54:06 PM 2.00 201.00
    02:54:07 PM 2.02 126.26
    02:54:08 PM 2.00 114.00
    Average: 1.61 145.98

    sar命令也可以获取过去指定日期的性能参数。

    [root@li676-235 ~]# sar -u -f /var/log/sa/sa20 
    Linux 3.18.5-x86_64-linode52 (li676-235) 07/20/2015 _x86_64_ (1 CPU)
    01:10:01 PM CPU %user %nice %system %iowait %steal %idle
    01:20:02 PM all 25.78 0.00 8.88 3.59 0.15 61.60
    01:30:01 PM all 26.06 0.00 9.96 3.33 0.10 60.55
    01:40:01 PM all 25.73 0.00 9.17 3.70 0.09 61.32
    01:50:01 PM all 25.70 0.00 9.50 2.79 0.12 61.89
    02:00:01 PM all 26.70 0.00 9.73 2.20 0.10 61.28
    02:10:01 PM all 26.16 0.00 9.56 4.34 0.11 59.82
    02:20:01 PM all 25.49 0.00 9.61 2.76 0.07 62.07
    02:30:01 PM all 26.47 0.00 9.94 0.64 0.30 62.65
    02:40:02 PM all 27.32 0.00 10.37 3.86 0.15 58.30
    02:50:02 PM all 26.98 0.00 10.38 4.56 0.13 57.95
    Average: all 26.24 0.00 9.71 3.18 0.13 60.74

    4、mpstat

    这个命令也在sysstat包中,语法类似。

    例如每1秒收集一次,共5次。

    [root@li676-235 ~]# mpstat 1 5
    Linux 3.18.5-x86_64-linode52 (li676-235) 07/20/2015 _x86_64_ (1 CPU)
    03:01:18 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
    03:01:19 PM all 52.53 0.00 23.23 0.00 0.00 0.00 0.00 0.00 24.24
    03:01:20 PM all 21.00 0.00 4.00 0.00 0.00 0.00 0.00 0.00 75.00
    03:01:21 PM all 53.00 0.00 18.00 0.00 0.00 0.00 0.00 0.00 29.00
    03:01:22 PM all 26.00 0.00 3.00 0.00 0.00 0.00 0.00 0.00 71.00
    03:01:23 PM all 46.00 0.00 18.00 0.00 0.00 0.00 0.00 0.00 36.00
    Average: all 39.68 0.00 13.23 0.00 0.00 0.00 0.00 0.00 47.09

    cpu使用情况比sar更加详细些,也可以用-P指定某颗cpu 。

    5、iostat

    这个命令主要用来查看io使用情况,也可以来查看cpu,个人感觉不常用。

    [root@li676-235 ~]# iostat -c 1 2
    Linux 3.18.5-x86_64-linode52 (li676-235) 07/20/2015 _x86_64_ (1 CPU)
    avg-cpu: %user %nice %system %iowait %steal %idle
     4.53 0.01 3.81 0.63 0.04 90.99
    avg-cpu: %user %nice %system %iowait %steal %idle
     38.00 0.00 14.00 0.00 0.00 48.00

    6、dstat

    每秒cpu使用率情况获取

    [root@li676-235 ~]# dstat -c
    ----total-cpu-usage----
    usr sys idl wai hiq siq
     5 4 91 1 0 0
     27 11 62 0 0 0
     52 11 37 0 0 0
     26 10 63 0 0 1
     50 13 37 0 0 1
     21 6 72 0 0 0

    最占cpu的进程获取

    [root@li676-235 ~]# dstat --top-cpu
    -most-expensive-
     cpu process 
    mysqld 1.5
    php-fpm: pool 24
    mysqld 59

     

    展开全文
  • linux查看cpu使用情况的命令

    千次阅读 2019-01-10 10:59:44
    linux查看cpu使用情况的命令: top vmstat sar mpstat 1 5 iostat -c dstat -c 参考的下面的文章: https://blog.csdn.net/albenxie/article/details/72885951

    linux中查看cpu使用情况的命令:
    top
    vmstat
    sar
    mpstat 1 5
    iostat -c
    dstat -c
    参考的下面的文章:
    https://blog.csdn.net/albenxie/article/details/72885951

    展开全文
  • Linux系统查看CPU使用率、内存使用率、磁盘使用率

    万次阅读 多人点赞 2019-04-16 15:17:00
    一、查看CPU使用率 1. top 命令 top命令可以看到总体的系统运行状态和cpu的使用率 。 %us:表示用户空间程序的cpu使用率(没有通过nice调度) %sy:表示系统空间的cpu使用率,主要是内核程序。 %ni:表示用户空间...

    一、查看CPU使用率

    1. top 命令

    [root@sss ~]# top
    top - 16:54:38 up 7 days,  5:13,  3 users,  load average: 0.00, 0.01, 0.05
    Tasks:  77 total,   2 running,  75 sleeping,   0 stopped,   0 zombie
    %Cpu(s):  0.7 us,  0.3 sy,  0.0 ni, 99.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    KiB Mem :  1882232 total,   813020 free,   330164 used,   739048 buff/cache
    KiB Swap:        0 total,        0 free,        0 used.  1386608 avail Mem 
    
      PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND                                                                                                                                        
    17215 root       0 -20  127504  12176   9560 S  0.7  0.6  21:46.45 AliYunDun                                                                                                                                      
     2770 root      20   0  573932  17232   6088 S  0.3  0.9   1:11.38 tuned                                                                                                                                          
        1 root      20   0   43548   3844   2588 S  0.0  0.2   0:06.54 systemd                                                                                                                                        
        2 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kthreadd                                                                                                                                       
        3 root      20   0       0      0      0 S  0.0  0.0   0:08.75 ksoftirqd/0                                                                                                                                    
        5 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kworker/0:0H              
    ... ...                                                                                                                                 
    

    top命令可以看到总体的系统运行状态和cpu的使用率 。

    %us:表示用户空间程序的cpu使用率(没有通过nice调度)
    %sy:表示系统空间的cpu使用率,主要是内核程序。
    %ni:表示用户空间且通过nice调度过的程序的cpu使用率。
    %id:空闲cpu
    %wa:cpu运行时在等待io的时间
    %hi:cpu处理硬中断的数量
    %si:cpu处理软中断的数量
    %st:被虚拟机偷走的cpu
    注:99.0 id,表示空闲CPU,即CPU未使用率,100%-99.0%=1%,即系统的cpu使用率为1%。
    

    2、vmstat

    详细使用和参数介绍参考网址

    3、sar

    sar命令语法和vmstat一样。命令不存在时需要安装sysstat包,这个包很有用。
    

    命令示例:

    例如每1秒采集一次CPU使用率,共采集5次。
    
    [root@sss ~]# sar -u 1 5
    Linux 3.10.0-957.10.1.el7.x86_64 (izuf633l0ge76tv5mzalpmz)      04/16/2019      _x86_64_        (1 CPU)
    
    04:56:03 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle
    04:56:04 PM     all      0.00      0.00      0.00      0.00      0.00    100.00
    04:56:05 PM     all      0.00      0.00      0.00      0.00      0.00    100.00
    04:56:06 PM     all      0.99      0.00      0.99      0.00      0.00     98.02
    04:56:07 PM     all      0.00      0.00      0.00      0.00      0.00    100.00
    04:56:08 PM     all      0.00      0.00      0.00      0.00      0.00    100.00
    Average:        all      0.20      0.00      0.20      0.00      0.00     99.60
    

    和top一样,可以看到所有cpu的使用情况。如果需要查看某颗cpu的使用可以用-P参数。例如指定显示0号cpu 的使用情况。

    [root@sss ~]# sar -P 0 -u 1 5
    Linux 3.10.0-957.10.1.el7.x86_64 (izuf633l0ge76tv5mzalpmz)      04/16/2019      _x86_64_        (1 CPU)
    
    04:39:13 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle
    04:39:14 PM       0      0.00      0.00      0.99      0.00      0.00     99.01
    04:39:15 PM       0      0.00      0.00      0.00      0.00      0.00    100.00
    04:39:16 PM       0      0.00      0.00      0.00      0.00      0.00    100.00
    04:39:17 PM       0      0.00      0.00      0.00      0.00      0.00    100.00
    04:39:18 PM       0      1.00      0.00      0.00      0.00      0.00     99.00
    Average:          0      0.20      0.00      0.20      0.00      0.00     99.60
    [root@izuf633l0ge76tv5mzalpmz ~]# 
    

    进程队列长度和平均负载状态
    例如每1秒采集一次,共采集5次。

    [root@sss ~]# sar -q 1 5  
    Linux 3.10.0-957.10.1.el7.x86_64 (izuf633l0ge76tv5mzalpmz)      04/16/2019      _x86_64_        (1 CPU)
    
    04:40:14 PM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
    04:40:15 PM         0       149      0.00      0.01      0.05         0
    04:40:16 PM         0       149      0.00      0.01      0.05         0
    04:40:17 PM         0       149      0.00      0.01      0.05         0
    04:40:18 PM         1       149      0.00      0.01      0.05         0
    04:40:19 PM         1       149      0.00      0.01      0.05         0
    Average:            0       149      0.00      0.01      0.05         0
    

    输出项:

    runq-sz:运行队列的长度(等待运行的进程数)
    
    plist-sz:进程列表中进程(processes)和线程(threads)的数量
    
    ldavg-1:最后1分钟的系统平均负载(System load average)
    
    ldavg-5:过去5分钟的系统平均负载
    
    ldavg-15:过去15分钟的系统平均负载
    

    创建的平均值和上下文切换的次数
    例如每1秒收集一次,共收集5次。

    [root@sss ~]# sar -w 1 5 
    Linux 3.10.0-957.10.1.el7.x86_64 (izuf633l0ge76tv5mzalpmz)      04/16/2019      _x86_64_        (1 CPU)
    
    04:41:39 PM    proc/s   cswch/s
    04:41:40 PM      0.00    274.26
    04:41:41 PM      0.00    277.78
    04:41:42 PM      0.00    285.00
    04:41:43 PM      0.00    280.00
    04:41:44 PM      0.00    270.00
    Average:         0.00    277.40
    

    sar命令也可以获取过去指定日期的性能参数。

    [root@sss ~]# sar -u -f /var/log/sa/sa08
    Linux 3.10.0-693.2.2.el7.x86_64 (localhost.localdomain)         04/08/2019      _x86_64_        (1 CPU)
    
    10:54:35 AM       LINUX RESTART
    
    11:00:02 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
    11:10:01 AM     all     12.93      0.23      2.89      1.54      0.00     82.41
    11:20:01 AM     all     46.58      0.00      8.81      0.79      0.00     43.82
    11:30:01 AM     all     44.93      0.00      9.68      0.15      0.00     45.24
    11:40:02 AM     all      0.25      0.00      0.15      0.00      0.00     99.60
    11:50:01 AM     all      0.19      0.00      0.13      0.00      0.00     99.68
    12:00:01 PM     all      0.31      0.00      0.19      0.14      0.00     99.37
    ... ...
    

    4、mpstat

    这个命令也在sysstat包中,语法类似。
    cpu使用情况比sar更加详细些,也可以用-P指定某颗cpu 。
    

    例如每1秒收集一次,共5次。

    [root@sss ~]# mpstat 1 5 
    Linux 3.10.0-957.10.1.el7.x86_64 (izuf633l0ge76tv5mzalpmz)      04/16/2019      _x86_64_        (1 CPU)
    
    04:58:01 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
    04:58:02 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
    04:58:03 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
    04:58:04 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
    04:58:05 PM  all    1.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
    04:58:06 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
    Average:     all    0.20    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.80
    

    5、iostat

    这个命令主要用来查看io使用情况,也可以来查看cpu,个人感觉不常用。
    

    示例

    [root@sss ~]# iostat -c 1 2
    Linux 3.10.0-957.10.1.el7.x86_64 (izuf633l0ge76tv5mzalpmz)      04/16/2019      _x86_64_        (1 CPU)
    
    avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               0.26    0.00    0.21    0.01    0.00   99.53
    
    avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               0.00    0.00    0.00    0.00    0.00  100.00
    

    6、dstat

    每秒cpu使用率情况获取

    [root@sss ~]#  dstat -c
    ----total-cpu-usage----
    usr sys idl wai hiq siq
      0   0 100   0   0   0
      0   1  99   0   0   0
      1   0  99   0   0   0
      0   0 100   0   0   0
      0   0 100   0   0   0
      1   1  98   0   0   0
      0   0 100   0   0   0
      ... ...
    

    最占cpu的进程获取

    [root@sss ~]# dstat --top-cpu  
    -most-expensive-
      cpu process   
    AliYunDun    0.2
    AliYunDun    2.0
    mysqld       1.0
    AliYunDun    1.0
    kworker/0:1H 1.0
    AliYunDun    1.0
    AliYunDun    1.0
    AliYunDun    1.0
    

    二、查看内存使用率

    1、top命令

    top 命令查看内存使用率

    查看第四行: KiB Mem
    内存使用率: used/ total
    

    2、free命令

    free命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。在Linux系统监控的工具中,free命令是最经常使用的命令之一。

    1.命令格式:
    free [参数]
    
    2.命令功能:
    free 命令显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存。共享内存将被忽略
    
    3.命令参数:
    -b  以Byte为单位显示内存使用情况。 
    
    -k  以KB为单位显示内存使用情况。 
    
    -m  以MB为单位显示内存使用情况。
    
    -g   以GB为单位显示内存使用情况。 
    
    -o  不显示缓冲区调节列。 
    
    -s<间隔秒数>  持续观察内存使用状况。 
    
    -t  显示内存总和列。 
    
    -V  显示版本信息。 
    
    4.使用实例:

    实例1:显示内存使用情况

    命令示例:

    free [-k] # 以 kb  为单位显示内存使用状况
    free -g # 以 G 为单位显示内存使用状况
    free -m # 以 M 为单位显示内存使用状况
    free -t  # 以总和的形式显示内存的使用信息
    free -s 1 # 每一秒显示内存使用情况
    

    输出:

    [root@sss ~]# free
                  total        used        free      shared  buff/cache   available
    Mem:        1882232      331760      811004         592      739468     1384944
    Swap:             0           0           0
    
    [root@sss ~]# free -g
                  total        used        free      shared  buff/cache   available
    Mem:              1           0           0           0           0           1
    Swap:             0           0           0
    
    [root@sss ~]# free -m
                  total        used        free      shared  buff/cache   available
    Mem:           1838         324         791           0         722        1352
    Swap:             0           0           0
    
    [root@sss ~]# free -t
                  total        used        free      shared  buff/cache   available
    Mem:        1882232      331760      811004         592      739468     1384948
    Swap:             0           0           0
    Total:      1882232      331760      811004
    
    [root@sss ~]# free -s 1
                  total        used        free      shared  buff/cache   available
    Mem:        1882232      331760      811004         592      739468     1384948
    Swap:             0           0           0
    
                  total        used        free      shared  buff/cache   available
    Mem:        1882232      331784      810980         592      739468     1384924
    Swap:             0           0           0
    
                  total        used        free      shared  buff/cache   available
    Mem:        1882232      331784      810980         592      739468     1384924
    Swap:             0           0           0
    ... ...
    

    说明–对这些数值的解释:

    total:总计物理内存的大小。
    
    used:已使用多大。
    
    free:可用有多少。
    
    Shared:多个进程共享的内存总额。
    
    Buff/cache:磁盘缓存的大小。
    

    第三行是交换分区SWAP的,也就是我们通常所说的虚拟内存。
    当可用内存少于额定值的时候,就会进行交换

    如何看额定值:

    命令:

    cat /proc/meminfo 
    

    输出:

    [root@sss ~]# cat /proc/meminfo
    MemTotal:        1882232 kB
    MemFree:          811244 kB
    MemAvailable:    1385300 kB
    Buffers:           81268 kB
    Cached:           602500 kB
    SwapCached:            0 kB
    Active:           601948 kB
    Inactive:         379880 kB
    Active(anon):     298392 kB
    Inactive(anon):      256 kB
    Active(file):     303556 kB
    Inactive(file):   379624 kB
    Unevictable:           0 kB
    Mlocked:               0 kB
    SwapTotal:             0 kB
    SwapFree:              0 kB
    Dirty:               320 kB
    Writeback:             0 kB
    AnonPages:        298052 kB
    Mapped:            47236 kB
    Shmem:               592 kB
    Slab:              55772 kB
    SReclaimable:      44076 kB
    SUnreclaim:        11696 kB
    KernelStack:        2384 kB
    PageTables:         5808 kB
    NFS_Unstable:          0 kB
    Bounce:                0 kB
    WritebackTmp:          0 kB
    CommitLimit:      941116 kB
    Committed_AS:     810896 kB
    VmallocTotal:   34359738367 kB
    VmallocUsed:       10604 kB
    VmallocChunk:   34359719676 kB
    HardwareCorrupted:     0 kB
    AnonHugePages:    237568 kB
    CmaTotal:              0 kB
    CmaFree:               0 kB
    HugePages_Total:       0
    HugePages_Free:        0
    HugePages_Rsvd:        0
    HugePages_Surp:        0
    Hugepagesize:       2048 kB
    DirectMap4k:       63360 kB
    DirectMap2M:     2033664 kB
    DirectMap1G:           0 kB
    

    交换将通过三个途径来减少系统中使用的物理页面的个数:

    1.减少缓冲与页面cache的大小, 
    
    2.将系统V类型的内存页面交换出去,  
    
    3.换出或者丢弃页面。(Application 占用的内存页,也就是物理内存不足)。 
    

    事实上,少量地使用swap是不是影响到系统性能的。

    那buffers和cached都是缓存,两者有什么区别呢?

    为了提高磁盘存取效率, Linux做了一些精心的设计, 除了对dentry进行缓存(用于VFS,加速文件路径名到inode的转换), 还采取了两种主要Cache方式:Buffer Cache和Page Cache。前者针对磁盘块的读写,后者针对文件inode的读写。这些Cache有效缩短了 I/O系统调用(比如read,write,getdents)的时间。
    
    磁盘的操作有逻辑级(文件系统)和物理级(磁盘块),这两种Cache就是分别缓存逻辑和物理级数据的。
    
    Page cache实际上是针对文件系统的,是文件的缓存,在文件层面上的数据会缓存到page cache。文件的逻辑层需要映射到实际的物理磁盘,这种映射关系由文件系统来完成。当page cache的数据需要刷新时,page cache中的数据交给buffer cache,因为Buffer Cache就是缓存磁盘块的。但是这种处理在2.6版本的内核之后就变的很简单了,没有真正意义上的cache操作。
    
    Buffer cache是针对磁盘块的缓存,也就是在没有文件系统的情况下,直接对磁盘进行操作的数据会缓存到buffer cache中,例如,文件系统的元数据都会缓存到buffer cache中。
    
    简单说来,page cache用来缓存文件数据,buffer cache用来缓存磁盘数据。在有文件系统的情况下,对文件操作,那么数据会缓存到page cache,如果直接采用dd等工具对磁盘进行读写,那么数据会缓存到buffer cache。
    
    所以我们看linux,只要不用swap的交换空间,就不用担心自己的内存太少.如果常常swap用很多,可能你就要考虑加物理内存了.这也是linux看内存是否够用的标准.
    
    如果是应用服务器的话,一般只看第二行,+buffers/cache,即对应用程序来说free的内存太少了,也是该考虑优化程序或加内存了。
    
    实例2:以总和的形式显示内存的使用信息

    命令:

     	free -t 
    

    输出:

    [root@sss ~]# free -t
                  total        used        free      shared  buff/cache   available
    Mem:        1882232      331760      811004         592      739468     1384948
    Swap:             0           0           0
    Total:      1882232      331760      811004
    
    实例3:周期性的查询内存使用信息

    命令:

    free -s 10
    

    输出:

    [root@sss ~]# free -s 10
                  total        used        free      shared  buff/cache   available
    Mem:        1882232      324924      816688         496      740620     1392280
    Swap:             0           0           0
    
                  total        used        free      shared  buff/cache   available
    Mem:        1882232      324944      816664         496      740624     1392260
    Swap:             0           0           0
    

    说明:

    每10s 执行一次命令
    

    三、查看磁盘使用率

    1、输入df命令

    [root@sss ~]# df
    

    显示详情:

    Filesystem1K-blocksUsedAvailableUse%Mounted on
    /dev/vda14115180837942443524413210%/
    devtmpfs93064409306440%/dev
    tmpfs94111609411160%/dev/shm
    tmpfs9411164689406481%/run
    tmpfs94111609411160%/sys/fs/cgroup
    tmpfs18822401882240%/run/user/0

    说明

    磁盘使用率=(Used列数据之和)/(1k-blocks列数据之和)
    

    磁盘和内存的区别与联系:

    (磁盘--也叫硬盘--或是U盘--或是移动硬盘)
    1、硬盘与内存都是存储器,一个是内部,一个是外部。
    
    2、硬盘与内存的区别是很大的,这里只谈最主要的三点:
    	1)内存是计算机的工作场所,硬盘用来存放暂时不用的信息;
    	2)内存是半导体材料制作,硬盘是磁性材料制作;
    	3)内存中的信息会随掉电而丢失,硬盘中的信息可以长久保存。
    	
    3、内存与硬盘的联系也非常密切:
    		硬盘上的信息永远是暂时不用的,要用请装入内存!
    		CPU与硬盘不发生直接的数据交换,CPU只是通过控制信号指挥硬盘工作,硬盘上的信息只有在装入内存后才能被处理。
    		
    4、计算机的启动过程就是一个从硬盘上把最常用信息装入内存的过程。
    
    5、硬盘则决定你的电脑可以装下多少东西,内存则决定你的电脑开机后一次最多可以运行多少程序(如手机运行内存)。
    
    展开全文
  • Linux下快速查看CPU使用情况比较常用的命令是free、top、ps。这篇文章来看下如何在Linux下检查服务器的CPU使用情况。我的LinuxLinux-Ubuntu-server-15.04,如果是图形界面,有些统计会看起来更直观。

    Linux下快速查看CPU使用情况比较常用的命令是free、top、ps。这篇文章来看下如何在Linux下检查服务器的CPU使用情况。我的Linux是Linux-Ubuntu-server-15.04,如果是图形界面,有些统计会看起来更直观。

    1.free

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

    2.top

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


    3.atop

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


    4.htop

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

    5.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进行排序:ps aux --sort -rss.


    6.smem

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

    7.vmstat

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

    8.nmon

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

    9.memstat

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

    10.图形化支持GNOME System Monitor和KDE System Monitor

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

    1

    $ gnome-system-monitor

    gnome-system-monitor

    KDE System Monitor

    $ ksysguard


    $ ksysguard


    参考地址:http://www.kuqin.com/shuoit/20150110/344314.html

    展开全文
  • linux 查看CPU使用

    千次阅读 2019-02-18 11:14:06
    top命令可以看到总体的系统运行状态和cpu使用效率 %us: 表示用户空间程序的cpu使用效率 %sy:表示系统空间程序的cpu使用效率 %ni: 表示用户空间通过nice调度过的程序的cpu使用效率 %id: 空闲cpu %wa:cpu运行时...
  • 一、Linux查看CPU基本信息,可以使用命令: cat /proc/cpuinfo 例如笔者的虚拟机: [root@promote ~]# cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 37 model name : ...
  • linux 查看cpu和gpu的使用情况

    千次阅读 2017-10-31 21:52:08
    上图第三行就是cpu的使用情况. 参数解释: us:用户空间程序的cpu使用率 sy:系统空间的cpu使用率,主要是内核程序 ni:用户空间且通过nice调度过的程序的cpu使用率 id:空闲cpu wa:cpu运行时在等待io的时间 hi:...
  • linux查看内存和cpu使用情况

    千次阅读 2017-03-30 14:40:57
    就可以查看电脑内存使用情况,具体如下:然后继续查看电脑的cpu使用情况:top 在这发现是firefox的cpu占用太多了,火狐用起来挺方便,但是在打开多个窗口时间一长就会占用大量cpu,从截图上我已经换chrome了。
  • Linux查看CPU和内存使用情况

    万次阅读 2016-11-25 10:35:36
    CPU占用率查看命令:top图中红色部分即为占用百分率,下面是每个进程的CPU占用率,如果服务器是多核CPU可能在下方看到有些进程CPU占用超过100%,这种一般是该进程使用了多核。内存占用率:free -m图中红色部分即为...
  • Linux查看CPU使用率的一些命令

    千次阅读 2019-01-22 09:59:36
    在使用linux系统进行运维的过程中,我们经常要查看一下CPU的使用率...使用频率比较高的命令,可在第三行看到cpu使用情况。 [root@db 22:42 ~]$ top -bn 1 -i -c top - 22:52:17 up 55 days, 22:56, 2 users, loa...
  • Linux查看CPU和GPU使用情况

    千次阅读 2018-10-18 14:34:23
    Linux下查看CPU和GPU使用情况 ...CPU使用情况查看 动态查看 打开终端,输入: top 即可看到实时的CPU使用情况,如下图所示: 按Ctrl+C退出查看。 查看版本 top -h 即可看到当前procps-ng的版本。 GPU使用...
  • Linux系统查看CPU使用率的几个命令

    万次阅读 多人点赞 2017-06-06 18:02:19
    linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。而监控CPU的性能一般包括以下3点:运行队列、CPU使用率和上下文切换。 对于每一个CPU来说运行队列最好不要超过3,例如,如果是双核CPU就...
  • linux top命令查看内存CPU使用情况

    万次阅读 多人点赞 2018-09-22 21:48:58
    查看多核CPU命令 mpstat-PALL和sar-PALL 说明:sar-PALL>aaa.txt重定向输出内容到文件aaa.txt ...经常用来监控linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的...
  • 一、Linux查看CPU基本信息,可以使用命令: cat /proc/cpuinfo 例如笔者的虚拟机: [root@promote ~]# cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 37 model name : Intel(R)...
  • Linux 香港服务器上查看资源使用情况有很多命令可以参考,CPU、内存、IO、NETWORK等资源使用情况都可以通过某些命令查询到,下面小编将详细的讲解CPU使用和内存使用情况查看方式。 Top命令 Top命令很常用,在第...
  • linux 查看cpu, 内存当前使用情况命令

    千次阅读 2012-09-17 20:02:12
    在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要。在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况。运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话...
  • LinuxCPU和内存使用情况查看

    千次阅读 2019-03-05 14:34:55
    vmstat命令可以查看系统整体的cpu,内存的使用情况 [root@izuf643wxgfg kk_bak]# vmstat -t 1 r: 表示系统中 CPU 等待处理的线程。由于 CPU 每次只能处理一个线程,所以,该数值越大,通常表示系统运行越慢。 ...
  • LINUX查看GPU,CPU,内存使用情况

    千次阅读 2018-09-26 20:12:29
    查看linux下的cpu、内存和硬盘大小: 查看cpu的方法   1、 cat /proc/cpuinfo 或者 更直观的查看cpu的型号命令:dmesg |grep -i xeon   查看内存的方法 2、 cat /proc/meminfo 或者 更直观的查看内存的...
  • 3、查看cpu和内存的使用率 4、查看硬盘大小 1、查看cpu的方法 cat /proc/cpuinfo 2、查看内存使用 free -m total:表示物理,内存总量 used:总计分配给缓存(包含Buffer和cache)使用的数量,但其中可能...
  • 一、查看CPU使用率 top命令 top:time of process,查看系统当前的运行情况查看CPU、内存、运行时间、交换分区、执行的线程等信息。 top命令是linux下常用的性能分析工具,能够实时的显示系统中各个进程中资源...
  • Linux查看CPU信息详解

    千次阅读 2015-09-09 23:30:15
    Linux查看CPU信息详解
  • Linux系统查看CPU使用率命令

    千次阅读 2018-11-26 13:55:38
    linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。而监控CPU的性能一般包括以下3点:运行队列、CPU使用率和上下文切换。 对于每一个CPU来说运行队列最好不要超过3,例如,如果是双核CPU就...
  • Linux如何查看CPU、内存、磁盘使用情况

    万次阅读 多人点赞 2020-03-14 22:43:09
    如何使用top 进入top的实时界面后,默认按照CPU的使用率排序,个人觉得按照CPU使用率不太友好 我们可以通过,Shift+m 按键将进程按照内存使用情况排序,可以查看哪些进程消耗内存非常大 Linux中输入:top 键盘按下...
  • Linux查看CPU信息

    万次阅读 2016-11-15 23:04:23
    Linux查看CPU信息cat /proc/cpuinfo1、查看物理CPU的个数cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l 2、查看逻辑CPU的个数cat /proc/cpuinfo|grep "processor"|wc -l 3、查看CPU是几核cat /proc/...
  • Linux查看某个服务CPU占用情况

    千次阅读 2020-12-01 16:38:48
    Linux查看某个服务CPU占用情况 命令 top -u 服务名称 直接使用top可以监听全部服务所占用情况使用 top -u 服务名可以查看指定的服务占用资源情况。 内容解释: PID:进程的ID  USER:进程所有者  PR:进程的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 622,415
精华内容 248,966
关键字:

linux查看cpu的使用情况

linux 订阅