多年来,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
键查看每个进程的完整命令行。
htop 命令
htop 的目标是成为更好用的 top。与 top 类似,htop 在进程列表上方也有一个仪表板,可以显示彩色界面、动态条形图,以及每个进程完整的命令行。
top 和 htop 命令对比
特性 | top | htop |
---|---|---|
界面 | 文本界面 | 彩色、半图形化界面 |
交互性 | 有限 | 高度交互,支持鼠标操作 |
进程排序 | 可按 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
- macOS(使用 Homebrew):
brew install htop
htop 界面简介
htop 是一款 CLI 命令行应用,非常适合用来监控远程服务器。你可以通过 SSH 连接到远程计算机,在「终端」输入以下命令即可启动:
htop
启动 htop 后,你会看到一个简洁、直观的用户界面,默认显示了当前系统的所有重要指标,包括 CPU、内存和 SWAP 交换空间的使用率,以及正在运行的进程列表等。
顶部仪表板
顶部仪表板包括了每个 CPU 核心、内存和 SWAP 交换空间的使用率。下表列出了这些指标的颜色含义:
CPU 监视器 | Mem 内存监视器 | Swp 交换区监视器 | |
---|---|---|---|
蓝色 | 低优先级进程 | 缓冲区使用的内存 | 已用交换空间 |
绿色 | 普通用户进程 | 已用内存 | / |
红色 | 内核进程 | / | / |
黄色/橙色 | 虚拟机运行时间(客户机时间) | 缓存使用的内存 | 用于缓存的交换空间 |
品红色 | / | 共享内存 | |
灰色 | / | 压缩内存 | 前交换(Zswap) |
除了图形化的资源使用情况,htop 的顶部区域还包含了三个重要的数值监视器,它们提供了系统运行状态的关键信息:
- Tasks:任务监视器显示了当前系统中任务和线程总数、内核线程数,可以帮助你快速了解系统的整体负载情况。
- Load average:负载平均值显示了过去 1 分钟、5 分钟和 15 分钟内的平均 CPU 负载。该指标反映了系统在不同时间段内的平均工作量,有助于判断系统负载的趋势变化。
- Uptime:显示了系统开机运行时间,可以帮助你了解系统的持续运行时间,对于需要长期稳定运行的服务器来说尤其重要。
主进程界面
htop 的主进程界面列出了系统中运行进程的动态排序列表。默认情况下,进程按 CPU 使用率的降序排列,让你一眼就能看出哪些进程最耗系统资源。
进程列表包含以下重要信息:
列名 | 全称 | 描述 |
---|---|---|
PID | Process ID | 进程 ID 号 |
USER | User | 进程所有者 |
PRI | Priority | 进程优先级 |
NI | Nice | 进程的「友好度」(Nice 值)。友好值越高,进程越容易让出资源给其他进程 |
VIR | Virtual Memory | 进程使用的虚拟内存 |
RES | Resident Memory | 进程使用的物理内存 |
SHR | Shared Memory | 进程使用的共享内存 |
S | State | 当前进程状态 |
CPU% | CPU Percentage | 进程使用的 CPU 时间百分比 |
MEM% | Memory Percentage | 进程使用的内存百分比 |
TIME+ | CPU Time | 进程启动以来使用的总 CPU 时间 |
Command | Command | 启动进程的命令行 |
其中,进程状态(S 列)的含义如下:
状态符号 | 状态名称 | 描述 |
---|---|---|
R | Running | 运行中 |
S | Sleeping | 睡眠中(可中断) |
D | Disk sleep | 磁盘睡眠(通常因磁盘 I/O 活动不可中断) |
t | Traced | 被调试器停止 |
Z | Zombie | 僵尸进程(已终止但未被父进程回收) |
通过这些详细信息,系统管理员可以快速识别资源消耗异常的进程,从而有针对性地优化或排除问题。
I/O 界面
htop 不仅能监控 CPU 和内存使用情况,还能帮你掌握系统的 I/O 活动。你可以通过按Tab
键或点击「I/O」选项卡来切换界面。
I/O 界面提供了以下关键信息:
列名 | 全称 | 描述 |
---|---|---|
PID | Process ID | 进程 ID 号 |
USER | User | 进程所有者 |
IO | I/O Scheduling Class | I/O 调度类和优先级: R: 实时(Realtime) B: 尽力而为(Best-effort) id: 空闲(Idle) |
DISK R/W | Disk Read/Write | 磁盘读写的综合速度 |
DISK READ | Disk Read | 磁盘读取速度(字节/秒) |
DISK WRITE | Disk Write | 磁盘写入速度(字节/秒) |
SWPD% | Swapped Percentage | 页面交换占用的时间百分比 |
IOD% | I/O Delay Percentage | 等待同步块 I/O 完成的时间百分比 |
Command | Command | 启动进程的命令行 |
在这里,你可以快速识别哪些进程正在进行大量的磁盘操作,有助于发现可能的 I/O 瓶颈。例如:
- 如果某个进程的 DISK R/W 值异常高,可能意味着它正在进行密集的文件操作,这可能会影响系统整体性能。
- 同样,高 SWPD% 值可能表明系统内存不足,正在频繁使用交换空间,这通常会导致性能下降。而高 IOD% 值则可能预示存在 I/O 瓶颈,进程正在等待磁盘操作完成。
通过仔细分析这些数据,系统管理员可以更好地理解系统的 I/O 行为,从而进行有针对性的优化,提高系统整体性能。
htop 基本操作与常用快捷键
鼠标操作
htop 支持键盘和鼠标操作,使用起来非常灵活。点击「列标题」可以按该列对进程排序,选中的「列标题」背景色会变蓝,并多出一个方向三角指示器。
- 三角指示器向上表示升序,向下表示降序排序,每次点击可以切换排序方向。
- 你还可以点击进程或使用 Home、End、PageUp、PageDown 和方向键来(高亮)选中某个进程。
功能键
htop 界面底部列出了常用功能键/操作快捷键,方便在没有鼠标时使用。你可以按对应的功能键或点击蓝色标签来执行相应操作。
- 常用功能快捷键如下:
快捷键 | 功能描述 |
---|---|
F1 | 查看帮助,解释计量器颜色含义、进程状态和键盘快捷键等信息 |
F3 或/ | 按名称搜索进程(F3 查找下一个匹配项,Shift+F3 查找上一个) |
F4 | 过滤进程 |
F5 | 切换树状显示,显示进程父子关系 |
F10 或q | 退出 htop |
U | 按用户筛选进程 |
- 针对选中进程的快捷键:
快捷键 | 功能描述 |
---|---|
F7 | 降低进程优先级(提高 Nice 值) |
F8 | 提高进程优先级(降低 Nice 值) |
F9 或k | 终止进程 |
某些「终端」可能会将 F10 用于自身功能。如果遇到这类情况,需在终端设置中禁用「启用菜单加速键」选项,以便将 F10 按键传递给 htop,但推荐直接使用q
来执行退出。
htop 自定义配置与高级技巧
按F2
键进入设置界面。在这里,你可以灵活配置 htop 的显示选项、顶部布局、计量器、界面和颜色。
Display Options(显示选项)
在显示选项配置中,你可以勾选或取消复选框,来启用或禁用各种功能。
Header Layout(顶部布局)
htop 顶部仪表板默认为两列式布局,每列各占终端窗口一半的宽度。在这里,你可以根据需要调整列数和宽度比例。
Meters(计量器)
在计量器设置中,你可以选择在顶部区域显示哪些计量器,显示的列数与你在 Header Layout 中设置的相同。
在设置 Meters 时,你可以:按Del
键删除计量器;按Enter
键移动计量器;按空格
键更改计量器显示样式(图形、数字或 LED 风格)。
Screens(界面)
界面设置与 Meters 类似,你可以在这里选择主进程界面或 I/O 界面,并自定义显示的列。添加新列的方法与添加 Meters 类似,你还可以通过按F5
键创建全新的自定义界面。
Colors(颜色)
在颜色设置中,你可以选择不同的颜色主题,让 htop 的外观更符合你的个人喜好。
通过这些自定义选项,你可以将 htop 打造成一个更符合需求的系统监控工具。花些时间熟悉这些设置,你会发现 htop 能为你提供更加精准和高效的系统监控体验。
最新评论
可以共存,但虚拟机维护起来更麻烦了呀。
关掉之后重启下系统再试试呢
不能共存吗?
我是家庭版,看着关掉了,但是破解程序一运行还是弹窗,搞不了