Linux & 网络常用 CheatList
约 1212 字大约 4 分钟
2026-02-24
本文件收集常用的 Linux 与网络排查命令与使用要点,方便运维快速定位问题并记录结果。
网络流量与带宽
- 实时查看网卡流量(sar)
sar -n DEV 1 10
# 输出中常见字段:rxkB/s(接收 KB/s),txkB/s(发送 KB/s)说明:sar 可以展示历史与实时网卡统计,单位通常为 KB/s,观察趋势比瞬时更重要。
文件系统与时间信息
- 查看文件系统(根目录)创建时间(部分系统支持 Birth 字段)
stat / | grep Birth说明:在某些 Linux 文件系统上,根目录的 Birth(创建时间)等同于系统安装时间;并非所有 FS 都支持该字段。
MTR(My Traceroute)—— 路径与丢包诊断
简介
MTR 结合了 ping 与 traceroute 的功能,会持续发送探测包并实时更新每一跳的丢包与延迟,适合定位网络抖动与丢包点。
安装
# Debian / Ubuntu
sudo apt update && sudo apt install mtr -y
# CentOS / RHEL / Fedora
sudo yum install mtr -y常用用法
# 交互模式(实时,按 q 退出)
mtr 8.8.8.8
# 报告模式(适合保存/分析)
mtr -rw 8.8.8.8
# 指定探测次数(例如 20 次)
mtr -c 20 8.8.8.8输出字段说明(常见)
- Host:路由节点 IP/域名
- Loss%:丢包率(关键指标)
- Snt:发送包总数
- Last / Avg / Best / Wrst:延迟统计(ms)
- StDev:延迟标准差(抖动)
排查要点
- 如果中间跳出现丢包但终点无丢包,通常是中间设备对 ICMP 限速(可忽略);若终点也丢包,则为真实链路问题。
- 若第 N 跳开始持续丢包至终点,问题通常出在该跳所在运营商/机房。
- CDN 与回源场景:用
mtr -rw <源站IP>检查源站链路。
交互模式快捷键
- h:帮助
- p:暂停/恢复
- d:切换显示模式
- c:清除统计并重新开始
快速排查命令速查
- 查看当前 TCP 连接数:
ss -ant | wc -l
netstat -an | grep ESTABLISHED- 查看进程与资源:
top -c
htop # 如果已安装
vmstat 1- 查看网卡速率与状态:
ethtool eth0网卡中断科普
cat /proc/interrupts什么是网卡中断?你可以把 CPU 想象成一个忙碌的经理,网卡是一个快递员。
- 数据到达: 当网卡收到网络数据包(电信号/光信号)并转换成内存里的数据。
- 发出中断: 网卡不能直接替 CPU 做决定,它会给 CPU 发一个“敲门信号”(即 中断 IRQ)。
- 处理任务: CPU 收到信号后,放下手头的工作,转去处理网卡里的数据包(拆包、协议栈转换等)。
此时如果数据包太多,CPU 就会被频繁的“敲门声”吵得没法干活,甚至某个 CPU 核心会被累死,这就是所谓的“中断不均衡”。
什么是 TCP 乱序?
TCP 是一个有序传输协议。假设发送方按顺序发出包 1、2、3,接收方收到的顺序却是 1、3、2。
接收方不能直接把包 3 交给应用层,必须把它放入缓存(Buffer)里“等”包 2 到了并排好序后才能提交。
如果乱序严重,会耗尽接收端的内存缓冲区,并可能导致发送方误以为包丢了,从而触发不必要的重复确认(Dup ACK)和快速重传。
由于 netstat 是累计值,如果要看实时的乱序率,可以用 watch 每秒观察变化:
Bash watch -d "netstat -s | grep -i 'out of order'"
什么是 TCP 重传率?
TCP 协议为了保证传输的可靠性,有一个“确认机制”:发送方每发一个包,接收方都要回一个 ACK(确认)。
正常情况:A 发包 -> B 收到并回 ACK -> A 发下一个包。
异常情况:A 发包后,在规定时间内没收到 ACK(可能是包丢了,也可能是 ACK 丢了),A 就会认为数据没传到,于是重新发送一遍。
Bash
sar -n TCP,ETCP 1 5关键指标:retrans/s(每秒重传的 TCP 段数量)。
重传率 = 重传的数据包数量 / 总发送的数据包数量(retrans / oseg)
命令输出示例
网络统计数据表 1
| 时间 | active/s | passive/s | iseg/s | oseg/s |
|---|---|---|---|---|
| 02:59:50 AM | 2.00 | 0.00 | 60.00 | 74.00 |
网络统计数据表 2
| 时间 | atmptf/s | estres/s | retrans/s | isegerr/s | orsts/s |
|---|---|---|---|---|---|
| 02:59:50 AM | 0.00 | 0.00 | 0.00 | 0.00 | 6.00 |
字段说明
| 字段 | 含义 |
|---|---|
| retrans/s | 每秒重传包数 |
| active/s | 主动建立连接 |
| passive/s | 被动建立连接 |
| iseg/s | 收到的段 |
| oseg/s | 发出的段 |
