后端程序员必会的Linux基础命令:网络/进程/服务器资源管理

后端程序员必会的 Linux 基础命令:网络 / 进程 / 服务器资源管理

作为后端程序员,Linux 服务器运维和故障排查是日常工作中绕不开的部分。下面按网络进程资源管理三大类,整理出最实用、最常敲的命令清单(2025–2026 主流版本),附带常用参数、实际场景和技巧。

一、网络相关命令(排查连接、端口、流量、DNS 等)

命令主要作用常用参数 / 示例典型场景
netstat / ss查看网络连接、监听端口ss -tuln(推荐)
ss -tunlp(带进程)
ss -s(统计)
查看端口占用、连接状态、哪个进程在监听 8080
lsof列出打开的文件(含 socket)lsof -i:8080(指定端口)
lsof -iTCP:80
快速找到占用端口的进程
ip现代网络配置查看(替代 ifconfig)ip addr / ip link / ip route
ip neigh(ARP 表)
查看 IP、网卡、路由表
ping测试网络连通性ping -c 4 baidu.com
ping -i 0.2(高频 ping)
基础连通性测试
traceroute / mtr查看路由路径traceroute baidu.com
mtr -r -c 100 baidu.com(推荐)
排查网络延迟、丢包、路由问题
curl / wget测试 HTTP 接口、下载文件curl -I https://api.example.com(只看 header)
curl -v(详细)
接口调试、抓取 header、测试超时
tcpdump抓包分析tcpdump -i eth0 port 80 -nn(抓 80 端口)
tcpdump -i any host 8.8.8.8
抓取网络包、分析协议(HTTP、TCP 握手)
nslookup / digDNS 解析dig +short baidu.com
dig @8.8.8.8 www.example.com
检查 DNS 解析是否正确
iftop / nload实时监控网卡流量iftop -i eth0
nload eth0
查看哪个 IP 流量大

常用组合

  • 端口被占用?→ ss -tunlp | grep 8080 → 找到 PID → ps -ef | grep PID
  • 接口不通?→ ping 目标IPtraceroute 目标IPtcpdump 抓包

二、进程相关命令(查看、监控、杀进程、资源占用)

命令主要作用常用参数 / 示例典型场景
ps查看进程ps aux(所有进程)
ps -ef --sort=-%cpu(按 CPU 降序)
快速查看所有进程信息
top / htop实时监控进程(推荐 htop)top -c(显示完整命令)
htop(更美观,支持鼠标)
实时查看 CPU、内存、进程占用
pidstat进程级资源监控(sysstat 包)pidstat 1(每秒刷新)
pidstat -u 1(CPU)
pidstat -r 1(内存)
精确监控某个 PID 的 CPU/内存/IO 使用
pstree查看进程树pstree -p(带 PID)
pstree -a -u -p
查看进程父子关系(排查 zombie、孤儿进程)
kill / pkill杀死进程kill -9 PID
pkill -9 java(杀所有 java 进程)
强制杀死进程
lsof查看进程打开的文件/端口lsof -p PID(进程打开的所有文件)
lsof -p PID | grep LISTEN
排查端口、文件句柄泄漏
strace跟踪系统调用(神器)strace -p PID(跟踪进程)
strace -f -e trace=network java -jar xxx.jar
排查卡死、IO 慢、系统调用异常
perf性能剖析(火焰图)perf record -p PID -g -- sleep 10
perf report
定位 CPU 热点、锁竞争

常用组合

  • 进程 CPU 飙高?→ top 找到 PID → pidstat -u 1 -p PIDstrace -p PIDperf record
  • 端口被占用?→ ss -tunlp | grep 8080 → 拿到 PID → ps -ef | grep PID

三、服务器资源管理命令(内存、CPU、磁盘、IO)

命令主要作用常用参数 / 示例典型场景
free查看内存使用free -h(人类可读)
free -h -s 1(每秒刷新)
快速看内存占用、swap 使用情况
vmstat虚拟内存、进程、CPU 统计vmstat 1(每秒刷新)
vmstat 1 10(10 次)
查看 CPU 等待队列、swap 换入换出
iostat磁盘 IO 统计(sysstat 包)iostat -x 1(扩展统计)
iostat -dx 1(按磁盘)
排查磁盘 IO 高、慢查询
df磁盘空间使用df -h(人类可读)
df -h /data
查看磁盘使用率
du查看目录/文件大小du -sh /var/log/*(查看日志目录大小)
du -h --max-depth=1 /data
快速定位哪个目录占空间大
sar历史资源监控(sysstat 包)sar -u 1 5(CPU)
sar -r(内存)
sar -d(磁盘)
查看过去 1 分钟、5 分钟、15 分钟的资源使用
uptime / w查看系统负载uptime(负载平均值)
w(当前登录用户)
快速判断系统是否繁忙(负载 > 核数 × 2 就偏高)
top / htop综合资源监控top → 按 Shift + P(CPU 排序)
htop → 按 F6 排序
日常监控首选

常用组合

  • 内存不足?→ free -hcat /proc/meminfovmstat 1(看 si/so 列)
  • 磁盘满?→ df -hdu -sh /* 逐级定位 → du -sh /var/log/*(日志大户)

四、后端开发最常用 10 条组合命令(速记版)

  1. 查看端口占用:ss -tunlp | grep 8080
  2. 查看进程 CPU/内存:top → 按 Shift + PShift + M
  3. 查看进程打开文件:lsof -p PID
  4. 查看进程网络连接:ss -tunlp | grep PID
  5. 查看系统负载:uptimew
  6. 查看内存详细:free -h + cat /proc/meminfo
  7. 查看磁盘 IO:iostat -x 1
  8. 定位大文件/目录:du -sh /* | sort -hr
  9. 抓包分析:tcpdump -i eth0 port 8080 -nn -c 100
  10. 跟踪进程系统调用:strace -p PID -f -tt

五、推荐工具(提升效率)

  • htop(比 top 好用太多)
  • glances(一屏看所有资源)
  • btop(现代美观版 top)
  • sysdig / bpftrace(高级 eBPF 工具)
  • prometheus + node_exporter(长期监控)

掌握这些命令,你就能快速定位 90% 的线上问题。

如果你想深入某个命令的底层原理(例如 ss 怎么从内核读取 socket 信息、strace 如何 hook 系统调用等),或者需要完整的一套故障排查流程模板,随时告诉我,我继续展开。

文章已创建 4631

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部