Linux中比Top颜值更高的系统监控工具Glances

作者 谢恩铭,公众号「程序员联盟」(微信号:coderhub)。
转载请注明出处。
原文:https://www.jianshu.com/p/cdff3d70eba7

glances之一瞥

Glances 是一个由 Python 编写跨平台命令行系统监视工具。

以前,我们要快速获知系统状态,例如内存使用率,CPU使用率,运行的进程,等等,都习惯用top命令:

top

top命令运行后是这样的:

top命令运行后

可以看到,top命令的显示界面比较呆板,就是黑白色的,颜值不高。

后来,我偶然看到网上有人说有一个glances的小软件很方便,而且显示的数据比较高大上。

glance是英语“一瞥,浏览”的意思。因此就是对系统的状态做一个大略的展示。

glances可以为我们实时展示:

  • CPU 使用率
  • 内存使用情况
  • 内核统计信息和运行队列信息
  • 磁盘 I/O 速度、传输和读/写比率
  • 文件系统中的可用空间
  • 磁盘适配器
  • 网络 I/O 速度、传输和读/写比率
  • 页面空间和页面速度
  • 消耗资源最多的进程
  • 计算机信息和系统资源

安装glances

Redhat族系(Redhat,Fedora,等等):

sudo yum install -y glances

Debian族系(Debian,Ubuntu,等等):

sudo apt-add-repository ppa:arnaud-hartmann/glances-stable
sudo apt-get update
sudo apt-get install glances

也可以这么安装:

curl -L http://bit.ly/glances | /bin/bash

wget -O- http://bit.ly/glances | /bin/bash

当然,也可以用pip来安装(需要先安装pip:https://pip.pypa.io/en/stable/installing/):

pip install glances

使用glances

glances的使用非常方便(应该说Linux中的软件使用都很方便,只需要一个命令,回车即可,就是这么潇洒),只需要在终端输入glances,回车:

glances
glances指令运行后

对比可以发现,glances对屏幕的利用率比top明显高很多,信息量很大,有许多top所没有显示的数据。而且,glances的实时变动比top颜值高太多了。

Glances 会用一下几种颜色来代表状态:

  • 绿色:OK(一切正常)
  • 蓝色:CAREFUL(需要注意)
  • 紫色:WARNING(警告)
  • 红色:CRITICAL(严重)

Glances 的选项:

  • a – 对进程自动排序
  • c – 按 CPU 百分比对进程排序
  • m – 按内存百分比对进程排序
  • p – 按进程名字母顺序对进程排序
  • i – 按读写频率(I/O)对进程排序
  • d – 显示/隐藏磁盘 I/O 统计信息
  • f – 显示/隐藏文件系统统计信息
  • n – 显示/隐藏网络接口统计信息
  • s – 显示/隐藏传感器统计信息
  • y – 显示/隐藏硬盘温度统计信息
  • l – 显示/隐藏日志(log)
  • b – 切换网络 I/O 单位(Bytes/bits)
  • w – 删除警告日志
  • x – 删除警告和严重日志
  • 1 – 切换全局 CPU 使用情况和每个 CPU 的使用情况
  • h – 显示/隐藏这个帮助画面
  • t – 以组合形式浏览网络 I/O
  • u – 以累计形式浏览网络 I/O
  • q – 退出(‘ESC‘ 和 ‘Ctrl&C‘ 也可以)

更多glances的选项,可以用

man glances

来参看。

远程使用 Glances

glances -s

Define the password for the Glances server
Password: 
Password (confirm): 
Glances server is running on 0.0.0.0:61209

当你执行了

glances -s

命令后,会让你为 Glances 服务器设置密码。

当你设置完毕,你将看到 “Glances server is running on 0.0.0.0:61209” (Glances 服务器正在 0.0.0.0 的 61209 端口运行)的消息。

当 Glances 服务器启动后,到本地执行下面的命令来指定服务器IP地址或主机名以链接。

注:这里的172.16.27.56是我 Glances 服务器的 IP 地址。

glances -c -P 172.16.27.56

下面是一些在使用服务器/客户端模式时必须知道的事情:

  • 在服务器模式,你可以通过 -B 地址 来设置绑定地址,也可以通过 -p 端口 来绑定监听的 TCP 端口
  • 在客户端模式,你可以通过同样的 -p 端口 来指定服务器端口
  • 默认的绑定地址是 0.0.0.0,但这么做会监听所有网络接口的指定端口
  • 在服务器/客户端模式下,限制的阀值将由服务器的设置决定
  • 你也可以在命令行下用过 -P 密码 的方式来为服务器端设置一个密码

glances项目代码

glances是一个GPL 授权的开源项目,托管在github上。

现今极多优秀的项目用github来托管,因此,学好git是很必要的。

可以参看我的这篇文章:Git,Github和Gitlab简介和基本使用

项目主页
http://nicolargo.github.io/glances/

Glances在Github上的开源代码库
https://github.com/nicolargo/glances

glances作者的Github

glances的作者的博客
http://blog.nicolargo.com/

快去学习吧!

PS:有人说htop也很不错,大家也可以去试试!http://hisham.hm/htop/

我是 谢恩铭,公众号「程序员联盟」(微信号:coderhub)运营者,慕课网精英讲师 Oscar 老师,终生学习者。
热爱生活,喜欢游泳,略懂烹饪。
人生格言:「向着标杆直跑」

推荐阅读更多精彩内容

  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    O感悟人生O阅读 10,161评论 2 33
  • 如同一个孩子一般 再没有礼物的节日 我们一样的欢天喜地 遭遇着天真无邪 如同一个孩子一般 再没有玩着泥巴的向晚 我...
    楼上那个男人阅读 202评论 0 0
  • 四年前的今天,父亲病逝,离我们而去,我成了没有爸爸的“孩子”。 是的,那时候,内心深处我真的还算个孩子,对父亲的依...
    玄月之佑阅读 137评论 0 1
  • “业精于勤,荒于嬉。行成于思,毁于随。”——【唐】韩愈《进学解》 一夜的雷雨过后,这座城市在晨光中舒展起...
    留子儿阅读 87评论 0 1