各Linux系统安装htop工具以及使用方法

我们通常会在Linux系统中使用top命令来查看当前系统资源使用情况,如:CPU、内存,以及每个进程等使用信息。但是,有时候top命令能查看的信息并不能满足我们的需求,我们需要一款更强大、更多功能的资源监控工具htop,它不仅具有top命令一样的功能,还可以让你在垂直和水平方向上滚动,这样就可以看到系统上运行的所有进程信息,而且可以不用输入进程的PID就可以对此进程进行killing, renicing等操作。下面我们来看htop如何安装和使用吧。

命令安装htop

Ubuntu

$ apt-get install -y htop

Debian

$ apt-get install htop

Fedora

$ yum install htop

CentOS或RedHat

$ yum install htop

Mac

$ brew install htop

opensuse

$ zypper se htop
$ zypper install htop

Gentoo

$ emerge sys-process/htop

GoboLinux

$ Compile htop

如果以上命令无法进行安装我们可以考虑使用下面的源码方式安装。

源码安装htop

压缩包安装

$ wget https://hisham.hm/htop/releases/2.2.0/htop-2.2.0.tar.gz
$ tar -zxvf htop-2.2.0.tar.gz
$ cd htop-2.2.0/
$ ./configure
$ make
$ make install

GIT源码安装

$ git clone https://github.com/hishamhm/htop.git
$ cd htop/
$ ./autogen.sh && ./configure && make
$ make
$ make install

说明:htop源码安装方式默认安装到/usr/local目录下,如果想安装到其它路径,在执行configure时通过—prefix指定,格式为:./configure --prefix=/some/path

htop使用方法

要启动htop,只需在终端中输入命令htop即可。如:

$ htop

htop-output
从输出截图我们可以看出,htop大体分为四个部分:

区域1:CPU负载、内存消耗和交换空间的使用情况;

区域2:任务、线程、平均负载及系统运行时间的信息。平均负载部分提供了三个数字,这仅仅表示的是过去的5分钟、10分钟和15分钟系统的平均负载而已,在单核的系统中平均负载为1表示的是百分之百的 CPU 利用率。最后,运行时间 (uptime)标示的数字是从系统启动起到当前的运行总时间。

区域3:当前系统中的所有进程。这个和top差异不大,各列解释说明如下:
PID:进程标志号,是非零正整数
USER:进程所有者的用户名
PR:进程的优先级别
NI:进程的优先级别数值
VIRT:进程占用的虚拟内存值
RES:进程占用的物理内存值
SHR:进程使用的共享内存值
S:进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数
%CPU:该进程占用的CPU使用率
%MEM:该进程占用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间
COMMAND:进程启动的启动命令名称

区域4:底部菜单栏,列出来F1-F10功能键区域4:底部菜单栏,列出来F1-F10功能键

将光标定位在区域3中的任意进程,可以使用方向键上向移动,选中某个进程后,对应会有高亮背景。同时我们可以使用区域4中显示的F1~F10键进行操作,比如使用F9杀死进程,使用F5进行排序等。

功能键说明

1、F1显示帮助信息
2、F2自定义界面
htop命令提供了许多自定义选项,你所要做的就是从主窗口中按下F2键。只需使用箭头键选择和更改特定的设置。下面所示的是可用的自定义选项:

3、F3搜索进程
htop 命令提供了易用的方式来搜索进程。按下 F3 键,一个文本框就会出现在窗口底部。
下面是例子:

如图所示,在窗口底部我们可以看到名为‘Search’的文本输入框,在这儿输入进程的名称并回车搜索。如果找到匹配的进程,该进程会被高亮选中显示。

4、F4进程过滤
search和filter的区别:search会将光标定位到符合条件的进程上。通过F3键进行逐个查找;而filter会直接将符合条件的进程筛选出来。search和filter都使用ESC键来取消功能。

5、F5显示进程的树状视图
hto 命令也提供了进程的树状视图查看功能。按下F5 键切换。
下面是 htop 显示树形视图信息的例子:

要退出树状视图模式,请再一次按下 F5 键。

6、F6排序

7、F7减小nice值

8、F8增加nice值

9、通过F9键发送信号
htop命令可以让你很容易地在 htop 窗口内给一个进程发送任意的信号。按下F9键即可。
htop-signals

10、F10退出htop

11、空格键颜色标记进程
在系统中运行着的实时进程视图中,要追踪某个进程是个大问题。因为整个列表在不停的刷新着,进程的排列顺序也在变动着。为了解决这个问题, htop提供了一个很简单的解决方案:颜色标注。选中某个进程,然后按空格键,就可以颜色高亮标注当前进程,这样我们就能很清晰的分辨出来。如,在下面的截图示例中,已经颜色标注了三个进程条目:

htop其它参数

除了上面介绍的一些热键,htop 还提供了一些有用的命令行参数。如:

  • -s 选项 : 按指定的列排序。如,htop -s PID命令会按PID 列的大小排序来显示。
  • -u 选项 : 显示指定的用户的进程信息。如,htop -u test命令会只显示出用户名为test的相关进程。
  • -d 选项 : 设置刷新时间,单位为秒。如,htop -d 10命令会每10秒刷新一次。
  • -C 选项:设置界面为无颜色

参考资料

htop github仓库

htop官网

the end

标签: linux htop