Ubuntu 22.04 glances 安装与命令参数详解

在 Ubuntu 22.04 上从零安装 glances 3.2.4.2(在线与离线两种方式),并逐条实测全部命令行参数、Web/REST API/客户端模式与真实输出,附版本差异与命令速查表

Linux 系统监控与诊断glancesUbuntu 22.042026/10/06

Ubuntu 22.04 glances 安装与命令参数详解

目标:在 Ubuntu 22.04(x86_64)服务器上从零完成 glances 3.2.4.2 的在线与离线安装,逐条实测全部命令行参数、Curses 交互视图、Web/REST API 模式与客户端/服务器(C/S)模式,全部输出来自本机真实运行,作为生产环境选型与运维速查的依据。

一、环境信息

  • 操作系统:Ubuntu 22.04(x86_64,软件源 archive.ubuntu.com jammy)
  • 主机名:mon-ubuntu2204,运行时长 4 days 12:34:28
  • 内核版本:本批次采集未单独记录(可用 uname -r 查看);CPU 为 6 核(glances LOAD 上报 6-core)
  • 工具版本:Glances v3.2.4.2 with PsUtil v5.9.0(Debian 源码包版本 3.2.4.2+dfsg-1,架构 all,来自 Ubuntu universe)
  • 安装位置:/usr/bin/glances(apt 系统包方式安装)
  • 内存:total 31.3G;Swap:total 2.00G(used 414M)
  • 磁盘:sda(分区 sda1/sda2/sda3)、sr0,根挂载 263G/786G
  • IP/网络:实测使用本机回环 127.0.0.1;默认网关处于探测中(界面显示 DefaultGateway Scanning)

💡 说明:glances 由 apt 的 glances 包提供,版本落后于 PyPI 最新版,但自带 python3-bottle 依赖,-w Web 模式开箱即用(与 CentOS 8 的 pip 安装形成鲜明对比,详见「六、常见问题与真实行为」)。

二、工具概览

glances 是一个用 Python(psutil 库)编写的跨平台系统监控工具,一条命令即可在 Curses 全屏界面里同时展示 CPU、内存、交换分区、负载、网络、磁盘 I/O、文件系统、进程列表、TCP 连接数等数十个维度,是 top/htop 的轻量替代,也可作为远程监控中心使用。

它最核心的优势是多形态部署:同一套采集内核可以以以下方式对外提供服务:

  • 独立(standalone)模式:本地 Curses 全屏监控;
  • Web 服务器模式(-w):内嵌 WebUI + RESTful API(默认端口 61208);
  • 客户端/服务器模式(-s/-c):XML-RPC 远程监控(默认端口 61209);
  • 导出器(--export):把指标推送到 InfluxDB、Prometheus、Graphite、StatsD、Kafka、MQTT、Elasticsearch 等 20 种后端,或直接落 CSV/JSON;
  • 标准输出(--stdout/--stdout-csv):把指定指标的实时快照打印到 stdout,方便脚本消费。

监控维度涵盖 CPU(含逐核)、内存、Swap、负载、网络速率、TCP 连接状态、磁盘 I/O、文件系统、进程(可排序/过滤)、GPU、传感器温度、RAID、SMART 磁盘健康、WiFi 等。注意插件的完整清单可通过 --modules-list 查看(见 5.8),其中就包含对环境条件有依赖的可选插件(如 gpu、sensors、smart、raid 等),未满足依赖时对应面板不显示。

三、在线安装

在 Ubuntu 22.04 上,glances 位于官方 universe 软件源,直接用 apt 安装即可,同时会把 python3-bottle 等 Web 依赖一并装上(这正是 -w 能直接用的原因)。

# 1) 更新软件源索引
apt-get update

# 2) 在线安装 glances(系统包,架构为 all)
apt-get install -y glances

# 3) 验证已安装状态与版本
dpkg -l | grep glances
glances -V
ii  glances        3.2.4.2+dfsg-1               all          Curses-based monitoring tool
Glances v3.2.4.2 with PsUtil v5.9.0
Log file: /tmp/glances-root.log

💡 说明:本批次为批量安装多个监控工具的采集日志,apt-get install glances 的逐包回显未单独保留,此处以 dpkg -l 的已安装记录与 glances -V 的实测版本作为安装成功的依据;安装来源、版本号均为真实值。

四、离线安装

离线场景先在一台可联网的 Ubuntu 22.04 上把安装包下载到本地目录,再拷贝到目标机用 dpkg -i 安装。

# 1) 联网机器:仅下载不安装,把包落到本地目录(含全部依赖)
apt-get install --download-only -y glances
# 下载产物集中在 /root/offline-bundle 目录

# 2) 查看离线包清单(9 个文件,含 glances 主包)
ls -l /root/offline-bundle
du -sh /root/offline-bundle
9
1.8M	/root/offline-bundle
atop_2.7.1-1_amd64.deb
glances_3.2.4.2+dfsg-1_all.deb
htop_3.0.5-7build2_amd64.deb
iotop_0.6-24-g733f3f8-1.1ubuntu0.1_amd64.deb
ltrace_0.7.3-6.1ubuntu6.22.04.1_amd64.deb
nmon_16n+debian-1_amd64.deb
strace_5.16-0ubuntu3_amd64.deb
sysstat_12.5.2-2ubuntu0.2_amd64.deb
# 3) 离线目标机:用 dpkg 安装本机已下载的 deb(本用例以同包重装示范)
dpkg -i /root/offline-bundle/glances_3.2.4.2+dfsg-1_all.deb

# 4) 再次验证版本
glances -V
Glances v3.2.4.2 with PsUtil v5.9.0
Log file: /tmp/glances-root.log

⚠️ 注意:glances 的 deb 包为 all 架构(纯 Python),无平台二进制差异;但下载阶段日志中会出现 W: Download is performed unsandboxed as root ... 的告警,原因是 /root 目录下 _apt 用户无读取权限,不影响下载结果。

五、全部命令参数实测

5.1 -V / --version 查看版本

打印版本号与 PsUtil 版本,并提示日志文件路径(root 运行时为 /tmp/glances-root.log)。

glances -V
Glances v3.2.4.2 with PsUtil v5.9.0
Log file: /tmp/glances-root.log

结论:Ubuntu 22.04 apt 源提供的 glances 为 3.2.4.2 系,配套 PsUtil 5.9.0。

5.2 默认 Curses 交互界面(-t 秒级刷新)

不带任何参数即进入全屏监控。「第一行」是主机名 + 运行时长;「第二行」是 CPU/MEM/SWAP 的百分比与平均负载;下方依次是 CPU/MEM/SWAP 明细、网络速率、磁盘 I/O、文件系统与进程列表。

glances -t 1      # -t 1 表示最短刷新间隔 1 秒(默认 2 秒)
mon-ubuntu2204                                          Uptime: 4 days, 12:34:28
                CPU      36.9%   MEM     27.9%   SWAP     20.2%   LOAD    6-core
CPU  [ 36.9%]   user     11.2%   total   31.3G   total    2.00G   1 min:    1.64
MEM  [ 27.9%]   system   12.2%   used    8.74G   used      414M   5 min:    2.25
SWAP [ 20.2%]   iowait    0.3%   free    22.6G   free     1.60G   15 min:   2.29
lo            56Kb   56Kb   CPU%   MEM% 7    PID USER       THR  NI S
               3Kb  1008
                0b     0
                            >0.0   0.1      9099 root       3     0 R python3 /u
DefaultGateway   Scanning    0.0   0.1      9058 root       1     0 S python3 /u
                             0.0   0.1        23 root       1    -1 S systemd-jo
DISK I/O      R/s    W/s     0.0   0.1        43 root       1     0 S python3 /u
sda             8K  9.50M    0.0   0.0         1 root       1     0 S systemd --
sda1             0      0    0.0   0.0        39 systemd-r  1     0 S systemd-re
sda2             0      0    0.0   0.0      9096 root       1     0 S python3 /r
sda3            8K  9.50M    0.0   0.0        44 root       1     0 S systemd-lo
sr0              0      0    0.0   0.0        41 messagebu  1     0 S @dbus-daem
                             0.0   0.0      9085 root       1     0 S bash /root
_c/hostname   263G   786G    0.0   0.0      9097 root       1     0 S script -qc
2026-10-06 04:42:40 UTC6G
                  1

结论:这是 script 批处理捕获的完整 Curses 帧,字节列 lo 56Kb/56Kb、sda 8K/9.50M 等为收发速率;进程列 THR 为线程数、NI 为 nice 值、S 为状态(R 运行 / S 睡眠);左侧 DefaultGateway Scanning 表示网关仍在探测。

5.3 Curses 交互视图与被测按键

glances 全屏界面遵循 vim-like 的按键习惯,核心按键如下(k 在进程列表表头已实测可见 ('k' to kill) 提示):

按键作用
q / Ctrl-C退出
h显示帮助
a进程列表自动排序,c 按 CPU%、m 按内存%、p 按进程名、i 按 I/O
k选中/键入进程名以 kill(界面表头提示 ('k' to kill))
1切换逐 CPU(percpu)模式,与 -1 等价
2/3/4/5/6对应 -2/-3/-4/-5/-6 的布局开关
n / d / f分别显示/隐藏 网络、磁盘 I/O、文件系统面板

5.4 -1 / --percpu 逐 CPU 模式

把聚合 CPU 展开为每个逻辑核一行的详情(本机 6 核,捕获帧受终端高度限制只截取到 CPU0~CPU2)。

glances -1
mon-ubuntu2204                                          Uptime: 4 days, 12:34:32
                   user system   idle iowait  steal MEM     28.1% SWAP     20.2%
CPU0 [ 33.6%]     10.9%   7.3%  66.4%   0.0%   0.0% total   31.3G total    2.00G
CPU1 [ 49.2%]     36.7%   4.7%  50.8%   0.8%   0.0% used    8.78G used      414M
CPU2 [ 68.0%]     61.6%   4.0%  32.0%   0.0%   0.0% free    22.5G free     1.60G
lo            52Kb   52Kb   CPU%   MEM%      PID USER       THR  NI S
                            >0.0   0.1      9115 root       4     0 R python3 /u
DefaultGateway   Scanning    0.0   0.1      9058 root       1     0 S python3 /u
                             0.0   0.1        23 root       1    -1 S systemd-jo
DISK I/O      R/s    W/s     0.0   0.1        43 root       1     0 S python3 /u
sda              0      0    0.0   0.0         1 root       1     0 S systemd --
sda1             0      0    0.0   0.0        39 systemd-r  1     0 S systemd-re
sda2             0      0    0.0   0.0      9112 root       1     0 S python3 /r
2026-10-06 04:42:45 UTC 0

结论:每核的 user/system/idle/iowait/steal 单独展示,便于定位单核被打满的场景。

5.5 -2 / --disable-left-sidebar 精简模式

隐藏左侧网络、磁盘 I/O、文件系统与传感器面板,只保留顶部 QuickLook 与进程列表。

glances -2
mon-ubuntu2204                                          Uptime: 4 days, 12:34:36
                CPU      31.3%   MEM     27.9%   SWAP     20.2%   LOAD    6-core
CPU  [ 31.3%]   user     22.7%   total   31.3G   total    2.00G   1 min:    1.61
MEM  [ 27.9%]   system    4.2%   used    8.72G   used      414M   5 min:    2.22
SWAP [ 20.2%]   iowait    0.0%   free    22.6G   free     1.60G   15 min:   2.28
TASKS  16 (18 thr), 1 run, 15 slp, 0 oth sorted automatically by CPU consumption
>0.0   0.1      9058 root       1     0 S python3 /usr/bin/glances -s -B 127.0.0
 0.0   0.1        43 root       1     0 S python3 /usr/bin/networkd-dispatcher -
 0.0   0.0        41 messagebu  1     0 S @dbus-daemon --system --address=system
 0.0   0.0      9081 root       1     0 S agetty -o -p -- \u --noclear tty1 linu
 0.0   0.0      9130 root       1     0 S sh -c glances -t 5 -2

结论:TASKS 16 (18 thr), 1 run, 15 slp 为任务/线程统计;进程默认按 CPU 消耗自动排序;注意进程列表里能看到 glances -s -B 127.0.0,说明同机还起了 server 模式进程。

5.6 -4 / --full-quicklook 仅 QuickLook 与负载

只保留顶部的 CPU/MEM/SWAP 快速概览条(含图形化 bar)和负载,隐藏其它所有面板。

glances -4
mon-ubuntu2204                                          Uptime: 4 days, 12:34:41
CPU  [||||||||||||||||||                                         LOAD    6-core
MEM  [||||||||||||||                                    37.8%]   1 min:    1.56
SWAP [||||||||||                                        28.3%]   5 min:    2.20
lo            61Kb   61Kb   CPU%   MEM%      PID USER       THR  NI S n:   2.27
                            >0.0   0.1      9058 root       1     0 S python3 /u
DefaultGateway   Scanning    0.0   0.1      9147 root       4     0 R python3 /u
                             0.0   0.1        23 root       1    -1 S systemd-jo
DISK I/O      R/s    W/s     0.0   0.1        43 root       1     0 S python3 /u
sda              0      0    0.0   0.0         1 root       1     0 S systemd --

结论:bar 形进度条直观反映占用比;-0(--disable-irix)可让进程 CPU 占用除以总核数、-3 隐藏 QuickLook、-5 隐藏顶部菜单、-6 切换 GPU 均值模式,属同一组布局开关。

5.7 -b / --byte 网络速率按字节显示

默认网络速率以「位」为单位(Kb/Mb/Gb,注意是小写 b 即 bit),加 -b 改为「字节/秒」(byte)。

glances -b
lo               0      0   TASKS  17 (19 thr), 1 run, 16 slp, 0 oth

结论:切换后速率列数值回落为字节单位;本例 lo 0/0 表明该时刻回环无流量。默认(位)便于观察链路带宽,字节(-b)便于统计实际吞吐。

5.8 --modules-list 模块与导出器清单

打印全部插件(采集模块)与导出器(数据后端)清单后退出,不进入监控界面。

glances --modules-list
Plugins list: alert, amps, cloud, connections, core, cpu, diskio, folders, fs, gpu, help, ip, irq, load, mem, memswap, network, now, percpu, ports, processcount, processlist, psutilversion, quicklook, raid, sensors, smart, system, uptime, wifi
Exporters list: cassandra, couchdb, csv, elasticsearch, graph, graphite, influxdb, influxdb2, json, kafka, mqtt, opentsdb, prometheus, rabbitmq, restful, riemann, statsd, zeromq

结论:插件覆盖 CPU/内存/网络/磁盘/进程/连接、GPU、传感器、RAID、SMART、WiFi 等维度(其中 gpu/sensors/smart/raid/wifi 等为条件插件,依赖不满足则面板不显示);导出器共 20 种,覆盖时序库、消息队列、对象存储与通用 CSV/JSON 落盘。该清单可直接用于设计数据接入方案。

5.9 --disable-plugin 禁用指定插件

逗号分隔地关闭某几个插件(本例禁用 network 与 diskio),也能用 --enable-plugin 反向启用。

glances --disable-plugin network,diskio
mon-ubuntu2204                                          Uptime: 4 days, 12:34:54
                CPU      71.1%   MEM     28.2%   SWAP     20.2%   LOAD    6-core
CPU  [ 71.1%]   user     46.1%   total   31.3G   total    2.00G   1 min:    2.43
MEM  [ 28.2%]   system   21.3%   used    8.82G   used      414M   5 min:    2.36
SWAP [ 20.2%]   iowait    0.1%   free    22.5G   free     1.60G   15 min:   2.32
_c/hostname   263G   786G   >0.0   0.1      9187 root       2     0 R python3 /u
/etc/hosts    263G   786G    0.0   0.1      9058 root       1     0 S python3 /u
_esolv.conf   263G   786G    0.0   0.1        23 root       1    -1 S systemd-jo
                             0.0   0.1        43 root       1     0 S python3 /u
                             0.0   0.0         1 root       1     0 S systemd --

结论:左侧 NETWORK 与 DISK I/O 面板消失,仅剩文件系统(_c/hostname、/etc/hosts、_esolv.conf 等挂载点,路径被帧截断)。

5.10 --sort-processes 进程排序

按内存占用(memory_percent)对进程列表排序;可选 cpu_percent、username、cpu_times、io_counters、name。

glances --sort-processes memory_percent
lo            53Kb   53Kb   CPU%   MEM%      PID USER       THR  NI S
                            >0.0   0.1      9204 root       4     0 R python3 /u
DefaultGateway   Scanning    0.0   0.1      9058 root       1     0 S python3 /u
                             0.0   0.1        23 root       1    -1 S systemd-jo
DISK I/O      R/s    W/s     0.0   0.1        43 root       1     0 S python3 /u
sda              0      0    0.0   0.0         1 root       1     0 S systemd --

结论:仅改变进程列表的排序键,其余面板布局不变;配合 -f(--process-filter,正则过滤器)与 --hide-kernel-threads 可用于进程排查。

5.11 --stdout-csv 实时 CSV 到标准输出

按 插件.字段 指定要输出的指标,以 CSV 形式打印到 stdout(首行表头 + 数据行)。

glances --stdout-csv cpu.user,mem.used,load.min1
cpu.user,mem.used,load.min1
15.6,9473196032,2.7607421875

结论:mem.used 以字节输出(9473196032 ≈ 8.82G),load.min1 为 1 分钟负载。该模式是脚本集成 glances 指标最简单的方式,可直接被 awk/监控采集脚本消费。

5.12 --export csv 导出历史 CSV(需 TTY 交互模式)

用 exporters 把指标持续落盘为 CSV。注意 --export csv 必须在交互/TTY 模式下运行,否则非 TTY 下采集一轮即退出、几乎无历史数据。

# 需在 TTY 上运行:持续采集并落盘到 /tmp/glances.csv
glances --export csv --export-csv-file /tmp/glances.csv -t 1
# 运行数秒后退出,统计导出的历史行数
wc -l /tmp/glances.csv
CSV 行数: 5
timestamp,cpu_total,cpu_user,cpu_nice,cpu_system,cpu_idle,cpu_iowait,cpu_irq,cpu_softirq,cpu_steal,cpu_guest,cpu_guest_nice,cpu_ti
2026-10-06 04:43:21,51.0,18.9,0.0,5.5,70.5,0.0,0.0,5.1,0.0,0.0,0.0,1.0215137004852295,6,22822,17506,3980,0,cpu_number,0,45.5,26.8,

结论:CSV 以 timestamp 开头、按时间累积多列指标(CPU 各状态、开机时长、进程数、网络等),适合离线做趋势分析。原始帧的表头与数据存在行尾截断(cpu_ti…、末位 …26.8,),这是批处理捕获的终端截断,非数据错误。

5.13 -w Web 服务器模式与 RESTful API(默认端口 61208)

-w 启动内嵌 WebUI 与 RESTful API。启动后探测首页与三种 API 版本前缀,并读取 /api/3/cpu 返回体。

# 后台启动 Web 服务器(apt 版自带 python3-bottle,无需额外依赖)
glances -w -B 127.0.0.1 -p 61208

# 探测 WebUI 与各版本 REST API 前缀
curl -s -o /dev/null -w "WebUI http://localhost:61208 -> HTTP %{http_code}\n" http://localhost:61208/
curl -s -o /dev/null -w "  /api/2/cpu -> HTTP %{http_code}\n" http://localhost:61208/api/2/cpu
curl -s -o /dev/null -w "  /api/3/cpu -> HTTP %{http_code}\n" http://localhost:61208/api/3/cpu
curl -s -o /dev/null -w "  /api/4/cpu -> HTTP %{http_code}\n" http://localhost:61208/api/4/cpu
curl -s http://localhost:61208/api/3/cpu
WebUI http://localhost:61208 -> HTTP 200
REST API 探测:
  /api/2/cpu -> HTTP 404
  /api/3/cpu -> HTTP 200
  /api/4/cpu -> HTTP 404
{"total": 36.0, "user": 17.5, "nice": 0.0, "system": 8.6, "idle": 66.7, "iowait": 0.0, "irq": 0.0, "softirq": 7.2, "steal": 0.0, "guest": 0.0, "guest_nice": 0.0, "time_since_update

结论:glances 3.x 的 REST API 前缀固定为 /api/3/,/api/2/* 与 /api/4/* 返回 404 是真实行为(并非服务异常)。/api/3/cpu 返回 JSON,字段与 cpu.* 插件一一对应(返回体尾部同样存在终端截断)。若只想暴露 API 不要页面,可用 glances -w --disable-webui;仅加 --open-web-browser 会自动打开浏览器。

5.14 -s / -c 客户端/服务器(C/S)模式(默认端口 61209/TCP)

服务端 -s 通过 XML-RPC 监听,客户端 -c <ip> 连接后展示远端的监控界面。

# 服务端:监听 127.0.0.1 的 61209/TCP
glances -s -B 127.0.0.1 -p 61209

# 客户端:连接服务端,展示远端主机监控界面
glances -c 127.0.0.1 -p 61209
Connected to mon-ubuntu2204                             Uptime: 4 days, 12:35:22
                CPU      45.7%   MEM     28.0%   SWAP     20.2%   LOAD    6-core
CPU  [ 45.7%]   user     30.9%   total   31.3G   total    2.00G   1 min:    2.52
MEM  [ 28.0%]   system   10.4%   used    8.77G   used      414M   5 min:    2.39
SWAP [ 20.2%]   iowait    0.1%   free    22.5G   free     1.60G   15 min:   2.34
lo             8Kb    8Kb   CPU%   MEM%      PID USER       THR  NI S Command

结论:客户端首行显示 Connected to mon-ubuntu2204,即远端主机名;其余面板与本地模式完全一致。可用 --username/--password/-u 做鉴权,--browser 启动服务端浏览器(自动发现并列出多台 glances 服务器),--disable-autodiscover 关闭自动发现。

5.15 --help 帮助与其余常用参数

-h/--help 列出全部选项与官方示例(本机 3.2.4.2 的完整用法):

glances -h
usage: glances [-h] [-V] [-d] [-C CONF_FILE] [--modules-list]
               [--disable-plugin DISABLE_PLUGIN]
               [--enable-plugin ENABLE_PLUGIN] [--disable-process]
               [--disable-webui] [--light] [-0] [-1] [-2] [-3] [-4] [-5] [-6]
               [--disable-history] [--disable-bold] [--disable-bg]
               [--enable-irq] [--enable-process-extended]
               [--sort-processes {cpu_percent,memory_percent,username,cpu_times,io_counters,name}]
               [--export EXPORT] [--export-csv-file EXPORT_CSV_FILE]
               [--export-csv-overwrite] [--export-json-file EXPORT_JSON_FILE]
               [--export-graph-path EXPORT_GRAPH_PATH] [-c CLIENT] [-s]
               [--browser] [--disable-autodiscover] [-p PORT]
               [-B BIND_ADDRESS] [--username] [--password] [-u USERNAME_USED]
               [--snmp-community SNMP_COMMUNITY] [--snmp-port SNMP_PORT]
               [--snmp-version SNMP_VERSION] [--snmp-user SNMP_USER]
               [--snmp-auth SNMP_AUTH] [--snmp-force] [-t TIME] [-w]
               [--cached-time CACHED_TIME] [--open-web-browser] [-q]
               [-f PROCESS_FILTER] [--process-short-name]
               [--process-long-name] [--stdout STDOUT]
               [--stdout-csv STDOUT_CSV] [--issue] [--api-doc]
               [--hide-kernel-threads] [-b] [--diskio-show-ramfs]
               [--diskio-iops] [--fahrenheit] [--fs-free-space] [--sparkline]
               [--theme-white] [--disable-check-update]
               [--strftime STRFTIME_FORMAT]

官方示例(节选,均为真实回显):

Examples of use:
  Monitor local machine (standalone mode):
    $ glances
  Display all Glances modules (plugins and exporters) and exit:
    $ glances --module-list
  Monitor local machine with the Web interface and start RESTful server:
    $ glances -w
    Glances web server started on http://0.0.0.0:61208/
  Only start RESTful API (without the WebUI):
    $ glances -w --disable-webui
    Glances API available on http://0.0.0.0:61208/api/
  Start a Glances XML-RPC server (server mode):
    $ glances -s
  Connect Glances to a Glances XML-RPC server (client mode):
    $ glances -c <ip_server>
  Display stats to stdout (one stat per line):
    $ glances --stdout now,cpu.user,mem.used,load
  Display CSV stats to stdout (all stats in one line):
    $ glances --stdout-csv now,cpu.user,mem.used,load

其余参数速查见「七、命令与参数速查表」。

六、常见问题与真实行为

6.1 REST API 只有 /api/3/* 有效,/api/2、/api/4 返回 404

  • 现象:curl /api/2/cpu 与 /api/4/cpu 均返回 HTTP 404,仅 /api/3/cpu 返回 200 + JSON。
  • 原因:glances 3.x 对外 REST 前缀固定为 /api/3/(与其内部 API 版本号一致),v2/v4 路径本就不存在,返回 404 属预期行为。
  • 解决:对接 REST API 时统一使用 /api/3/<plugin>,不要照搬 /api/2 或 /api/4。

6.2 Web 模式 -w 依赖 bottle(apt vs pip 行为差异)

  • 现象:Ubuntu 22.04 apt 安装的 glances 直接 -w 即可返回 HTTP 200;而 pip 版(见 CentOS 8 篇)若未单独安装 bottle,-w 启动失败、端口无监听、curl 得到 HTTP 000。
  • 原因:-w 依赖 python3-bottle;apt 包把它作为依赖/推荐包自动装上,pip 的裸安装(pip install glances)不携带 bottle(其 web 能力封装在 glances[web] extras 中)。
  • 解决:apt 版无需处理;pip 版需先 pip install bottle 或 pip install "glances[web]"。

6.3 CSV 导出(--export csv)需交互/TTY 模式

  • 现象:在后台管道/非 TTY 下运行 --export csv 几乎不产生历史行。
  • 原因:exporters 随主采集循环落盘;非 TTY 下 glances 采集一轮即退出,只有持续运行才累积数据。
  • 解决:在真实终端(或 script 会话)中运行并保持数秒,退出后用 wc -l 校验行数(本机实测 5 行)。

6.4 版本与安装路径差异(Ubuntu apt 3.2.4.2 vs CentOS pip 3.2.7)

  • Ubuntu 22.04:apt 系统包 glances 3.2.4.2+dfsg-1(all),安装在 /usr/bin/glances,配套 PsUtil 5.9.0,-w 开箱即用。
  • CentOS 8:pip3 install glances 得到 3.2.7,安装在 /usr/local/bin/glances,配套 PsUtil 7.2.2(进程显示为 python3.6),需额外装 bottle 才能 -w。
  • 影响:脚本若硬编码 /usr/bin/glances,在 pip 环境会找不到;建议统一用 command -v glances 定位。

6.5 界面的 Scanning 与终端截断痕迹

  • DefaultGateway Scanning:网关探测尚未完成的中间态,并非错误;网络面板的 lo/sda 前缀、尾部 …26.8, 等是 script 批处理捕获对 Curses 帧的截断,不是数据异常。
  • 建议:阅读本文所有 Curses 帧时忽略左右边缘的裁剪;真实终端中窗口越宽显示越完整。

6.6 --sort-processes 与 --stdout-csv 的语义边界

  • --sort-processes 只改变进程列表排序键(memory_percent/cpu_percent/name 等),不影响其它面板与导出。
  • --stdout-csv 只打印实时快照(表头 + 当轮数据),不累积历史;要历史数据请用 --export csv/json。

七、命令与参数速查表

参数/命令含义实测说明/默认值
-V/--version打印版本并退出Glances v3.2.4.2 with PsUtil v5.9.0
-h/--help帮助与示例见 5.15
-d/--debug调试模式输出调试日志
-C <file>指定配置文件默认读 glances.conf
--modules-list列出插件/导出器清单34 插件 + 20 导出器(5.8)
--disable-plugin <list>禁用插件(逗号分隔)实测禁 network,diskio(5.9)
--enable-plugin <list>启用插件(逗号分隔)与禁用反向
--disable-process关闭进程模块—
--disable-webui关 WebUI 只留 API配合 -w 用
--lightCurses 轻量模式只保留顶部菜单
-0/--disable-irix进程 CPU% 除以总核数—
-1/--percpu逐 CPU 模式实测逐核展示(5.4)
-2/--disable-left-sidebar隐藏左栏网络/磁盘/FS/传感器实测(5.5)
-3/--disable-quicklook隐藏 QuickLook—
-4/--full-quicklook仅 QuickLook 与负载实测(5.6)
-5/--disable-top隐藏顶部菜单—
-6/--meangpuGPU 均值模式需 GPU 插件
--sort-processes <key>进程排序键实测 memory_percent(5.10)
--export <list>启用导出器实测 csv(5.12)
--export-csv-file <path>CSV 文件路径实测 /tmp/glances.csv
--export-csv-overwrite覆盖已有 CSV—
--export-json-file <path>JSON 文件路径—
--export-graph-path <dir>Graph 导出目录—
-c/--client <host>连接远端 glances 服务器实测(5.14)
-s/--server服务器(XML-RPC)模式实测(5.14)
--browser启动客户端浏览器(列出多台服务器)—
--disable-autodiscover关闭自动发现—
-p/--port <port>C/S 端口默认 61209
-B/--bind <addr>绑定地址实测 127.0.0.1
--username/--password/-u <user>C/S 鉴权—
--snmp-*SNMP 采集相关仅 SNMP 模式
-t/--time <sec>最短刷新间隔默认 2 秒,实测 1/5 秒
-w/--webserverWeb 服务器模式默认 61208,实测 200(5.13)
--cached-time <sec>服务器缓存时间默认 1 秒
--open-web-browser启动后打开浏览器—
-q/--quiet不显示 Curses 界面配合 stdout 用
-f/--process-filter <re>进程正则过滤—
--process-short-name/--process-long-name进程名长短—
--stdout <list>逐行输出到 stdout—
--stdout-csv <list>CSV 输出到 stdout实测(5.11)
--issue自检全部插件并退出—
--api-doc显示字段说明—
--hide-kernel-threads隐藏内核线程—
-b/--byte网络速率按字节显示实测(5.7)
--fahrenheit温度用华氏度默认摄氏度
--fs-free-spaceFS 显示剩余空间默认已用
--sparkline用 sparkline 代替 bar—
--theme-white白底配色—
--disable-check-update关闭在线更新检查—
--strftime <fmt>独立模式日期格式—

八、卸载方式

glances 通过 apt 安装,卸载同样用 apt(彻底清理配置文件加 purge):

# 卸载 glances(保留配置文件)
apt-get remove -y glances

# 彻底卸载并删除配置
apt-get purge -y glances

⚠️ 注意:若后续不再需要 Web 依赖,可用 apt-get autoremove -y 清理异常引入的 python3-bottle 等包(需确认无其它程序依赖)。

Ubuntu 22.04 glances 安装与命令参数详解 - Quzuo