10.16 日常运维1

在这里插入图片描述

1.w命令 查看系统负载

在这里插入图片描述

uptime 会显示第一行负载参数
在这里插入图片描述
第一行从左到右依次表示当前时间、系统已运行时间、登录用户数(终端登录显示为tty1,远程登录显示为pts/0)、平均负载(每1分钟、每5分钟、每15分钟)主要是注意第一个负载值,值越大说明服务器压力越大。一般情况下,这个值不要超过服务器的逻辑cpu数量就没有关系

cat /proc/cpuinfo 查看系统逻辑cpu
在这里插入图片描述
实际为显示数加1个逻辑cpu

2.vmstat命令

监控系统状态 cpu 内存 磁盘等
vmstat 1
每秒显示一次
vmstat 1 5
每秒显示一次 共显示五次
在这里插入图片描述
procs 进程相关
r(run) 表示运行或等待cpu时间片的进程数
b(block) 表示等待资源的进程数,这个资源指的是I/O、内存、网速等资源

memory 内存相关
swpd 表示切换到交换分区中的内存数量。
free 当前空闲的内存数量
buff 缓冲大小
cache 缓存大小

swap 内存的交换情况
si 表示由交换分区写去到内存的数据量
so 表示由内存写入到交换分区的数据量

io 磁盘的使用情况
bi 从磁盘读取数据量的多少(读磁盘)
bo 从磁盘写入数据量的多少(写磁盘)

cpu cpu的使用情况
us 用户级别(网站、mysql)占用cpu资源的时间百分比 长时间大于50 说明资源不够
sy 系统本身占用cpu资源的时间百分比
id cpu处于空闲状态的时间百分比
us+sy+id=100
wa I/O等待所占用的cpu的时间百分比
st 被偷走的cpu资源(虚拟化 子机器 会偷走)

3.top 显示进程所占的系统资源

在这里插入图片描述

动态显示进程所占的系统资源 3秒更新一次

默认%cpu排序
shift m 会按内存排序
shift p 会按cpu排序

runing 正在运行的进程数
sleeping 正在处于休眠状态的进程数
stopped 已经停止的进程数
zombie 僵尸进程(主进程被终止,子进程无人管就是僵尸进程)

RES 为进程所占的内存大小
%MEM为使用内存的百分比
COMMAND 进程名称

top -c 查看具体进程路径
在这里插入图片描述

top -bn1 所有进程一次性静态列出

在这里插入图片描述

4.sar命令(瑞士军刀)

yum install -y sysstat 安装sar命令

sar -n DEV 查看网卡流量 打印当天的

在这里插入图片描述

IFACE 网卡名

rxpck/s 接收到的数据包 单位 个

txpck/s 发送出的数据包

rxkB/s 接收到的数据量 单位KB

rxkB/s 发送出的数据量 单位KB

rxpck/s 接收到数据包的数量上万或者rxkB/s接收到数据量大于5000000就不正常了,可能被攻击

sar -n DEV 1 5 实时查看网卡流量 每秒显示 显示5次
在这里插入图片描述
sar -n DEV -f /var/log/sa/saxx 查看某天的网卡流量历史
在这里插入图片描述

/var/log/sa/文件下 有俩个文件sa18 和sar18 (次日才会生成)
sa18 可用sar命令查看
sar18 可用cat直接查看

sar -q 查看历史负载
在这里插入图片描述
sar -b 查看磁盘(读写状态)
在这里插入图片描述

5.nload 查看网卡流量

动态显示网卡实时速度
yum install epel-release 先安装epel扩展源
yum install -y nload 再安装nload
在这里插入图片描述
curr 实时流量值
Avg 流量平均值
Min 流量最小值
Max 流量最大值
Ttl 累计流量值

6.监控io性能

iostat -x 磁盘使用状态
在这里插入图片描述
util 数值越大 磁盘使用率高 或者硬盘故障

iotop 查看读写占比的进程
在这里插入图片描述

7.free命令

在这里插入图片描述
查看内存使用情况
在这里插入图片描述
total 内存总大小
used 真正使用的内存
free 剩余物理内存
shared 共享的
buff(缓冲)/cache(缓存) 分配给buff cached的内存大小

free -m -g -h 以MB GB 合适的单位 显示

在这里插入图片描述
total=used+free+buff/cache
从磁盘中的把数据读出来,先放在内存(cache)里,最后到CPU

将cpu运算后的数据,先放在内存(buff)里,然后写进磁盘

available =free+buff/cache未使用完的部分
查看真正的剩余内存应该是available下面的数字

8.ps命令

在这里插入图片描述
查看系统进程

ps aux 查看系统所有进程 类似ps -elf
在这里插入图片描述
用途
在这里插入图片描述
PID 进程的ID 杀死进程时 kill -9 pid
每个进程在/proc/都有以PID数字命名的目录 ls -l /proc/PID/

STAT 表示进程的状态

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

R 正在运行中的进程

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

T 已经停止或者暂停的进程,如果我们正在运行一个命令

W 从内核2.6xx 以后,表示为没有足够的内存页分配

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

Z 僵尸进程,杀不掉,打不死的垃圾进程,占系统一小点资源

< 高优先级进程

N 低优先级进程

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

s 主进程

l 多线程进程

+ 代表在前台运行的进程

用途:查看进程和数量 ps aux |grep -c xxx

9.netstat 查看网络状态

在这里插入图片描述
netstat 查看网络状态
在这里插入图片描述
netstat -lnp 查看网络监听端口
在这里插入图片描述
netstat -an 网络连接状况 类似 ss -an
在这里插入图片描述
扩展
TCP三次握手 四次挥手

netstat -an | awk ‘/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}’
查看状态数量的命令

10.抓包工具

yum install -y tcpdump 安装

tcp dump -nn -i 网卡名
-i 选项后面跟设备名称或指定网卡。
-nn 选项的作用是让第3和第4列显示成“IP+端口号”的形式,如果不加-nn选项则显示“主机名+服务名称”

tcpdump -nn -i ens33 -c 20 指定抓包数量 加-c 选项,抓包20次后自动停止

tcpdump -nn -i ens33 port 22 指定抓包端口为22

tcpdump -nn -i ens33 port 22 and port 80 指定在哪2个端口里抓包

tcpdump -nn -i tcp and not port 22 指定抓tcp的包,但不要22端口的

tcpdump -nn -i ens33 -c 20 -w /tmp/1.txt 抓的包进/tmp/1.txt (写脚本用)

tcpdump -r /tmp/1.txt 查看文件里的数据流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值