top 与 htop 实时监控

简介: `top` 和 `htop` 是 Linux 系统中常用的实时监控工具。`top` 命令默认每 3 秒刷新一次,显示系统整体概览和进程列表,支持基本的进程管理操作。`htop` 则提供更友好的界面,带有彩色条形图、鼠标支持和更多交互功能,如进程搜索、优先级调整等。两者都适用于监控系统资源和管理进程,但 `htop` 功能更丰富,用户体验更好,适合复杂场景。

top 命令实时监控讲解

基本用法

在终端输入 top 命令,即可进入实时监控界面,系统默认每 3 秒刷新一次信息。

界面布局

  • 头部:显示系统整体概览,包括当前时间、系统运行时间、登录用户数、系统负载等,以及 CPU 和内存的使用情况,如总内存、已用内存、空闲内存等。
  • 主体部分:以列表形式展示系统中的各个进程,每行代表一个进程,列出了进程 ID(PID)、用户(USER)、优先级(PR)、虚拟内存使用量(VIRT)、物理内存使用量(RES)、共享内存(SHR)、状态(S)、CPU 使用率(%CPU)、内存使用率(%MEM)、累计 CPU 时间(TIME+)以及进程名称(COMMAND)等信息。

常用选项

  • -d:设置更新间隔时间,单位为秒,例如 top -d 2 表示每 2 秒刷新一次。
  • -p:指定要监控的进程 ID,可同时指定多个,用逗号隔开,如 top -p 1234,5678
  • -u:指定要监控的用户所属的进程,如 top -u username
  • -i:忽略空闲和僵尸进程,只显示活动的进程。

交互命令

  • k:杀死进程,输入该命令后会提示输入要杀死的进程 ID。
  • r:重新调整进程的优先级,输入该命令后会提示输入要调整优先级的进程 ID 和新的优先级值。
  • c:切换显示进程的完整命令路径,输入该命令后,进程名称会显示为完整的命令路径。
  • M:按内存使用率对进程进行排序,方便快速找到占用内存较多的进程。
  • P:按 CPU 使用率对进程进行排序,方便快速找到占用 CPU 较多的进程。
  • q:退出 top 命令,返回终端。

使用 top 监控特定进程

显示完整命令行路径:top -c

设置刷新频率:top -d 5 将以每 5 秒刷新一次的频率更新信息

top -d 5 -p 1234 此命令每 5 秒刷新一次,仅监控 PID 为 1234 的进程,适用于需要重点关注某个特定进程的场景,如监控某个关键服务的运行状态。

htop 命令实时监控讲解

基本用法

在终端输入 htop 命令,即可进入实时监控界面,系统默认每 1 秒刷新一次信息。

界面布局

  • 头部:同样显示系统整体概览信息,包括 CPU 使用率、内存使用率、交换空间使用率等,以彩色条形图的形式直观展示,还显示了系统时间、运行时间、登录用户数、系统负载等信息。
  • 主体部分:以列表形式展示系统中的各个进程,每行代表一个进程,列出了进程 ID、用户、优先级、虚拟内存使用量、物理内存使用量、共享内存、状态、CPU 使用率、内存使用率、累计 CPU 时间以及进程名称等信息,与 top 命令类似,但 htop 的界面更加美观,信息显示更加直观。

常用选项

  • F2:进入设置菜单,可以自定义显示的列、颜色主题、排序方式等,根据个人喜好和需求进行个性化设置。
  • F3:搜索进程,输入进程名称或关键字,快速定位到相关进程,方便查找特定进程。
  • F9:杀死进程,直接选择要杀死的进程,然后按 F9 键即可,无需输入进程 ID,操作更加便捷。
  • +-:调整进程的优先级,选择要调整优先级的进程,然后按 + 键提高优先级,按 - 键降低优先级。

使用 htop 查看系统资源

直接运行 htop 命令,即可进入交互式界面,查看系统资源使用情况和进程列表,通过各种交互命令对进程进行操作,如杀死进程、调整优先级等,适用于需要实时监控和管理多个进程的场景,如系统管理员日常监控系统运行状态。

使用其他仓库安装 htop

如果 htop 在默认的仓库中不可用,可以尝试启用其他仓库。epel-release 是常用的一个,可以尝试安装并再次查找 htop:

sudo yum install epel-release
sudo yum install htop

交互命令

  • F1:打开 htop 的帮助页面,显示有关各个功能键的详细信息。
  • F2:进入 htop 的设置页面,可以在这里进行各种设置,包括显示选项、列排序、颜色方案等。
  • F3:在进程列表中搜索进程。输入关键字后,htop 只显示匹配的进程。
  • F4:设置过滤器,只显示符合条件的进程。
  • F5:切换到树状图模式,显示进程之间的父子关系。
  • F6:选择排序方式,可以按照 CPU 使用率、内存使用量等进行排序。
  • F7:改变进程的优先级(nice 值)。
  • F8:重新设置进程的优先级。
  • F9:选择并杀死进程。可以选择发送不同的信号,如 SIGTERM(15)。
  • F10q:退出 htop。

top 与 htop 实时监控比较

特性

top

htop

界面和用户体验

界面简单,文本模式,无彩色显示,无鼠标操作

界面友好,彩色显示,支持鼠标操作,更直观

功能和扩展性

提供基本交互式功能,如排序、刷新、查看不同系统资源等

提供更多功能,如调整进程优先级、搜索进程、自定义视图、显示进程树结构等

性能和资源消耗

资源消耗相对较小

资源消耗稍多,但功能更丰富,用户体验更好

安装方式

通常预装在大多数 Linux 发行版中

需要手动安装,可通过包管理器安装

适用场景

适用于只需要查看当前系统状态和进程的简单场景

适用于需要更详细信息、更丰富功能和更好用户体验的复杂场景

目录
相关文章
|
网络协议
aws-vpc-对等连接(不同vpc之间的内网互通)
aws-vpc-对等连接(不同vpc之间的内网互通)
2241 0
aws-vpc-对等连接(不同vpc之间的内网互通)
|
8月前
|
存储 关系型数据库 MySQL
使用命令行cmd查询MySQL表结构信息技巧分享。
掌握了这些命令和技巧,您就能快速并有效地从命令行中查询MySQL表的结构信息,进而支持数据库维护、架构审查和优化等工作。
678 9
|
开发者
如何画好一张架构图/业务图/流程图,掌握4个关键点
本文分享了如何制作出有帮助的图表,强调了即使是开发者也需要良好的绘图技巧。文章列举了常见的图表类型,如代码实现图、技术架构图、业务流程图、技术链路图、交互时序图和业务架构图,并指出好的图表应具备结构清晰、外表美观和内容完整的特点。为了达到这些标准,作者推荐了设计的四大原则:亲密性、对齐、对比和重复,以及色轮的运用来提升美感。此外,还介绍了黄金分割构图法以增加视觉吸引力。最后,强调了以终为始的设计思路,确保图表能独立传达完整的信息,并鼓励读者实践这些技巧,提升工作和生活中的沟通效率。
1800 1
如何画好一张架构图/业务图/流程图,掌握4个关键点
|
开发工具 git
【看这一篇就够了】如何删除gitHub仓库中的文件
【看这一篇就够了】如何删除gitHub仓库中的文件
|
网络协议 网络性能优化
TCP面向连接
【8月更文挑战第19天】
519 1
|
机器学习/深度学习 人工智能 自然语言处理
好书推荐丨AI时代Python量化交易实战:ChatGPT让量化交易插上翅膀
好书推荐丨AI时代Python量化交易实战:ChatGPT让量化交易插上翅膀
866 2
|
监控 Linux
Linux 监控工具htop
Linux 监控工具htop
187 0
|
开发者 Python
什么是Python中的类型提示(Type Hints)?如何使用它们?
类型提示是 Python 语言中的一种简单语法,用于确定变量、函数或类的类型,它可以在编写代码时提供类型检查和智能提示,帮助开发者更好地理解和使用代码。【2月更文挑战第1天】【2月更文挑战第1篇】
355 3
|
机器学习/深度学习 算法 网络架构
再掀强化学习变革!DeepMind提出「算法蒸馏」:可探索的预训练强化学习Transformer
再掀强化学习变革!DeepMind提出「算法蒸馏」:可探索的预训练强化学习Transformer
756 0