Linux 常用的排查故障指令
本文总结了常用的排查 linux 服务器故障的命令行指令,这些指令能够查看操作系统的实时状态信息,在排查问题时起到辅助作用。
进程状态
- ps
查看系统内的进程列表,可以看到内存、 CPU 等信息
- top / htop
按照资源的使用情况排序显示系统内的进程列表
- pidstat
针对某一进程输出系统资源的使用情况,包括: CPU、内存、I/O 等
- pstack
打印迸程内的调用堆钱
- strace
跟踪进程内的工作机制
内存状态
- free
查看系统的内存使用情况
- pmap
查看迸程的详细的内存分配情况
CPU状态
- vmstat
查看系统的 CPU 利用率、负载、内存等信息
- mpstat
查看系统的 CPU 利用率、负载,并且按照 CPU 核心分别显示相关信息
磁盘I/O
- iostat
查看磁盘信息及传输速度
- swapon
查看系统交换区的使用情况
- df
显示磁盘挂载的信息
网络状态
- ifconfig / ip
显示网卡挂载的信息
- ping
检测某服务器到其他服务器的网络连接情况
- telnet
检测某服务器的端口是否正常对外服务
- nc
模拟开启 TCP/IP 的服务器
- mtr
检测网络连通性问题,并可以获取某一个域名或者 IP 的丢包率
- nslookup
判断 DNS 能否正确解析域名,以及将域名解析到哪个 IP 地址
- traceroute
跟踪网络传输的详细路径,显示每一级网关的信怠
- sar
为全面监控网络、磁盘、CPU、内存等信息的轻量级工具
- netstat / ss
通常用于查看网络端口的连接情况
- iptraf
用于获取网络 ν0 的传输速度及其他网络状态信息
- tcpdump
可以拦截本机网卡上任何协议的通信内容,用于调试网络问题
- nmap
扫描某一服务器打开的端口
- ethtool
查看或修改网卡的配置