当前位置:首页>Linux>第一天:从最核心的基础开始——Linux系统状态深度查看

第一天:从最核心的基础开始——Linux系统状态深度查看

  • 2026-09-16 20:19:36
第一天:从最核心的基础开始——Linux系统状态深度查看

今日技能:掌握 top 命令的进阶用法

目标:不止会看 top 的默认界面,而是理解每一列数据的含义,并能进行交互操作来诊断问题。


具体任务(30分钟)

1. 基础回顾(5分钟)

  • 打开终端,输入 top,看到默认界面。

  • 记住三部分信息:

    • 系统概要:负载(load average)、总进程数、CPU使用率。

    • 进程列表:默认按CPU使用率排序。

    • 底部命令提示。

2. 关键字段解析(10分钟)

今天重点理解进程列表中常被忽略但至关重要的几列:

  • %CPU:进程使用的单个CPU核心的百分比。超过100%表示使用了多核。

  • TIME+:进程自启动后使用的总CPU时间,格式是分:秒.百分秒。

  • VIRT:虚拟内存用量。包含进程申请的所有内存(包括共享库、交换分区等)。

  • RES:常驻内存。进程实际使用的物理内存(不包括交换分区)。这是判断内存占用的关键指标。

  • SHR:共享内存。可被其他进程共享的内存部分(如共享库)。

  • S:进程状态。

    • R = 运行中或可运行

    • S = 睡眠中(可中断)

    • D = 不可中断的睡眠(通常与IO有关,是排查IO瓶颈的关键)

3. 交互式操作实战(10分钟)

在 top 界面中,尝试按下这些键:

  1. 1(数字1):展开显示每个CPU核心的详细使用率。观察是否有单个核心被打满。

  2. M(大写):按内存使用率(RES) 排序。快速找出“内存杀手”。

  3. P(大写):按CPU使用率排序(默认)。

  4. T(大写):按CPU累计时间(TIME+) 排序。找出长期消耗CPU的进程。

  5. u(小写):然后输入用户名,只显示该用户的进程。

  6. z(小写):切换彩色/高亮显示,让数据行更清晰。

  7. Shift + > 或 Shift + <:向右或向左移动排序字段。

4. 一个诊断场景(5分钟)

假设服务器变慢,你的 top 检查流程:

  1. 看 load average(三个值):如果持续高于CPU核心数,表示系统过载。

  2. 看 %Cpu(s) 行:

    • us(用户态)高:应用进程消耗CPU多。

    • sy(内核态)高:系统调用频繁,可能有内核瓶颈或进程上下文切换过多。

    • wa(IO等待)高:磁盘或网络IO瓶颈的标志!这是最常见的性能问题之一。

  3. 按 M 看哪个进程占内存最多,按 1 看是否有CPU核心不均。


今日产出

  1. 在终端里实际操作一遍上述所有交互命令。

  2. 写下一条笔记,记录你认为最有用的一个技巧(例如:“wa值高时,下一步应该用 iotop 或 iostat 查具体磁盘IO”)。

  3. 尝试一个命令:top -b -n 1 > top_snapshot.txt,将top快照输出到文件,用于日后分析或监控脚本。


思维延伸

  • top 是实时监控,如果要记录历史,常用 sar(明天可以学)。

  • htop 是更友好的增强版(支持鼠标、树状视图),但 top 是所有Linux发行版的标配,必须掌握。

明日预告:学习 iostat 和 iotop,专门诊断 wa(IO等待)高的问题。


今天就开始吧!打开你的终端,输入 top,按下 1 和 M,感受一下系统在你指尖“透明”起来的感觉。

最新文章

随机文章