目录
知识点1:系统性能监控
1.1 cpu性能:top命令、uptime命令、w命令
1.1.1 什么是load average?
1.1.2 让top命令按内存使用率来显示进程信息(默认是根据cpu使用率来排序的)
1.2 内存 :top命令,free命令
使用top命令来查看内存使用情况
1.2.1 buffer 和 cache的区别
1.2.2 什么是交换分区 swap(swappiness)?
查看交换分区:
修改交换分区大小
临时修改:
永久修改交换分区大小(进入 /etc/sysctl.conf文件)
free命令查看内存使用情况
1.3 磁盘 df -Th,fdisk,iostat
df -Th :查看磁盘使用情况
fdisk -l :查看磁盘分区
iostat:查看磁盘读写的速度
sar :收集、报告或保存系统活动信息。
1.4 :端口:netstat,ss,lsof,nc
查看自己机器上面使用了哪些端口
查看别人机器上面有哪些端口开放
nmap:查看整个网段有哪些IP地址是启用的以及开启哪些端口
fping -g 192.168.44.0/24 :查看哪些IP地址没有启用
1.5 网络流量:dstat ,glances
dstat --top-cpu --top-mem --top-io :查看cpu,内存,io读写,最高的进程
dstat 输出csv文件保存
glances:一个跨平台的系统监控工具
1.6 进程:top命令,ps aux命令,jobs命令,fg命令
top命令效果图
将top命令显示的信息保存到文件里面 top -n 1 >top.txt
jobs命令:查看当前终端有哪些进程在后台运行
fg (foreground)将某个命令从后台调到前台运行
ps aux命令
top命令和ps aux命令区别?
查看消耗cpu最多的前10个进程
查看消耗内存最多的1前10个进程
########################################################################################
1.1.1 什么是load average?
查看一下uptime的使用手册,关于load average的解释是这样的
System load averages is the average number of processes that are either in a runnable or uninterruptable state.
A process in a runnable state is either using the CPU or waiting to use the CPU. A process in uninterruptable state is waiting for some I/O access, eg waiting fordisk.
系统平均负载是处于可运行状态和不可中断状态的平均进程数,它反映了cpu在过去的1分钟,5分钟,15分钟的一个繁忙程度,平均负载情况,
结合三个时间的load average,来分析
1分钟Load>1,5分钟Load<1,15分钟Load<1:短期内繁忙,中长期空闲,初步判断是一个“抖动”,或者是“拥塞前兆”
1分钟Load>1,5分钟Load>1,15分钟Load<1:短期内繁忙,中期内紧张,很可能是一个“拥塞的开始”
1分钟Load>1,5分钟Load>1,15分钟Load>1:短、中、长期都繁忙,系统“正在拥塞”
1分钟Load<1,5分钟Load>1,15分钟Load>1:短期内空闲,中、长期繁忙,不用紧张,系统“拥塞正在好转”
查看cpu信息
########################################################################################
1.1.2 让top命令按内存使用率来显示进程信息(默认是根据cpu使用率来排序的)
进入top后按M来按内存使用多少来显示
########################################################################################
使用top命令来查看内存使用情况
top命令会以kb为单位,total显示内存总共有多大,free剩余没有使用的有多少,used已经使用的内存大小,以及buffer和cache的内存大小
avail Mem其实指的是 free 剩余没有使用的空间,以及buff和cache里面没有使用的空间,例如:buff里面的数据已经写到了磁盘,那么buff就空出来了一些空间
1.2.1 buffer 和 cache的区别
buffer和cache都是内存中的一块区域
1.Buffer的核心作用是用来缓冲,缓和冲击。着重于写操作。Buffer是对原始磁盘块的临时存储,也就是用来缓存磁盘的数据,buffer通常不会特别大(20MB 左右)。所以内核就可以把分散的写的操作集中起来,统一优化磁盘的写入。
2.Cache的核心作用是加快取用的速度(与memory相关)。着重于读操作。Cache 是从磁盘读取文件的页缓存,也就是用来缓存从文件读取的数据。这样,下次访问这些文件数据时,就可以直接从内存中快速获取,而不需要再次访问缓慢的磁盘。总结:buffer是加速数据写入磁盘,cache是用来加速数据从磁盘里面读取的
########################################################################################
1.2.2 什么是交换分区 swap(swappiness)?
交换分区就是在物理内存使用完之后,从磁盘划出一块区域来作为虚拟内存使用
查看交换分区:
含义:在物理内存只剩下 30%的时候使用交换分区
修改交换分区大小
临时修改:
永久修改交换分区大小(进入 /etc/sysctl.conf文件)
sysctl -p :让内核读取sysctl.conf文件
free命令查看内存使用情况
-m :以M的形式显示
-h:以human人类可以读懂的形式显示
########################################################################################
df -Th :查看磁盘使用情况
fdisk -l :查看磁盘分区
iostat:查看磁盘读写的速度
-x :显示很多参数 ,显示扩展的统计信息
iostat -x 1 2 :每隔1秒统计一次输出出来
sar :收集、报告或保存系统活动信息。
########################################################################################
查看自己机器上面使用了哪些端口
查看别人机器上面有哪些端口开放
查看别人机器上面有哪些端口开放
nc -z 114.114.114.114 53
-z 选项:不发送数据包
53 :查看53号端口是否开放
echo $? 查看返回值,如果返回值为0则端口是开放的,非0则没有开放
-w选项:只等待1秒钟
nmap:查看整个网段有哪些IP地址是启用的以及开启哪些端口
fping -g 192.168.44.0/24 :查看哪些IP地址没有启用
########################################################################################
dstat:用于生成系统资源统计的通用工具
dstat --top-cpu --top-mem --top-io :查看cpu,内存,io读写,最高的进程
dstat 输出csv文件保存
glances:一个跨平台的系统监控工具
########################################################################################
top命令效果图
top命令默认1.5秒迭代更新一次
将top命令显示的信息保存到文件里面 top -n 1 >top.txt
-n 1 :top命令迭代一次,output到top.txt文件里面
jobs命令:查看当前终端有哪些进程在后台运行
在命令后面使用 & 可以将一个进程放到后台运行
fg (foreground)将某个命令从后台调到前台运行
ps aux命令
top命令和ps aux命令区别?
top命令会迭代显示进程信息,ps aux是显示的一瞬间的进程信息
- a:显示一个终端所有的进程
- u:显示进程的归属用户及内存使用情况
- x:显示没有关联控制终端的进程