监控io性能、free、ps命令、查看网络状态、Linux下抓包 使用介绍
第7周第2次课(5月8日)
课程内容:
10.8 ps命令
10.9 查看网络状态
10.10 linux下抓包
扩展tcp三次握手四次挥手
http://www.doc88.com/p-9913773324388.htmltshark几个用法:
http://www.aminglinux.com/bbs/thread-995-1-1.html
[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下抓包 使用介绍的更多相关文章
- Linux centos7日常运维——监控io性能、free内存命令、ps进程命令、查看网络状态、linux下抓包
一.监控io性能 Linux系统出现了性能问题,一般我们可以通过top.iostat.free.vmstat等命令来查看初步定位问题.其中iostat可以给我们提供丰富的IO状态数据. iostat ...
- 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. ...
- Linux下抓包命令tcpdump
本文内容来源于网络 PS:tcpdump是一个用于截取网络分组,并输出分组内容的工具,简单说就是数据包抓包工具.tcpdump凭借强大的功能和灵活的截取策略,使其成为Linux系统下用于网络分析和问题 ...
- Linux下抓包命令tcpdump的使用
在linux下,可以使用 tcpdump 命令来抓取数据包. 主要用法如下: 过滤网卡 tcpdump -i eth0 #抓取所有经过网卡eth0数据包 tcpdump -i lo #抓取环回口的数据 ...
- Centos7没有IP地址,查看网络状态显示No suitable device found for this connection (devint match))
今天打开虚拟机,使用 ifconfig 命令时,没有显示出 IP 地址 (更好的阅读体验可访问 这里 ) 使用 systemctl status network 命令查看网络状态 显示没有合适的网络装 ...
- iostat iotop 查看硬盘的读写、 free 查看内存的命令 、netstat 命令查看网络、tcpdump 命令
iostat 命令 查看硬盘的使用情况: iostat iostat -x iotop 命令: 若没安装先安装: yum install iotop -y free 命令,用于查看内存的使用量: fr ...
- 查看程序是否启动或者关闭--比如查看Tomcat是否开启!直接用ps命令查看进程就行了啊
1.查看程序是否启动或者关闭--比如查看Tomcat是否开启!直接用ps命令查看进程就行了啊 2.Tomcat服务器和虚拟机的关系,Tomcat启动运行过程要调用系统环境变量的java_home啊,J ...
- ps命令查看进程指定项目信息、用户名过长显示UID
有次一个在使用ps命令时,发现部分用户显示的是用户名,有些用户显示的是UID,那是因为用户名长度超过8位的:也就是说ps命令用户名列默认只能显示8位(含8位)的用户名,超过8位就显示UID,如何让长度 ...
- Linux ps 命令查看进程启动及运行时间
引言 同事问我怎样看一个进程的启动时间和运行时间,我第一反应当然是说用 ps 命令啦.ps aux或ps -ef不就可以看时间吗? ps aux选项及输出说明 我们来重新复习下ps aux的选项,这是 ...
随机推荐
- 【原创】(十)Linux内存管理 - zoned page frame allocator - 5
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...
- C#之委托如此简单
近期和几位做嵌入式开发的朋友闲聊过程中,一位朋友抱怨到:这C#太难用了,我想在N个窗体(或者是N个用户组件之间)传递值都搞不定,非得要定义一个全局变量来存储,然后用定时器来刷新值,太Low了.我急切的 ...
- CSPS模拟 93
恰饭的时候lsc说我颓颓废废是要ak的前兆 所以我rp掉光了=.= T1 思维一片混乱 T2 只会n^3 发现决策单调性,但没想全 只知道$determin(l,r)>=determin(l,r ...
- CSPS模拟 58
爆炸 没算内存见祖宗 为什么偏偏这次卡内存我没算 T1 HashMap各种水 T2 智障背包!但是卡内存! T3 Dashspeed 考试用点分治+线段树水到了80 实际上是个没见过的套路题 在之前的 ...
- Vue 项目添加单元测试发现的问题及解决
用 Jest 测试单文件组件 1.安装 Jest 和 Vue Test Utils npm install --save-dev jest @vue/test-utils 2.配置 package.j ...
- docker项目——上线tomcat网站
项目: 1.使用docker部署tomcat环境 2.上线网站 3.完成访问使用等 第一步.启动基于tomcat镜像的容器 a.导入镜像 [root@localhost ~]# docker load ...
- 2-了解DBMS
1.DB,DBS,DBMS的区别是什么? 1.1 DB 就是数据库,数据库是存储数据的集合,可理解为多个数据表 1.2 DBS 数据库系统,包括数据库,数据库管理系统和数据库管理人员D ...
- 一个excel(20M)就能干趴你的poi,你信吗?
自从上一篇:一个普通类就能干趴你的springboot,你信吗?后,很巧的是这次又发现一个问题,所以有了这篇文章,还是想沿用上篇的”流水帐“的方式查找问题和解决问题.这篇文章主要是因为使用POI导入一 ...
- 深入理解计算机系统 第三章 程序的机器级表示 Part1 第二遍
第一遍对应笔记链接 https://www.cnblogs.com/stone94/p/9905345.html 机器级代码 计算机系统使用了多种不同形式的抽象,利用更简单的抽象模型来隐藏实现的细节. ...
- Linux 部署Nginx反向代理服务 使用openssl自生成证书并配置https
1.安装Nginx编译所依赖的包 正常centos中可以使用yum安装一下依赖包: yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel ...