标签搜索

Linux常用系统监控工具介绍

mrui
2025-09-01 / 0 评论 / 5 阅读 / 正在检测是否收录...

在服务器管理和系统运维的日常工作中,实时监控系统资源使用情况是一项基础且关键的任务。

除了比较基础的top命令外,比较常用的还有以下这些:

  • htop:top命令的增强版
  • glances:提供更全面的系统监控,包括网络、磁盘IO等
  • atop:专注于长期性能监控和记录
  • btop++:htop的现代替代品,提供更华丽的界面和更多功能
  • iotop:专门监控磁盘IO使用情况
  • nmon:IBM开发的系统监控工具,提供更多性能数据

下面重点介绍一下htop命令。

htop是一款功能强大且易于使用的Linux系统监控工具,它通过直观的界面和丰富的交互功能,大大提升了系统管理员监控和管理进程的效率。从基本的系统资源监控到复杂的进程管理,从简单的排序过滤到自定义显示配置,htop几乎能满足所有与进程监控相关的需求。

在日常运维工作中,掌握htop的使用技巧不仅能帮助你快速定位系统问题,还能提高工作效率,减少排障时间。无论是处理高CPU负载、内存泄漏,还是需要快速终止失控进程,htop都能提供直观且高效的解决方案。

mh0913ju.png

htop界面详解

运行htop时会看到一个分为上下两个部分的界面。

顶部区域

顶部区域显示系统的整体资源使用情况,包括:

CPU使用率 每个CPU核心都有独立的使用率条,不同颜色代表不同类型的进程

  • 蓝色:低优先级进程
  • 绿色:普通用户进程
  • 红色:内核进程
  • 黄色/橙色:IRQ时间
  • 洋红色:软中断时间
  • 灰色:IO等待时间

    内存使用情况 显示物理内存和交换空间的使用百分比和具体数值

  • 绿色:已使用内存
  • 蓝色:缓冲区
  • 黄色/橙色:缓存

    负载平均值 显示1分钟、5分钟和15分钟的系统负载平均值

    正常运行时间 系统启动至今的运行时间

    任务统计 显示总进程数、运行中的进程数等信息

底部区域

底部区域显示系统中运行的进程列表,默认按CPU使用率排序。每个进程显示以下信息:

  • PID:进程ID
  • USER:进程所有者
  • PRI:进程优先级
  • NI:nice值
  • VIRT:虚拟内存大小
  • RES:常驻内存大小
  • SHR:共享内存大小
  • S:进程状态(R=运行,S=睡眠,Z=僵尸等)
  • CPU%:CPU使用百分比
  • MEM%:内存使用百分比
  • TIME+:进程运行时间
  • Command:命令名称和参数

htop操作技巧

基本操作

  • 上下左右键:在进程列表中导航
  • F5:切换树形视图,显示进程父子关系
  • F6:选择排序字段
  • F9:向进程发送信号(如终止进程)
  • F10或q:退出htop

    进程管理

htop最强大的功能之一是其直观的进程管理能力:

  • 终止进程:选中进程后按F9,然后选择要发送的信号(如SIGTERM或SIGKILL)
  • 调整进程优先级:选中进程后按F7(降低nice值)或F8(提高nice值)
  • 追踪进程系统调用:选中进程后按s,启动strace(需要安装strace工具)
  • 查看进程打开的文件:选中进程后按l,启动lsof(需要安装lsof工具)

    搜索功能

在htop中,按下/键可以搜索特定进程。输入关键字后,htop会高亮显示匹配的进程。这在系统运行大量进程时特别有用。

过滤功能

按下\键可以激活过滤功能,输入过滤条件后,htop只会显示符合条件的进程。例如,输入"apache"将只显示与apache相关的进程。

自定义显示列

htop允许你自定义显示哪些进程信息列:

  • 按F2进入设置菜单
  • 选择"Columns"选项
  • 使用空格键选择或取消选择要显示的列
  • F10保存并退出设置

    自定义配色方案

如果你不喜欢默认的颜色方案,可以在设置菜单中进行更改:

  • 按F2进入设置菜单
  • 选择"Colors"选项
  • 选择预设的配色方案或自定义各元素的颜色
  • F10保存并退出设置

使用示例

场景一:系统资源异常高,定位问题进程

当服务器CPU或内存使用率异常高时,可以通过以下步骤快速定位问题:

  1. 启动htop,查看顶部的CPU和内存使用情况
  2. 按F6,选择按CPU%或MEM%排序
  3. 观察排在顶部的进程,这些通常是资源消耗最大的
  4. 如果发现异常进程,可以进一步分析或终止它

    场景二:监控多核CPU的负载均衡情况

在多核服务器上,理想情况下工作负载应该均匀分布在各个CPU核心上:

  1. 启动htop,观察顶部的CPU使用率条
  2. 检查各个核心的使用率是否平衡
  3. 如果发现某个核心长期满负荷而其他核心空闲,可能表明应用程序不支持多线程或存在配置问题

    场景三:内存泄漏排查

对于疑似内存泄漏的情况,可以使用htop进行初步排查:

  1. 启动htop,按F6选择按MEM%排序
  2. 记录可疑进程的内存使用情况
  3. 定期观察这些进程的内存使用是否持续增长而不释放
  4. 如果确认某进程存在内存泄漏,可以重启该进程作为临时解决方案,并进一步分析根本原因
0

评论 (0)

取消