系统极客一直在努力
专注操作系统及软件使用技能

htop 命令安装和使用详解:从入门到精通

htop

多年来,top 命令一直是 Linux 用户查看系统资源占用的首选工具。尽管 top 至今仍在广泛使用,但本文要介绍的是它的升级版——htop。相比传统的 top,htop 的界面更加美观、信息组织更加合理,而且几乎兼容所有 Linux 发行版。

htop 系统监视工具能够更清晰地展示 Linux 系统进程,并提供了一系列强大的进程管理功能。接下来,让我们一起来看看如何使用这个色彩丰富、功能强大的 Linux 系统管理利器。

htop 和 top 的区别

top 命令

top 命令是类 Unix 操作系统中的经典工具,适用于几乎所有类 Unix 系统。它以简约的文本界面展示了丰富的系统运行和资源使用信息。top 同样支持颜色显示、高亮功能,和基本的图形化展示。

在使用 top 命令时,你可以:按z键进入彩色模式;按t键显示 CPU 负载图;按1键列出所有 CPU 核心;按m键显示内存使用图;按c键查看每个进程的完整命令行。

top 命令
top 命令

htop 命令

htop 的目标是成为更好用的 top。与 top 类似,htop 在进程列表上方也有一个仪表板,可以显示彩色界面、动态条形图,以及每个进程完整的命令行。

htop 命令
htop 命令

top 和 htop 命令对比

特性tophtop
界面文本界面彩色、半图形化界面
交互性有限高度交互,支持鼠标操作
进程排序可按 CPU、内存等排序可按多种指标排序,更灵活
进程搜索支持支持,且更容易使用
进程树视图不支持支持
滚动视图不支持支持水平和垂直滚动
配置选项有限丰富,可高度自定义
CPU 使用率显示每个核心单独显示每个核心单独显示
内存/交换空间图形支持支持
快捷键较少更多,且更直观
资源占用较低比 top 略高
默认安装大多数类 Unix 系统默认内置通常需要单独安装

那么,这是否意味着 top 可以做到 htop 的所有功能呢?答案是否定的。htop 的功能远不止外观漂亮、直观的颜色和图表,它还有更多强大的功能等待你去探索。

安装 htop

在绝大多数情况下,htop 可以直接从 Linux 发行版的默认软件仓库中获取,包名就是小写的htop。以下是在不同系统上安装 htop 的方法:

  • Debian、Ubuntu 及其衍生版本
sudo apt install htop
  • 基于 Red Hat 的发行版 (如 Fedora、CentOS 等):
sudo dnf install htop
  • Arch Linux 和 Manjaro
sudo pacman -S htop
  • openSUSE
sudo zypper install htop
brew install htop

htop 界面简介

htop 是一款 CLI 命令行应用,非常适合用来监控远程服务器。你可以通过 SSH 连接到远程计算机,在「终端」输入以下命令即可启动:

htop

启动 htop 后,你会看到一个简洁、直观的用户界面,默认显示了当前系统的所有重要指标,包括 CPU、内存和 SWAP 交换空间的使用率,以及正在运行的进程列表等。

顶部仪表板

htop 命令:顶部仪表板
htop 命令:顶部仪表板

顶部仪表板包括了每个 CPU 核心、内存和 SWAP 交换空间的使用率。下表列出了这些指标的颜色含义:

CPU 监视器Mem 内存监视器Swp 交换区监视器
蓝色低优先级进程缓冲区使用的内存已用交换空间
绿色普通用户进程已用内存/
红色内核进程//
黄色/橙色虚拟机运行时间(客户机时间)缓存使用的内存用于缓存的交换空间
品红色/共享内存
灰色/压缩内存前交换(Zswap

除了图形化的资源使用情况,htop 的顶部区域还包含了三个重要的数值监视器,它们提供了系统运行状态的关键信息:

  • Tasks:任务监视器显示了当前系统中任务和线程总数、内核线程数,可以帮助你快速了解系统的整体负载情况。
  • Load average:负载平均值显示了过去 1 分钟、5 分钟和 15 分钟内的平均 CPU 负载。该指标反映了系统在不同时间段内的平均工作量,有助于判断系统负载的趋势变化。
  • Uptime:显示了系统开机运行时间,可以帮助你了解系统的持续运行时间,对于需要长期稳定运行的服务器来说尤其重要。

主进程界面

htop 的主进程界面列出了系统中运行进程的动态排序列表。默认情况下,进程按 CPU 使用率的降序排列,让你一眼就能看出哪些进程最耗系统资源。

htop 命令:主进程界面
htop 命令:主进程界面

进程列表包含以下重要信息:

列名全称描述
PIDProcess ID进程 ID 号
USERUser进程所有者
PRIPriority进程优先级
NINice进程的「友好度」(Nice 值)。友好值越高,进程越容易让出资源给其他进程
VIRVirtual Memory进程使用的虚拟内存
RESResident Memory进程使用的物理内存
SHRShared Memory进程使用的共享内存
SState当前进程状态
CPU%CPU Percentage进程使用的 CPU 时间百分比
MEM%Memory Percentage进程使用的内存百分比
TIME+CPU Time进程启动以来使用的总 CPU 时间
CommandCommand启动进程的命令行

其中,进程状态(S 列)的含义如下:

状态符号状态名称描述
RRunning运行中
SSleeping睡眠中(可中断)
DDisk sleep磁盘睡眠(通常因磁盘 I/O 活动不可中断)
tTraced被调试器停止
ZZombie僵尸进程(已终止但未被父进程回收)

通过这些详细信息,系统管理员可以快速识别资源消耗异常的进程,从而有针对性地优化或排除问题。

I/O 界面

htop 不仅能监控 CPU 和内存使用情况,还能帮你掌握系统的 I/O 活动。你可以通过按Tab键或点击「I/O」选项卡来切换界面。

htop 命令:I/O 界面
htop 命令:I/O 界面

I/O 界面提供了以下关键信息:

列名全称描述
PIDProcess ID进程 ID 号
USERUser进程所有者
IOI/O Scheduling ClassI/O 调度类和优先级:
R: 实时(Realtime)
B: 尽力而为(Best-effort)
id: 空闲(Idle)
DISK R/WDisk Read/Write磁盘读写的综合速度
DISK READDisk Read磁盘读取速度(字节/秒)
DISK WRITEDisk Write磁盘写入速度(字节/秒)
SWPD%Swapped Percentage页面交换占用的时间百分比
IOD%I/O Delay Percentage等待同步块 I/O 完成的时间百分比
CommandCommand启动进程的命令行

在这里,你可以快速识别哪些进程正在进行大量的磁盘操作,有助于发现可能的 I/O 瓶颈。例如:

  • 如果某个进程的 DISK R/W 值异常高,可能意味着它正在进行密集的文件操作,这可能会影响系统整体性能。
  • 同样,高 SWPD% 值可能表明系统内存不足,正在频繁使用交换空间,这通常会导致性能下降。而高 IOD% 值则可能预示存在 I/O 瓶颈,进程正在等待磁盘操作完成。

通过仔细分析这些数据,系统管理员可以更好地理解系统的 I/O 行为,从而进行有针对性的优化,提高系统整体性能。

htop 基本操作与常用快捷键

鼠标操作

htop 支持键盘和鼠标操作,使用起来非常灵活。点击「列标题」可以按该列对进程排序,选中的「列标题」背景色会变蓝,并多出一个方向三角指示器。

htop 命令:对进程进行排序
htop 命令:对进程进行排序
  • 三角指示器向上表示升序,向下表示降序排序,每次点击可以切换排序方向。
  • 你还可以点击进程或使用 Home、End、PageUp、PageDown 和方向键来(高亮)选中某个进程。

功能键

htop 界面底部列出了常用功能键/操作快捷键,方便在没有鼠标时使用。你可以按对应的功能键或点击蓝色标签来执行相应操作。

htop 命令:常用快捷键
htop 命令:常用快捷键
  • 常用功能快捷键如下:
快捷键功能描述
F1查看帮助,解释计量器颜色含义、进程状态和键盘快捷键等信息
F3/按名称搜索进程(F3查找下一个匹配项,Shift+F3查找上一个)
F4过滤进程
F5切换树状显示,显示进程父子关系
F10q退出 htop
U按用户筛选进程
  • 针对选中进程的快捷键:
快捷键功能描述
F7降低进程优先级(提高 Nice 值)
F8提高进程优先级(降低 Nice 值)
F9k终止进程

某些「终端」可能会将 F10 用于自身功能。如果遇到这类情况,需在终端设置中禁用「启用菜单加速键」选项,以便将 F10 按键传递给 htop,但推荐直接使用q来执行退出。

htop 自定义配置与高级技巧

F2键进入设置界面。在这里,你可以灵活配置 htop 的显示选项、顶部布局、计量器、界面和颜色。

Display Options(显示选项)

在显示选项配置中,你可以勾选或取消复选框,来启用或禁用各种功能。

htop 命令:自定义显示选项
htop 命令:自定义显示选项

Header Layout(顶部布局)

htop 顶部仪表板默认为两列式布局,每列各占终端窗口一半的宽度。在这里,你可以根据需要调整列数和宽度比例。

htop 命令:自定义顶部布局
htop 命令:自定义顶部布局

Meters(计量器)

在计量器设置中,你可以选择在顶部区域显示哪些计量器,显示的列数与你在 Header Layout 中设置的相同。

htop 命令:自定义计量器
htop 命令:自定义计量器

在设置 Meters 时,你可以:按Del键删除计量器;按Enter键移动计量器;按空格键更改计量器显示样式(图形、数字或 LED 风格)。

Screens(界面)

界面设置与 Meters 类似,你可以在这里选择主进程界面或 I/O 界面,并自定义显示的列。添加新列的方法与添加 Meters 类似,你还可以通过按F5键创建全新的自定义界面。

htop 命令:自定义界面
htop 命令:自定义界面

Colors(颜色)

在颜色设置中,你可以选择不同的颜色主题,让 htop 的外观更符合你的个人喜好。

htop 命令:选择颜色主题
htop 命令:选择颜色主题

通过这些自定义选项,你可以将 htop 打造成一个更符合需求的系统监控工具。花些时间熟悉这些设置,你会发现 htop 能为你提供更加精准和高效的系统监控体验。

赞(3) 赞赏

评论 抢沙发

微信赞赏