第7周第2次课(5月8日)

课程内容:

10.6 监控io性能
10.7 free命令
10.8 ps命令
10.9 查看网络状态
10.10 linux下抓包
扩展tcp三次握手四次挥手 http://www.doc88.com/p-9913773324388.html
tshark几个用法:http://www.aminglinux.com/bbs/thread-995-1-1.html
 
10.6 监控io性能

[root@jimmylinux-002 ~]# iostat -x

查看磁盘io百分比,注意关注%util这一列,如果数字超过50%就说明有问题。

如果磁盘io很忙,读写很频繁,查看到底是那个进程频繁在读写,可以通过iotop命令查看,这个和top命令很像,都是动态显示。

默认没有iotop命令,需要先安装。

10.7 free命令

可以直接查看内存使用情况,在CentOS6和7显示是不同的,CentOS7里面会显示的更加直观。

第一行是一个说明

第二行是内存使用情况

第三行swap使用情况

[root@jimmylinux-002 ~]# free -h  可以更直观查看内存使用情况

正常情况下,已使用+空余=总大小,但是在Linux里面会把内存预先分配一部分出来给buff和cache。

数据流向:

①0000(磁盘)-->内存(cache)-->CPU  存放到硬盘的数据到CPU,中间需要经过内存保存下来,然后再到CPU,这个叫缓存cache。

②CPU(0000)-->内存(buff)-->硬盘     CPU计算好的数据存放到硬盘,中间需要经过内存保存下来,然后再到硬盘,这个叫缓冲buff。

由于数据流向不同,所以系统会把内存先预留一部分出来给buff和cache

total的公式=used+free+buff/cache

available包含free和buff/cache剩余部分

真正查看内存剩余,主要是看available,而不是直接查看free。

swap也需要关注,如果free剩余为0,说明内存不够了,或者内存泄漏,系统有bug,这个时候需要增加内存。

10.8 ps命令

[root@jimmylinux-002 ~]# ps aux

静态一次性把当前的所有进程使用情况列出来,ps和top显示结果很相像。

[root@jimmylinux-002 ~]# ps -elf  也可以使用这个命令查看,和ps aux基本上一样。

检查系统中有没有某一个进程在运行,可以通过管道符方式查看。

stat状态说明

D-->不能够中断的进程,如果有很多D状态的进程,那么就会直接影响到系统负载。

R-->某个时间段内在使用CPU的进程

S-->进程使用完CPU后,会暂停一会。

T-->暂停的进程

Z-->僵尸进程太多的话,可以kill掉。

<-->高优先级进程

N-->低优先级进程

L-->内存中被锁了内存分页

s-->主进程

|-->多线程进程,线程和进程的关系,线程是由一个大的进程组成,一个进程里面有多个线程。

+-->前台进程

10.9 查看网络状态

netstat  查看TCP/IP通信的一个状态

[root@jimmylinux-002 ~]# netstat -lnp  监听服务和端口

[root@jimmylinux-002 ~]# netstat -an  查看tcpip状态

查看netstat需要关注ESTABLISHED,如果数字很大说明系统很忙,数字表示有多少个客户端在和服务端保持连接、保持通信,通常这里数字在1000以内服务器都是能接受的。

[root@jimmylinux-002 ~]# ss -an  和netstat命令功能类似,唯一缺点不能够查看进程名字。

10.10 linux下抓包

tcpdump用法:

[root@jimmylinux-002 ~]# tcpdump -nn -i ens33  第一个n表示IP用数字显示,如果不加会显示主机名,第二个n表示端口号。

tcpdump -nn port 80  指定端口抓包

tcpdump -nn not port 22 and host 192.168.0.100  根据判断条件进行抓包

tcpdump -nn -c 100 -w 1.cap  指定长度抓包并生成1.cap文件

tcpdump -r /tmp/1.cap  使用-r读取1.cap文件的内容(主要就是数据流向)

tshark和tcpdump一样都是可以抓包的工具,tshark可以查看指定网卡80端口的一个web服务访问的情况,类似web服务的访问日志。

监控io性能、free、ps命令、查看网络状态、Linux下抓包 使用介绍的更多相关文章

  1. Linux centos7日常运维——监控io性能、free内存命令、ps进程命令、查看网络状态、linux下抓包

    一.监控io性能 Linux系统出现了性能问题,一般我们可以通过top.iostat.free.vmstat等命令来查看初步定位问题.其中iostat可以给我们提供丰富的IO状态数据. iostat ...

  2. 10.6 监控io性能 10.7 free命令 10.8 ps命令 10.9 查看网络状态 10.10 linux下抓包

    iostat sysstat 包里面包括 sar 和 iostat [root@centos7 ~]# iostat Linux 3.10.0-693.2.2.el7.x86_64 (centos7. ...

  3. Linux下抓包命令tcpdump

    本文内容来源于网络 PS:tcpdump是一个用于截取网络分组,并输出分组内容的工具,简单说就是数据包抓包工具.tcpdump凭借强大的功能和灵活的截取策略,使其成为Linux系统下用于网络分析和问题 ...

  4. Linux下抓包命令tcpdump的使用

    在linux下,可以使用 tcpdump 命令来抓取数据包. 主要用法如下: 过滤网卡 tcpdump -i eth0 #抓取所有经过网卡eth0数据包 tcpdump -i lo #抓取环回口的数据 ...

  5. Centos7没有IP地址,查看网络状态显示No suitable device found for this connection (devint match))

    今天打开虚拟机,使用 ifconfig 命令时,没有显示出 IP 地址 (更好的阅读体验可访问 这里 ) 使用 systemctl status network 命令查看网络状态 显示没有合适的网络装 ...

  6. iostat iotop 查看硬盘的读写、 free 查看内存的命令 、netstat 命令查看网络、tcpdump 命令

    iostat 命令 查看硬盘的使用情况: iostat iostat -x iotop 命令: 若没安装先安装: yum install iotop -y free 命令,用于查看内存的使用量: fr ...

  7. 查看程序是否启动或者关闭--比如查看Tomcat是否开启!直接用ps命令查看进程就行了啊

    1.查看程序是否启动或者关闭--比如查看Tomcat是否开启!直接用ps命令查看进程就行了啊 2.Tomcat服务器和虚拟机的关系,Tomcat启动运行过程要调用系统环境变量的java_home啊,J ...

  8. ps命令查看进程指定项目信息、用户名过长显示UID

    有次一个在使用ps命令时,发现部分用户显示的是用户名,有些用户显示的是UID,那是因为用户名长度超过8位的:也就是说ps命令用户名列默认只能显示8位(含8位)的用户名,超过8位就显示UID,如何让长度 ...

  9. Linux ps 命令查看进程启动及运行时间

    引言 同事问我怎样看一个进程的启动时间和运行时间,我第一反应当然是说用 ps 命令啦.ps aux或ps -ef不就可以看时间吗? ps aux选项及输出说明 我们来重新复习下ps aux的选项,这是 ...

随机推荐

  1. 如何将excel文件导入testlink

    Step 1 按照excel模板设计测试用例,其中优先级的定义为: 数值 定义 1 LOW 2 MEDIUM 3 HIGH Step 2 执行脚本,将excel转换成xml: 脚本 备注 包含:exc ...

  2. CSPS模拟 81

    Z哥的题,真是见题如见人啊.. T1 实际状态数没有那么多,不要被数字吓倒就是了. 另外为什么吧轮廓线给忘了啊 T3 觉得自己是正解但是被hack了? 考试的时候想到了复杂度对的的解法,但是 spfa ...

  3. 【java基础】程序员你真的理解反射机制吗?

    目录 前言 1.反射的概述 2.正式使用反射之前很有必要了解的Class类 3.反射的使用 前言 很多讲解反射的博客文章并没有详细讲解Class类,~当然包括之前的我也一样~,这样的文章只会让反射徒有 ...

  4. JVM性能调优详解

    前面我们学习了整个JVM系列,最终目标的不仅仅是了解JVM的基础知识,也是为了进行JVM性能调优做准备.这篇文章带领大家学习JVM性能调优的知识. 性能调优 性能调优包含多个层次,比如:架构调优.代码 ...

  5. UWP 带左右滚动按钮的横向ListView———仿NetFlix首页河的设计

    也是之前写的控件了,模仿NetFlix的河的设计. 大体要求如下: 1. 横向的ListView 2. 左右按钮,可以左右移动河卡片,左右的滚动条不可见 3. 左右按钮仅在鼠标Hover事件中可见 大 ...

  6. 通俗易懂了解Vue组件的通信方式

    1.前言 Vue框架倡导组件化开发,力求将一个大的项目拆分成若干个小的组件,就如同我们小时玩堆积木一样,一个大房子是由若干个小积木组成.组件化开发最大问题就是组件之间数据能够流通,即组件之间能够通信. ...

  7. 一个帮助理清思路的神奇工具--debug

    今天在回顾复习之前的知识的时候,对嵌套循环犯了迷糊,于是我使用了debug这个方法,不仅让我弄清楚嵌套循环输出结果是如何得来,也让我明白了具体流程. 在这里,IDE我使用的是PyCharm,自然用它自 ...

  8. vue , debounce 使用

    有时候不想直接在methods中的方法前面加debounce, getFullName: debounce(function() { console.log('my fullname is chent ...

  9. Scrapy进阶知识点总结(二)——选择器Selectors

    1. Selectors选择器 在抓取网页时,您需要执行的最常见任务是从HTML源提取数据.有几个库可用于实现此目的,例如: BeautifulSoup是Python程序员中非常流行的Web抓取库,它 ...

  10. PHP str_replace的用法

    PHP str_replace的用法 1 替换单个字符<pre><?phpecho str_replace("world","Shanghai" ...