设为首页 收藏本站
查看: 376|回复: 0

[经验分享] 查看Linux系统负载,w、uptime、vmstat、top、sar、free、ps、netstat

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-11-30 10:18:46 | 显示全部楼层 |阅读模式
查看系统负载命令
[iyunv@daixuan ~]# w
06:52:04 up 20:56,  2 users,  load average: 0.00, 0.00, 0.00                        1分钟,5分钟,15分钟之内系统的平均负载
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT             jcpu进行和子进程占用的时间0.26s
root     tty1     -                Sat23    1:33m  0.26s  0.26s -bash
root     pts/0    192.168.101.17   06:12    0.00s  0.13s  0.01s w

[iyunv@daixuan ~]# uptime
07:04:24 up 21:08,  2 users,  load average: 0.00, 0.00, 0.00                       与 w的第一样一样,获取负载值
[iyunv@daixuan ~]# cat /proc/cpuinfo                                                           0代表单核,1二核,.......processor 7代表第8核
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 58
model name      : Intel(R) Core(TM) i5-3230M CPU @ 2.60GHz
stepping        : 9
microcode       : 23
cpu MHz         : 2594.229
cache size      : 3072 KB


vmstat详解
r run表示有多少个任务在跑,一秒钟之内平均有多少进程在使用CPU,排队或者计算
b代表被I/O,磁盘,网络阻塞的任务的个数
memory内存,swpd多少数据量被拿到交换分区,值大并且不断变化,则内存溢出或者有问题
buff  剩余量
cache 剩余量
内存就是参照物,不管是si还是bi都是到内存里去的,si 就是交换分区里出来到内存里的,bi就是硬盘出来到内存里的,也就是读磁盘。so bo 同理
si, swap in内存  进入内存数据量  
so,swap out内存  从内存读出数据量
bi, 从磁盘读出数据输入到内存,读磁盘    长期超过1000,有问题了
bo, 从内存读出数据写入到磁盘里写磁盘  
interput 1秒钟中断的次数
us 用户进程占CPU的百分比
sy内核进程占用百分比
idle 空闲的
wait 等待CPU的进程占用百分比

[iyunv@daixuan ~]# vmstat 1               1秒钟显示一次,一直进行下去
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
0  0      0 1733408  76268  65036    0    0     1     1    6    5  0  0 100  0  0
0  0      0 1733400  76268  65060    0    0     0     0   24   19  0  0 100  0  0
0  0      0 1733400  76268  65060    0    0     0     0   16   16  0  0 100  0  0
0  0      0 1733400  76268  65060    0    0     0     0   13   14  0  0 100  0  0
0  0      0 1733400  76268  65060    0    0     0     0   15   16  0  0 100  0  0
0  0      0 1733400  76268  65060    0    0     0     0   15   17  0  0 100  0  0
0  0      0 1733276  76276  65056    0    0     0    12   19   18  0  0 100  0  0
0  0      0 1733276  76284  65052    0    0     0    40   33   26  0  0 99  0  0
^C
[iyunv@daixuan ~]# vmstat 1 5           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
0  0      0 1733284  76284  65060    0    0     1     1    6    5  0  0 100  0  0
0  0      0 1733276  76284  65060    0    0     0     0   20   16  0  0 100  0  0
0  0      0 1733276  76292  65056    0    0     0    40   30   21  0  0 100  0  0
0  0      0 1733276  76292  65060    0    0     0     0   18   16  0  0 100  0  0
0  0      0 1733276  76292  65060    0    0     0     0   16   17  0  0 100  0  0



top 可以查看很多信息,负载、内存、cpu使用率、进程信息等和w的区别很大
[iyunv@daixuan ~]# top -d 1                                           1秒刷新一次
[iyunv@daixuan ~]# top              默认3秒一次  shift+m=M 内存占用最大的排在最上面,P切换回按CPU使用率排序,T按时间排序,q键退出
top - 07:07:54 up 21:12,  2 users,  load average: 0.00, 0.00, 0.00
Tasks: 108 total,   1 running, 107 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.2%sy, 0.0%ni, 99.8%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1938632k total,   205604k used,  1733028k free,    76148k buffers
Swap:  4194300k total,        0k used,  4194300k free,    65024k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
4570 root      20   0  2692 1128  884 R  1.0  0.1   0:00.06 top
    1 root      20   0  2900 1420 1208 S  0.0  0.1   0:04.63 init
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.05 kthreadd

PR   0 到39            PR越小,优先级越高
NI   -20到19         
VIRT 虚拟内存
RES  物理内存
SHR 共享内存
s 进程状态
CPU使用百分比
内存使用百分比
time时间
PID是进程的ID号,
[iyunv@daixuan ~]# ls /proc/                                                                    1,10.11.1148都是PID
1     1642  1997  30    453   910          ioports       partitions
10    1652  2     31    4572  94           irq           sched_debug
11    1685  20    32    4593  95           kallsyms      schedstat
1148  1686  21    33    46    acpi         kcore         scsi
[iyunv@daixuan ~]# top -bn1                                                                  一次性显示出来,不是动态显示
top - 08:27:00 up 22:31,  3 users,  load average: 0.00, 0.00, 0.00
Tasks: 112 total,   1 running, 111 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.1%sy,  0.0%ni, 99.9%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1938632k total,   208612k used,  1730020k free,    77184k buffers
Swap:  4194300k total,        0k used,  4194300k free,    65084k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
4613 root      20   0  2716 1012  776 R  2.0  0.1   0:00.01 top
    1 root      20   0  2900 1420 1208 S  0.0  0.1   0:04.63 init
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.05 kthreadd
    3 root      RT   0     0    0    0 S  0.0  0.0   0:00.06 migration/0
    4 root      20   0     0    0    0 S  0.0  0.0   0:00.15 ksoftirqd/0
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/0
top哪个选项可以展示最后一列为更加详细的进程?
[iyunv@daixuan ~]# top -c
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
4620 root      20   0  2692 1132  888 R  0.3  0.1   0:00.06 top -c
    1 root      20   0  2900 1420 1208 S  0.0  0.1   0:04.63 /sbin/init
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.05 [kthreadd]
    3 root      RT   0     0    0    0 S  0.0  0.0   0:00.06 [migration/0]
    4 root      20   0     0    0    0 S  0.0  0.0   0:00.15 [ksoftirqd/0]



sar命令
[iyunv@daixuan ~]# yum install -y sysstat                      安装sysstat包,安装sar命令
[iyunv@daixuan ~]# sar -n DEV                                      查看网卡的流量,10分钟记录一次
Linux 2.6.32-573.el6.i686 (daixuan)     2015年11月17日  _i686_  (2 CPU)
00时00分01秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp                                                      /s  rxmcst/s
00时10分01秒        lo      0.00      0.00      0.00      0.00      0.00      0.                                                      00      0.00
00时10分01秒      eth0      1.58      0.01      0.13      0.00      0.00      0.                                                      00      0.00
00时20分01秒        lo      0.00      0.00      0.00      0.00      0.00      0.                                                      00      0.00
[iyunv@daixuan ~]# sar -n DEV 1 2                                1s钟显示一次,共显示2次
Linux 2.6.32-573.el6.i686 (daixuan)     2015年11月17日  _i686_  (2 CPU)
13时46分46秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
13时46分47秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
13时46分47秒      eth0      3.00      0.00      0.27      0.00      0.00      0.00      0.00

13时46分47秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
13时46分48秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
13时46分48秒      eth0      1.00      1.00      0.06      0.41      0.00      0.00      0.00

平均时间:     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
平均时间:        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
平均时间:      eth0      2.00      0.50      0.17      0.20      0.00      0.00      0.00

1Byte=8bits  
家庭使用的10M带宽,是使用bite来形容的指的是10Mb/s,下载速度是使MB/s来形容的,8倍的关系,1MB/s=8Mb/s,(10Mb/s)/8=1.25MB/s字节每秒rxkB/s  B/s= Byte/s=字节每秒=8bit/s,进网口流量
txkB/s  B/s= Byte/s=字节每秒=8bit/s,出网口流量
byte(字节)是用来衡量磁盘文件大小
1kbyt=1024byte
1Mbyte=1024kbyte
1Gbyte=1024Mbyte

例:如果带宽是10M,目前的txbyt/s=778321.00,请计算带宽占满了吗?
1byt=8b,10M带宽指10Mb/s
778321byt/s=778kbyt/s=0.778Mbyt/s
0.778Mbyt/s<1.25MB/s
0.778*8(Mb/s)=6.2Mb/s 相当于使用了6M带宽,小于10M带宽(10Mb/s)
没有占满10M带宽

[iyunv@daixuan ~]# ls /var/log/sa                                       查看按天为单位生成10个sa开头的历史记录
sa16  sa17  sar16
[iyunv@daixuan ~]# sar -n DEV -f /var/log/sa/sa16             -f指定历史文件,查看网卡流量
Linux 2.6.32-573.el6.i686 (daixuan)     2015年11月16日  _i686_  (2 CPU)

22时00分01秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
22时10分01秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
22时10分01秒      eth0      0.15      0.04      0.01      0.00      0.00      0.00      0.00
22时20分01秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00

[iyunv@daixuan ~]# sar -q                                                       查看历史负载
Linux 2.6.32-573.el6.i686 (daixuan)     2015年11月17日  _i686_  (2 CPU)
00时00分01秒   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15
12时10分01秒         0       116      0.00      0.02      0.03
12时20分01秒         0       116      0.00      0.00      0.00
12时30分01秒         0       116      0.00      0.00      0.00


[iyunv@daixuan ~]# sar -b                                                        查看磁盘
Linux 2.6.32-573.el6.i686 (daixuan)     2015年11月17日  _i686_  (2 CPU)
00时00分01秒       tps      rtps      wtps   bread/s   bwrtn/s
00时10分01秒      0.18      0.01      0.17      0.20      2.04
00时20分01秒      0.15      0.00      0.15      0.00      1.73
00时30分01秒      0.38      0.06      0.31      0.53      4.78

[iyunv@daixuan ~]# sar -p
[iyunv@daixuan ~]# sar                                                             直接显示一些CPU状态
Linux 2.6.32-573.el6.i686 (daixuan)     2015年11月17日  _i686_  (2 CPU)
00时00分01秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
00时10分01秒     all      0.00      0.00      0.05      0.02      0.00     99.92
00时20分01秒     all      0.00      0.00      0.05      0.02      0.00     99.94
00时30分01秒     all      0.04      0.00      0.42      0.04      0.00     99.50



free命令

[iyunv@daixuan ~]# free                                     查看内存使用情况, 1870912=shared+buffers+cached=248+61648+153748
                total             used        free               shared    buffers     cached
Mem:       1938632     283116    1655516        248      61648     153748      1938632 =1870912+67720
-/+ buffers/cache:       67720      1870912  剩余的实际内存1870912=shared+buffers+cached=248+61648+153748
Swap:      4194300          0    4194300注:如果free列第二行的数字为0,说明内存已经耗尽
[iyunv@daixuan ~]# free -m                                查看内存使用情况,以Mbyte为单位
[iyunv@daixuan ~]# free -g                                 查看内存使用情况,以Gbyte为单位
[iyunv@daixuan ~]# free -h                                 -h,人性化设计,方便查看
             total       used       free     shared    buffers     cached
Mem:    1.8G       277M     1.6G     248K        61M       150M
-/+ buffers/cache:66M       1.8G
Swap:   4.0G         0B         4.0G
buffer和cache相同点都是占用内存空间,不通点是buffer是将要写入磁盘的数据,cache是从磁盘提前取出的数据
buffers         数据将要写入磁盘,放在内占用的空间buffer,缓冲
cached         磁盘的部分数据拿出放在内存占用的空间叫cache,缓存



PS
user:运行该进程的用户
PID:标志数
CPU:占用CPU百分比
MEM:占用内存百分比
VSZ:虚拟内存的大小
RSS:真实内存的大小
TTY:从哪里启动的 tty1 tty2
STAT:进程状态,S表示休眠Sleep,s表示主进程或叫父进程,<表示优先级比较高,N表示进程是低优先级,+表示是前台运行的进程,R正在运行running,L内存中被锁Lock,l多线程,Z僵尸进程,X死掉的进程,T暂停的进程,D不能中断的进程
START:启动日期
Time:一共用了CPU时间
COMMAND:进程的名称

[iyunv@daixuan ~]# ps aux
USER       PID %CPU %MEM    VSZ   RSS   TTY      STAT START   TIME  COMMAND
root         1      0.0       0.0       2900  1420  ?          Ss    12:15     0:01  /sbin/init
root         2       0.0      0.0           0     0       ?           S    12:15      0:00  [kthreadd]
[iyunv@daixuan ~]# ps -elf
F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
4 S root         1     0  0  80   0 -   725 -      12:15 ?        00:00:01 /sbin/init
1 S root         2     0  0  80   0 -     0 -      12:15 ?        00:00:00 [kthreadd]
1 S root         3     2  0 -40   - -     0 -      12:15 ?        00:00:00 [migration/0]
[iyunv@daixuan ~]# ps aux | grep nginx                                   查看nginx进程有没有启动
root      3673  1.0  0.0   6048   748 pts/0    D+   16:10   0:00 grep nginx
[iyunv@daixuan ~]# ps aux | grep php                                      查看PHP进程有没有启动
root      3677  0.0  0.0   6048   780 pts/0    S+   16:10   0:00 grep php



netstat查看网络连接状况
[iyunv@daixuan ~]# netstat -lnp                                           查看监听的端口            
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      1774/rpcbind
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      2094/sshd

[iyunv@daixuan ~]# netstat -an                                            查看服务端和客服端进行的通信情况和状态
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node Path
unix  2      [ ACC ]     STREAM     LISTENING     7447   @/com/ubuntu/upstart
unix  2      [ ]         DGRAM                    11163  @/org/freedesktop/hal/udev_event
unix  2      [ ]         DGRAM                    7880   @/org/kernel/udev/udevd
unix  2      [ ACC ]     STREAM     LISTENING     11133  @/var/run/hald/dbus-WFu0oXWoGe



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-145270-1-1.html 上篇帖子: 抓包工具tcpdump和tshark 下篇帖子: cobbler的安装教程详解 Linux
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表