Linux 系统实时监控的瑞士军刀 —— Glances
早些时候,我们提到过有很多可以用来监视系统性能的 Linux 系统监视工具。 但我们估计,或许更多的用户会倾向与绝大多数 Linux 发行版都带的工具 (top 命令)。
top 命令是 Linux 下的一个实时任务管理器, 同时也是用于在 GNU/Linux 发行版中寻找系统性能方面的瓶颈,并帮助我们作出正确操作的常用系统监视工具。 她有着一个极为简洁的界面,并自带少量的可以帮助我们快速了解系统性能的实用选项。
但是,有些时候想要通过她寻找一个占用系统资源比较大的应用或进程可能会比较困难。 因为 top 命令本身并不会帮助我们高亮那些吃太多 CPU,内存,或者其他资源的程序。
为了达到这个目标,这里我们将介绍一款超牛逼的系统监视程序 —— Glances。 她可以自动高亮利用最高系统资源的程序,并为 Linux/Unix 服务器提供尽可能多的信息。
什么是 Glances?
Glances 是一个由 Python 编写,使用 psutil 库来从系统抓取信息的基于 curses 开发的跨平台命令行系统监视工具。 通过 Glances,我们可以监视 CPU,平均负载,内存,网络流量,磁盘 I/O,其他处理器 和 文件系统 空间的利用情况。
Glances 是一个用来监视 GNU/Linux 和 FreeBSD 操作系统的 GPL 授权的自由软件。
Glances 同时也提供了很多实用的选项。 其中我们能够在配置文件见到的一项主要的功能就是设置关键值及相应的标签 (careful[小心], warning[警告] 和 critical[严重]), 然后她会自动帮我们用不同颜色标出系统达到某个瓶颈的信息。
Glances 主要功能
- CPU 信息 (用户的相关应用, 系统核心程序和空闲程序)
- 总内存信息,包括了物理内存,交换空间和空闲内存等等
- 之前的 1 分钟、5 分钟和 15 分钟平均的 CPU 负载
- 网络链接的下行和上行速度
- 处理器总数,以及其活动状态
- 硬盘 I/O 相关(读写)速度详情
- 当前挂载设备的磁盘使用情况
- 高 CPU 和内存使用的进程名,和相关应用的位置
- 在底部显示当前日期和时间
- 将消耗最高系统资源的进程用红色标出
下面是一个在Ubuntu 13.10下 Glances 的使用截图:
在 Linux/Unix 系统中安装 Glances
虽然这个工具的发布比较晚,但你仍然可以在 Red Hat 系的系统中通过 EPEL 软件源安装。在终端用下面的命令安装:
对于 RHEL/CentOS/Fedora 发行版
- # yum install -y glances
对于 Debian/Ubuntu/Linux Mint 发行版
$ sudo apt-add-repository ppa:arnaud-hartmann/glances-stable
$ sudo apt-get update
$ sudo apt-get install glances
如何使用 Glances
首先,你需要在终端中输入以下命令
# glances
按下 ‘q‘ (‘ESC‘ 和 ‘Ctrl-C‘ 也可以) 退出 Glances 终端。 这里是从 Ubuntu 13.10 截取的另一张截图:
Glances 的默认刷新频率是 1 (秒),但是你可以通过在终端指定参数来手动定义其刷新频率
# glances -t 2