1.命令熟悉之w

  1. [xiongchao@oc3006745124 Desktop]$ w
  2. :: up :, users, load average: 1.48, 1.19, 1.11
  3. USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
  4. xiongcha tty1 : : :06m : .14s pam: gdm-passwo
  5. xiongcha pts/ :: :50m .16s .50s /usr/bin/gnome-
  6. xiongcha pts/ :: .00s .03s .02s w

在这里就只说重要的选项,Load average 中的后面三个数据
第一个数值表示1分钟内系统的平均负载值;第二个数值表示5分钟内系统的平均负载值;第三个数值表示15分钟系统的平均负载值
当然这个数值越大,就代表你的服务器压力越大
其衡量的标准是,CPU的数量是8,Load average相对应的数值小于8,则正常

2.查看Cpu个数,cat /proc/cpuinfo

  1. processor :
  2. vendor_id : GenuineIntel
  3. cpu family :
  4. model :
  5. model name : Intel(R) Core(TM) i7-4600M CPU @ .90GHz
  6. stepping :
  7. microcode :
  8. cpu MHz : 800.000
  9. cache size : KB
  10. physical id :
  11. siblings :
  12. core id :
  13. cpu cores :
  14. apicid :
  15. initial apicid :
  16. fpu : yes
  17. fpu_exception : yes
  18. cpuid level :
  19. wp : yes
  20. flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase bmi1 avx2 smep bmi2 erms invpcid
  21. bogomips : 5787.03
  22. clflush size :
  23. cache_alignment :
  24. address sizes : bits physical, bits virtual
  25. power management:

其中processor后面的数字就是CPU的个数
physical id显示物理CPU的个数

3.命令熟悉之vmstat

  1. [xiongchao@oc3006745124 Desktop]$ vmstat
  2. procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
  3. r b swpd free buff cache si so bi bo in cs us sy id wa st

w是判断系统的压力问题,那么vmstat是判断具体点的压力在那一个位置(CPU,内存,磁盘等)
重点是 r b si so bi bo
r :表示运行和等待CPU时间片的进程数,如果长期大于服务器的个数,则说明cpu不够用了
b :表示等待资源的进程数,比如等待I/O 内存等
buff:缓冲大小,(即将写入磁盘的)
cache:缓存大小,(从磁盘中读取的)
si:由交换区写入到内存的数据量
so:由内存写入到交换区的数据量
bi:从块设备读取数据的量(读磁盘)
bo:从块设备写入数据的量(写磁盘)

4.命令熟悉之top 显示进程所占系统资源

  1. [xiongchao@oc3006745124 Desktop]$ top
  2.  
  3. top - :: up :, users, load average: 1.47, 1.23, 1.24
  4. Tasks: total, running, sleeping, stopped, zombie
  5. Cpu(s): 8.3%us, 5.9%sy, 0.0%ni, 85.6%id, 0.1%wa, 0.0%hi, 0.1%si, 0.0%st
  6. Mem: 7875568k total, 7360468k used, 515100k free, 68920k buffers
  7. Swap: 8388604k total, 89192k used, 8299412k free, 1243564k cached
  8.  
  9. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
  10. qemu 6616m .2g S :43.43 qemu-kvm
  11. xiongcha 1294m 221m 51m S :37.59 firefox
  12. root 171m 27m 15m S :11.88 Xorg
  13. xiongcha 289m 12m S :00.39 gnome-terminal
  14. root S :38.33 symcfgd
  15. root 588m 16m S :56.86 BESClient
  16. root 301m 252m S :12.29 rtvscand
  17. dbus S :13.23 dbus-daemon
  18. root 100m S :09.69 NetworkManager
  19. root S :07.55 wcstatusd
  20. root - S :28.23 sav-limitcpu
  21. root - S :27.92 sav-limitcpu
  22. xiongcha 620m 162m 32m S :56.46 sametime
  23. xiongcha 444m 118m 57m S :35.13 lnotes
  24. xiongcha 689m 191m 78m S :26.96 notes2
  25. xiongcha 513m 33m 16m S :01.83 plugin-containe
  26. xiongcha R :00.10 top

改命令用于动态监控进程所占系统资源,每隔3秒变一次,这个命令 %CPU, %MEM, COMMAND
在top状态下,按住shift + m 可以按照内存使用大小排序。按数字1 可以列出各颗Cpu的使用状态
top -bn1 它表示非动态打印系统资源使用情况

5.命令熟悉之sar监控系统状态

  1. Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
  2. Average: lo 11.99 11.99 10.99 10.99 0.00 0.00 0.00
  3. Average: eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  4. Average: wlan0 5.18 3.61 5.27 0.74 0.00 0.00 0.00
  5. Average: pan0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  6. Average: virbr1 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  7. Average: virbr1-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  8. Average: virbr0 1.81 2.49 4.07 2.31 0.00 0.00 0.00
  9. Average: virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
  10. Average: vnet0 1.81 2.87 4.10 2.33 0.00 0.00 0.00
  11. # 仅仅列出部分,太多内容

IFACE 这列表示设备名称
rxpck/s 表示每秒进入收取的包的数量
txpck/s 表示每秒发送出去的包的数量
rxbyt/s 表示每秒收取的数据量(单位Byte)
txbyt/s表示每秒发送的数据量

查看历史负载 sar -q
可以查看某一天的网卡流量历史,使用-f选项,(sar -n DEV -f /var/log/sa/sa21)后面跟文件名,如果你的系统格式Redhat或者CentOS那么sar的库文件一定是在/var/log/sa/目录下的

6.命令熟悉之free查看内存使用状况

  1. [xiongchao@oc3006745124 Desktop]$ free
  2. total used free shared buffers cached
  3. Mem:
  4. -/+ buffers/cache:
  5. Swap:

free中,剩余533492. 其实真正剩余并不是这个533492, 而是第二行的1860684, 真正使用的也是第二行的1860684
因为系统初始化时,就已经分配出很大一部分内存给缓存,这部分缓存用来随时提供给程序使用
如果程序不用,那这部分内存就空闲
所以,查看内存使用多少,剩余多少请看第二行的数据

7.命令熟悉之ps查看系统进程

  1. [xiongchao@oc3006745124 Desktop]$ ps aux
  2. USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
  3. root ? Ss : : /sbin/init
  4. root ? S : : [kthreadd]
  5. root ? S : : [migration/]
  6. root ? S : : [ksoftirqd/]
  7. root ? S : : [stopper/]
  8. root ? S : : [watchdog/]
  9. #仅显示部分

PID :进程的id,这个id很有用,在linux中内核管理进程就得靠pid来识别和管理某一个程,比如我想终止某一个进程,则用 ‘kill  进程的pid 有时并不能杀掉,则需要加一个-9选项了 kill  -9  进程pid

STAT :表示进程的状态,进程状态分为以下几种(不要求记住,但要了解)

D 不能中断的进程(通常为IO)

R 正在运行中的进程

S 已经中断的进程,通常情况下,系统中大部分进程都是这个状态

T 已经停止或者暂停的进程,如果我们正在运行一个命令,比如说 sleep 10 如果我们按一下ctrl -z 让他暂停,那么我们用ps查看就会显示T这个状态

W 这个好像是说,从内核2.6xx 以后,表示为没有足够的内存页分配

X 已经死掉的进程(这个好像从来不会出现)

Z 僵尸进程,杀不掉,打不死的垃圾进程,占系统一小点资源,不过没有关系。如果太多,就有问题了。一般不会出现。

< 高优先级进程

N 低优先级进程

L 在内存中被锁了内存分页

s 主进程

l 多线程进程

+ 代表在前台运行的进程

8.命令熟悉之netstat查看网络状态

  1. [xiongchao@oc3006745124 Desktop]$ netstat -lnp
  2. (Not all processes could be identified, non-owned process info
  3. will not be shown, you would have to be root to see it all.)
  4. Active Internet connections (only servers)
  5. Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
  6. tcp /ibm-file-shar
  7. tcp 0.0.0.0:* LIST
  8. Active UNIX domain sockets (only servers)
  9. Proto RefCnt Flags Type State I-Node PID/Program name Path
  10. unix [ ACC ] STREAM LISTENING - @Symantec-SmcIPC
  11. unix [ ACC ] STREAM LISTENING /ibus-daemon
  12. #仅显示部分

常用的命令
netstat -lnp (打印当前系统启动哪些端口)
netstat  -an (打印网络连接状况)

9.命令熟悉之tcpdump
如果你的服务器被流量攻击了,用这个命令就可以解决
如果系统没有tcpdump,那么就yum install -y tcpdump 命令去安装一下

  1. [xiongchao@oc3006745124 Desktop]$ tcpdump -nn -i eth0
  2. tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
  3. listening on eth0, link-type EN10MB (Ethernet), capture size bytes
  4. :: > : Flags [P.], seq :, ack , win , length
  5. :: > : Flags [P.], seq :, ack , win , length

这里需要关注的只是第三列以及第四列。-i 选项后面跟设备名称
如果你想抓eth1网卡的包,后面则要跟eth1.至于-nn选项的作用是让第三列和第四列显示成IP+端口号的形式
如果不加-nn则显示的是主机名+服务名称

Linux系统中的日常监控知识点的更多相关文章

  1. linux系统中的基础监控(硬盘,内存,系统负载,CPU,网络等)

      Linux系统常见日常监控 系统信息 查看 CentOS 版本号:cat /etc/redhat-release 综合监控 nmon 系统负载 命令:w(判断整体瓶颈) 12:04:52 up 1 ...

  2. 在linux系统中实现各项监控的关键技术(1)--cpu使用率的计算

    转载自 Linux中通过/proc/stat等文件计算Cpu使用率 http://www.blogjava.net/fjzag/articles/317773.html proc文件系统 /proc文 ...

  3. 在linux系统中实现各项监控的关键技术(2)--内核态与用户态进程之间的通信netlink

    Netlink 是一种在内核与用户应用间进行双向数据传输的非常好的方式,用户态应用使用标准的 socket API 就可以使用 netlink 提供的强大功能,内核态需要使用专门的内核 API 来使用 ...

  4. 理解Linux系统中的load average(图文版)转

    一.什么是load average? linux系统中的Load对当前CPU工作量的度量 (WikiPedia: the system load is a measure of the amount ...

  5. Linux系统中如何查找大文件或文件夹的方法

    在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件 ...

  6. 学习Linux系统中命令的简单方法

    如果说如何快速学习.了解Linux的话,我的答案是学命令.背命令!为何呢?对于一名新手来说,去学习Linux的思想.了解Linux的架构.明白Linux中“一切皆文件”概念虽然说是没有错,是对的.但是 ...

  7. 理解Linux系统中的load average(图文版)

    本文转自:http://heipark.iteye.com/blog/1340384 一.什么是load average? linux系统中的Load对当前CPU工作量的度量 (WikiPedia: ...

  8. (转)浅谈 Linux 系统中的 SNMP Trap

    原文:https://www.ibm.com/developerworks/cn/linux/l-cn-snmp/index.html 简介 本文讲解 SNMP Trap,在介绍 Trap 概念之前, ...

  9. 理解Linux系统中的load average

    理解Linux系统中的load average(图文版) 博客分类: Linux linux load nagios  一.什么是load average? linux系统中的Load对当前CPU工作 ...

随机推荐

  1. 新浪博客地址 http://blog.sina.com.cn/u/2145079955

    原来 新浪博客地址 http://blog.sina.com.cn/u/2145079955

  2. Yii javascript 的结合 账号禁用 激活 的设置。

    2014-02-16 控制器中的代码: public function actionUpdown(){ //print_r($_POST);die(); if(Buser::model()->u ...

  3. maven2 配置M2_REPO

    从eclipse中增加了maven2的插件之后,maven默认的本地库的路径是${user}/.m2/repository/下,一般windows用户的操作系统都安装在C盘,所以这个目录 下的jar包 ...

  4. Spring security3

    最近一直在学习spring security3,试着搭建了环境: 构建maven环境 项目配置pom.xml文件 <project xmlns="http://maven.apache ...

  5. iOS - OC 数据持久化

    1.Sandbox 沙箱 iOS 为每个应用提供了独立的文件空间,一个应用只能直接访问为本应用分配的文件目录,不可以访问其他目录,每个应用自己独立的访问空间被称为该应用的沙盒.也就是说,一个应用与文件 ...

  6. iOS - Swift SQLite 数据库存储

    前言 采用 SQLite 数据库来存储数据.SQLite 作为一中小型数据库,应用 iOS 中,跟前三种保存方式相比,相对比较复杂一些. 注意:写入数据库,字符串可以采用 char 方式,而从数据库中 ...

  7. 抓取oschina上面的代码分享python块区下的 标题和对应URL

    # -*- coding=utf-8 -*- import requests,re from lxml import etree import sys reload(sys) sys.setdefau ...

  8. vim的配置文件及常用的快捷键

    一些最简单的配置,即在.vimrc中可以写入的配置: 首先,说明一点,在.vimrc文件中,可以用“  把一行的配置注销掉. set nocompatible  “关闭 vi 兼容模式:其中 comp ...

  9. form属性method="get/post

    form属性method="get/post"的两种方式对比 在B/S应用程序中,前台与后台的数据交互,都是通过HTML中Form表单完成的.Form提供了两种数据传输的方式——g ...

  10. 阿里云+wordpress搭建个人博客网站

    [正文] 在阿里云上搭建使用个人博客主要分为以下几个步骤: 1.购买阿里云ECS主机 2.购买域名 3.申请备案 4.环境配置 5.安装wordpress 6.域名解析 声明一下,本人对服务器端的知识 ...