介绍
htop允许在垂直和水平滚动过程列表,以查看其完整的命令行和相关信息,例如内存和CPU消耗。还显示了系统广泛的信息,例如负载平均值或互换使用。
显示的信息是可以通过图形设置进行配置的,可以进行交互分类和过滤。
可以在不进入PID的情况下完成与过程(例如杀戮和重新恢复)有关的任务。
运行htop需要ncurses库,通常称为libncurses(w)。
htop用C写成。
有关更多信息和详细信息,请访问htop .dev。
建立说明
先决条件
构建时间依赖性列表:
关于ncurses的注意:
htop需要ncurses6.0。请注意,适当的软件包有时仍称为libncurses5(在debian/ubuntu上)。ncurses通常有两种口味:
- 在Unicode支持下。
- 没有Unicode支持。
这也是在Debian/Ubuntu上的软件包名称中反映的东西(通过附加的“ w' – 'w'ide字符支持)。
额外的构建时间依赖项列表(基于功能标志):
-
pkg-config -
sensors -
hwloc -
libcap(v2.21或更高版本) -
libnl-3和libnl-genl-3
pkg-config是可选的,但建议使用。 htop的配置脚本可能会利用pkg-config获得库所需的编译器和链接标志。一些OS分布通过诸如pkgconf等替代实现提供pkg-config功能。在您的软件包管理器中查找两个名称。
安装这些和其他必需的软件包,以从软件包管理器中进行C开发。
Debian/Ubuntu
sudo apt install libncursesw5-dev autotools-dev autoconf automake build-essential
软呢帽/RHEL
sudo dnf install ncurses-devel automake autoconf gcc
Archlinux/Manjaro
sudo pacman -S ncurses automake autoconf gcc
macos
brew install ncurses automake autoconf gcc
从来源编译:
要从源头编译,请从GIT存储库中下载( git clone或从GitHub版本下载),然后运行:
./autogen.sh && ./configure && make
安装
在本地系统运行上make install 。默认情况下, make install安装到/usr/local中。要更改此路径使用./configure --prefix=/some/path 。
构建选项
htop具有多种构建时间选项,可以启用/禁用其他功能。
通用的
--enable-unicode:启用Unicode支持- 依赖性: libncursesw
- 默认值:是的
--enable-affinity:enablesched_setaffinity(2)和sched_getaffinity(2)以获得亲和力支持;与HWLOC发生冲突- 默认值:检查
--enable-hwloc:启用HWLOC支持CPU亲和力;禁用亲和力支持- 依赖性: libhwloc
- 默认:不
--enable-static:构建静态htop二进制;不支持HWLOC和延迟会计- 默认:不
--enable-debug:启用断言和内部理智检查;意味着绩效处罚- 默认:不
绩效副驾驶
--enable-pcp:通过新的PCP- htop实用程序启用性能副驾驶支持- 依赖性: libpcp
- 默认:不
Linux
-
--enable-sensors:启用libsensor(3)支持阅读温度数据- 依赖项: libsensors-dev (构建时间),在运行时通过
dlopen(3)加载libsensors (3) - 默认值:检查
- 依赖项: libsensors-dev (构建时间),在运行时通过
--enable-capabilities:启用Linux功能支持- 依赖性: libcap
- 默认值:检查
--with-proc:与Linux兼容的PROC文件系统的位置- 默认值: /proc
-
--enable-openvz:启用OpenVZ支持- 默认:不
--enable-vserver:启用VServer支持- 默认:不
--enable-ancient-vserver:启用古代vserver支持(暗示--enable-vserver)- 默认:不
--enable-delayacct:启用Linux延迟会计支持- 依赖项: libnl-3-dev (构建时间)和libnl-genl-3-dev (构建时间),在运行时libnl-3和libnl-genl-3通过
dlopen(3)加载并请求,并请求 - 默认值:检查
- 依赖项: libnl-3-dev (构建时间)和libnl-genl-3-dev (构建时间),在运行时libnl-3和libnl-genl-3通过
运行时依赖性:
htop具有一组固定的最小运行时依赖关系,尽可能保持最小。
-
ncurses库用于终端处理(广泛的字符支持)。
运行时可选依赖性:
htop具有一组固定的可选依赖项,具体取决于使用的构建/配置选项:
Linux
- 当存在对可选依赖关系(即
libsensors,libsystemd)的支持时,libdl始终需要静态二进制。 -
libcap是POSIX 1003.1E功能的用户空间接口,当使用--enable-capabilities配置htop时,总是需要使用。 -
libsensors,温度和CPU速度的读数,即使使用--enable-sensors用于配置htop,也是可选的。 -
libsystemd是可选的,当时不使用--enable-static来配置htop。如果未通过configure找到静态的构建和libsystemd,则完全禁用对SystemD仪表的支持。 -
libnl-3和libnl-genl-3,如果htop配置了--enable-delayacct和延迟会计过程字段,则有效。 - 当内核与
CONFIG_TASK_IO_ACCOUNTING=Y编译时,可以使用I/O计数器。
htop检查htop运行时实际运行时库的可用性。
BSD
在大多数BSD系统上, kvm是阅读内核信息的要求。
有关所需和可选依赖项的更多信息,请参见configure.ac。
用法
有关支持的密钥命令的列表,请参见“手册”页面( man htop )或“ HTOP”( htop内部的F1或H )。
支持
如果您运行htop遇到困难,请咨询您的操作系统 / Linux分发文档,以获取支持和提交错误。
错误,开发反馈
我们有一个开发邮件列表。随时订阅发布公告或询问有关htop开发的问题。
您也可以在Libera.Chat上加入我们的IRC频道htop ,并与那里的开发人员交谈。
如果您在htop的来源中发现了问题,请检查是否已经在我们的GitHub Diseage Tracker中进行了报告。如果没有,请提交一个新问题,描述您发现的问题,您所引用的源代码中的潜在位置以及可能的修复程序。
历史
htop是2004年至2019年由Hisham Muhammad发明,开发和维护的。他的遗产存储库已被存档以保护历史。
在2020年,一个团队友好地接管了该开发项目,并继续协作维持htop 。
执照
GNU通用公共许可证,版本2(GPL-2.0)或您的选项,任何以后的版本。
