glances是一款开源的跨平台系统监控工具,基于Python开发,最大的特点是把多项系统指标整合到同一个终端界面中,用户不需要在top、iftop、iotop等多个工具之间来回切换。对于Fedora用户来说,glances已经进入官方仓库,安装和使用都非常方便。本文将从安装、基本使用、进阶配置和数据处理几个方面,完整介绍如何在Fedora上搭建glances监控环境。

一、在Fedora上安装glances
Fedora的官方仓库中已经收录了glances,使用dnf直接安装是最简单的方式。打开终端执行以下命令即可:
sudo dnf install glances
安装完成后,执行glances --version可以查看版本信息,确认安装是否成功。如果你想使用Web模式或者导出数据到数据库,还需要安装一些可选依赖。glances采用模块化设计,许多功能依赖额外的Python库,比如Web模式依赖bottle,导出CSV依赖pandas。为了省去逐个安装的麻烦,推荐直接通过pip安装完整版:
# 安装pip(如果尚未安装) sudo dnf install python3-pip # 安装完整功能的glances pip3 install --user glances[all]
需要注意,通过pip安装的版本与dnf安装的版本可能存在路径差异。dnf安装的可执行文件位于/usr/bin/glances,而pip以用户身份安装的版本位于~/.local/bin/目录下。如果执行glances命令时提示找不到,请确认~/.local/bin是否已加入PATH环境变量。两种安装方式选其一即可,一般建议普通桌面用户使用dnf版本,功能不够时再考虑pip完整版。
二、基本使用与界面解读
直接在终端输入glances即可进入交互式监控界面。界面默认按上下结构分区,顶部显示主机名、系统版本、启动时间和当前负载,中间是各个模块的数据面板,包括CPU、内存、交换分区、网络接口、磁盘IO、文件系统挂载点、传感器温度以及进程列表等。相比top只关注CPU和内存,glances的信息密度明显更高。
每个指标都有颜色标注,这是glances的一个贴心设计。绿色表示正常,青色表示需要注意,紫红色表示警告,红色表示严重。阈值是可以自定义的,配置文件位于/etc/glances/glances.conf(dnf安装)或~/.config/glances/glances.conf(用户级配置)。例如想让CPU使用率超过60%就显示警告,可以这样修改:
[cpu] user_careful=50 user_warning=70 user_critical=90
交互模式下有一组常用快捷键需要记住:a用于在自动排序和手动排序之间切换,m按内存占用排序进程,c按CPU占用排序,p按进程名排序,d开关磁盘IO面板显示,n开关网络面板,f显示文件系统统计,h查看帮助。按Esc或q退出。如果界面显示不全,可以尝试用F2切换主题,或者在终端全屏模式下运行。
三、Web模式与远程监控
glances内置了Web服务器模式,启动后可以通过浏览器访问监控数据,这在服务器场景下非常实用。使用以下命令启动:
glances -w # 输出类似:Glances Web User Interface started on http://0.0.0.0:61208
然后在局域网内任意设备的浏览器中访问http://Fedora主机IP:61208,即可看到与终端界面一致的Web版监控面板。Web模式下数据通过RESTful API提供,前端页面做了响应式适配,手机浏览器也能正常查看。如果需要安全加固,可以配合密码参数启动:
glances -w --password
首次执行时会提示设置密码,之后访问Web界面就需要输入认证信息。另一种远程监控方案是客户端服务端模式:在被监控主机上执行glances -s启动服务端,默认监听61209端口;在监控端执行glances -c 被监控主机IP即可连接。记得用firewalld开放相应端口:
sudo firewall-cmd --permanent --add-port=61208-61209/tcp sudo firewall-cmd --reload
客户端服务端模式走的是glances自有协议,传输的是结构化数据,比Web模式更适合做集中监控。你可以在一台管理机上同时连接多台服务器,方便对比各台机器的负载情况。
四、数据导出与告警
临时看一眼系统状态用交互模式就够了,但如果要做历史趋势分析,就需要把数据落盘。glances支持多种导出格式,最常用的是CSV:
glances --export-csv /tmp/glances_log.csv --time 60</code>
上面的命令以交互模式运行,同时每秒把采样数据追加写入CSV文件,--time 60表示运行60秒后自动退出。CSV文件可以直接用表格软件打开分析。如果希望接入时序数据库做长期存储,glances也支持InfluxDB、Prometheus等后端。以InfluxDB为例,配置文件中添加导出段后,用glances --export influxdb启动,再配合Grafana就能搭建出完整的可视化监控大屏。
glances还内置了告警机制,可以监听指定指标并在越界时执行动作。例如监控某个进程的CPU占用,超过阈值时发送通知:
glances --disable-plugin network --process-watch-on 'firefox:cpu>80' --process-watch-cmd 'notify-send CPU过高'
这个例子中,当firefox进程的CPU占用超过80%时,系统会调用notify-send弹出桌面通知。类似的思路也可以换成发送邮件或调用企业微信机器人接口,实现轻量级的自动化告警。对于个人服务器或开发环境来说,这套方案比部署Zabbix、Prometheus全家桶要轻便得多,几分钟就能跑起来。
五、使用建议与常见问题
在日常使用中,有几个小技巧值得了解。首先是刷新频率,默认是每秒刷新一次,在低配机器上可能占用少量CPU,可以通过-t参数调整,比如glances -t 5改为每5秒刷新一次。其次是模块裁剪,界面信息太多反而影响阅读,用--disable-plugin可以关掉不需要的面板,例如--disable-plugin docker关闭容器监控。
常见问题方面,有用户反馈在Fedora上启动时报错找不到psutil,这通常是dnf安装时依赖未装全,执行sudo dnf install python3-psutil即可解决。如果Web模式无法远程访问,优先检查firewalld规则和监听地址,必要时用glances -w --bind 0.0.0.0显式指定监听所有网卡。另外,虚拟机或部分笔记本上传感器面板可能无数据,这是硬件不支持所致,属于正常现象,不影响其他模块使用。
总体来说,glances凭借安装简单、信息全面、扩展灵活的特点,非常适合Fedora用户作为日常排查系统问题的第一工具。它不能替代专业监控平台,但作为单机快速诊断和轻量监控方案,性价比相当高。配合Web模式和脚本化的告警机制,个人开发者完全可以基于它构建一套够用的监控体系。