Skip to main content

Linux系统调试与性能分析命令

1. vmstat - 虚拟内存统计

vmstat [选项] [间隔] [次数]

常用选项:

  • -a:显示活跃/非活跃内存
  • -d:磁盘统计
  • -p:分区统计

示例:

vmstat 1 5

2. iostat - CPU和I/O统计

iostat [选项] [间隔] [次数]

常用选项:

  • -c:仅CPU
  • -d:仅磁盘
  • -x:扩展统计

示例:

iostat -dx 1 3

3. mpstat - CPU使用统计

mpstat [选项] [间隔] [次数]

常用选项:

  • -P ALL:所有CPU核心
  • -u:CPU利用率

示例:

mpstat -P ALL 1 3

4. pidstat - 进程资源统计

pidstat [选项] [间隔] [次数]

常用选项:

  • -u:CPU使用
  • -d:磁盘I/O
  • -r:内存使用

示例:

pidstat -urd 1 5

5. strace - 系统调用跟踪

strace [选项] 命令

常用选项:

  • -c:统计调用
  • -p:附加到进程
  • -f:跟踪子进程

示例:

strace -c ls /

6. ltrace - 库调用跟踪

ltrace [选项] 命令

常用选项:

  • -c:统计调用
  • -S:系统调用
  • -e:过滤调用

示例:

ltrace -c ping -c 1 example.com

7. perf - 性能分析工具

perf [选项] 命令

常用子命令:

  • stat:性能统计
  • top:实时性能
  • record:记录性能数据

示例:

perf stat ls /

8. sar - 系统活动报告

sar [选项] [间隔] [次数]

常用选项:

  • -u:CPU使用
  • -r:内存使用
  • -b:I/O速率

示例:

sar -u 1 3

9. dmesg - 内核日志

dmesg [选项]

常用选项:

  • -T:人类可读时间
  • -l:过滤级别
  • -H:人类可读格式

示例:

dmesg -T | tail -20

10. slabtop - 内核slab缓存

slabtop [选项]

常用选项:

  • -o:一次性输出
  • -s:排序字段

示例:

slabtop -s c