linux Cheatsheet

Linux 排障命令速查表

Linux 服务器排障命令一页速查:top/ps 进程负载、ss/lsof 端口连接、df/du/free 磁盘内存、journalctl/dmesg 日志与 OOM 定位,服务器现场按现象选组快速采集证据。

服务器出问题时最常敲的进程、端口、磁盘、内存、日志和网络命令一页速查,按现象选组快速采集证据。

linux排障进程端口

进程与负载

  • top -c
    实时查看进程和负载,c 显示完整命令
  • ps aux --sort=-%cpu | head
    按 CPU 排序看占用最高的进程
  • ps aux --sort=-%mem | head
    按内存排序找内存大户
  • kill -9 <pid>
    强制杀进程,先用普通 kill 不行再上 -9
  • uptime
    快速看 1/5/15 分钟平均负载

端口与网络

  • ss -tlnp
    列出监听中的 TCP 端口和对应进程
  • ss -tlnp | grep :8080
    查指定端口被谁占用
  • curl -v http://127.0.0.1:8080
    验证本地服务是否可达,看握手细节
  • ping -c 4 host
    测试连通性
  • dig +short example.com
    快速查 DNS 解析结果

磁盘与内存

  • df -h
    查看各分区磁盘使用率
  • du -sh * | sort -rh | head
    找当前目录下最占空间的子项
  • free -h
    查看内存和 swap 使用情况
  • lsof +L1
    找已删除但仍被进程占用的文件(磁盘满却找不到大文件时用)
  • iostat -x 1
    查看磁盘 IO 压力,需 sysstat

日志与服务

  • journalctl -u nginx -n 200 --no-pager
    查看 systemd 服务最近日志
  • journalctl -f
    实时跟踪系统日志
  • systemctl status nginx
    查看服务状态和最近几行日志
  • tail -f /var/log/app.log
    跟踪应用日志文件
  • dmesg -T | tail
    查看内核消息,排查 OOM、硬件错误

容易踩的坑

  • 磁盘显示满了却找不到大文件,多半是进程占着已删除文件,用 lsof +L1 定位后重启进程。
  • kill 默认发 SIGTERM 让进程优雅退出,先试普通 kill,确认卡死再 kill -9。
  • dmesg 里出现 "Out of memory: Killed process" 说明是 OOM,不是程序自己崩的。