Glances 是终端多指标监控工具,需通过启动参数优化性能与准确性:调刷新间隔(-d 2)、禁用 Web(--disable-web)和历史(--disable-history),单次运行用 -1;CPU 差异源于统计口径不同,磁盘 I/O 为 0 多因权限或容器限制,中文显示问题需调整 locale 和 tmux UTF-8 设置。

Glances 是一个终端里能同时看 CPU、内存、磁盘 I/O、网络、进程、文件系统等指标的监控工具,装完就能用,不需要额外配置——但默认行为和常见误操作会让它“看起来不准”或“刷新卡顿”,关键在启动参数和插件理解。
glances 启动后 CPU 占用高、终端卡顿怎么办
默认启用 Web 服务和历史数据收集(psutil 高频采样),对低配机器或 SSH 连接不稳的环境很不友好。
- 加
-d 2把刷新间隔从 1 秒拉到 2 秒,明显缓解压力 - 禁用 Web 服务:启动时加
--disable-web,避免后台监听0.0.0.0:61208 - 禁用历史图表(减少内存占用):
--disable-history - 如果只看当前快照,用
glances -1(单次输出后退出),适合脚本调用
为什么 top 显示的 CPU% 和 glances 不一致
不是 bug,是统计口径不同:glances 默认显示的是所有逻辑 CPU 的平均使用率(即 “整体负载均值”),而 top 默认按单个 CPU 核心归一化,且受采样窗口影响更大。
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
- 确认是否开启 per-CPU 模式:按
c键切换,会显示每个核心的实时占用条形图 - 检查是否启用了
quicklook插件(默认开),它会跳过部分进程扫描以提速,导致进程级 CPU 汇总略偏低 - 真实对比建议用
glances -1 --disable-quicklook+top -bn1 | head -20对照,排除采样时机偏差
磁盘 I/O 显示为 0 或 N/A 的常见原因
glances 依赖 psutil.disk_io_counters(),它在某些场景下无法获取设备级 I/O 数据,尤其容器环境或精简内核。
- 检查是否挂载了
sysfs和procfs:Docker 容器需加--privileged或至少--cap-add=SYS_ADMIN - 非 root 用户运行时,部分设备(如 NVMe)的
/sys/class/block/*/stat可能不可读,直接导致 I/O 列为空 - 某些发行版(如 Alpine)默认没装
util-linux,lsblk缺失会影响磁盘识别,可手动指定设备:启动加--diskio-list sda,sdb
如何让 glances 在 tmux 里稳定显示中文/宽字符
不是字体问题,是 glances 内部用 curses 渲染时对双字节字符宽度判断错误,导致换行错位甚至崩溃。
- 强制设置终端编码:
export LANG=en_US.UTF-8(即使系统是中文 locale,也建议切英文 locale 启动) - tmux 中启用 UTF-8 支持:
set -g utf8 on(写入~/.tmux.conf) - 避免在
glances界面中触发长路径名或含 emoji 的进程名(比如 Node.js 的node_modules路径),这类字段会被截断或引发重绘异常
真正难调的不是安装,而是搞清它每列数据到底来自哪个系统接口、是否被插件过滤、有没有权限缺口——特别是混用容器、systemd、cgroups v2 的环境,glances 的进程树和内存统计很容易漏掉 slice 边界。

















