Ubuntu 24.04 安装 glances 4.5.8 指南

Ubuntu 24.04 服务器实测安装 glances 4.5.8:pipx/pip+venv/uvx/apt 四路径全流程、systemd 托管、升级卸载与 PEP 668 排障实录。

glancesUbuntu系统监控Linux2026/10/23

Ubuntu 24.04 安装 glances 4.5.8 指南

目标:在 Ubuntu 24.04 服务器上从零安装 glances 4.5.8(当前最新稳定版),覆盖 pipx、pip+venv、uvx、apt 四种安装路径的完整实测过程、多方案对比、systemd 托管、升级/卸载与常见排障。全部命令与回显均在 Ubuntu 24.04.5 LTS x86_64 服务器实测通过。

一、环境信息

本篇实测服务器基础信息如下(cat /etc/os-release、uname -m、python3 --version、free -h、df -h / 实测回显):

PRETTY_NAME="Ubuntu 24.04.5 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
x86_64
Python 3.12.3
Mem:       31Gi        17Gi       8.1Gi       685Mi       6.7Gi        13Gi
overlay         786G  436G  316G  58% /
  • 操作系统:Ubuntu 24.04.5 LTS(x86_64)
  • 内核:6.8.0-138-generic
  • 系统自带 Python:3.12.3(满足 glances 4.5.8 要求的 ≥ 3.10,来源:PyPI 包元数据,查询日期 2026-10-23)
  • 目标软件:glances 4.5.8(PyPI 最新稳定版,发布于 2026-10-11,查询日期 2026-10-23)
  • 网络要求:可访问 pypi.org(PyPI 安装)或 archive.ubuntu.com(apt 安装)

二、前置条件

glances 是纯 Python 应用,安装前只需准备 Python 基础环境与构建工具(psutil 等依赖在没有预编译 wheel 的平台上需要编译)。以下命令实测通过:

# 更新软件源索引
apt-get update
Hit:1 http://archive.ubuntu.com/ubuntu noble InRelease
Hit:2 http://archive.ubuntu.com/ubuntu noble-updates InRelease
Hit:3 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Hit:4 http://archive.ubuntu.com/ubuntu noble-security InRelease
Reading package lists... Done

💡 说明:源索引条目因镜像而异,Hit/Get 均为正常状态,以最后 Reading package lists... Done 为完成标志。

# 安装 Python 运行环境、venv、构建工具与 curl
apt-get install -y python3 python3-venv python3-pip python3-dev gcc curl
Setting up python3-venv (3.12.3-0ubuntu2) ...
Processing triggers for man-db (2.12.0-4build2) ...
# 验证 Python 与 pip 就绪
python3 --version
pip3 --version
Python 3.12.3
pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12)

验证要点:Python ≥ 3.10 即满足 glances 4.x 要求;若 python3 --version 低于 3.10,需先通过 deadsnakes PPA 或源码方式升级 Python(本篇实测环境自带 3.12.3,无需处理)。

三、版本选型说明

安装前先明确版本口径:glances 官方发行渠道是 PyPI,Ubuntu 官方仓库里的 glances 严重滞后。两条渠道的实测版本对照如下:

渠道包名/命令实测版本状态适用性
PyPI(官方渠道)pipx install glances / pip install glances4.5.8(2026-10-11 发布)官方持续维护的最新稳定版推荐
Ubuntu 24.04 noble universeapt install glances3.4.0.3+dfsg-1大版本落后(3.x)仅作兜底

关键差异与选型解读:glances 4.x 相比 3.x 有一系列不兼容变更(REST API 版本从 v3 升到 v4、Web 服务从 bottle/bottle-websocket 迁移到 FastAPI/Uvicorn 体系、配置与插件行为调整),Ubuntu 仓库的 3.4.0.3 无法体验 4.x 的 Web/API 能力,且按官方 README 明确说明「发行版包不是最新版本、仅基础插件启用,不推荐使用」。因此生产安装一律以 PyPI 4.5.8 为准,apt 方式仅在网络受限或确需系统包管理时兜底(来源:官方 README「GNU/Linux package」章节与 GitHub Releases,查询日期 2026-10-23)。

四、方案 A:pipx 安装(官方推荐)

pipx 为每个 Python 应用创建独立虚拟环境并只把命令暴露到 ~/.local/bin,既不污染系统 Python,又天然规避 Ubuntu 23.04+ 的 PEP 668「externally-managed-environment」限制,是官方 README 给出的标准安装方式,本篇作为主路径。

4.1 安装 pipx

apt-get install -y pipx
Setting up pipx (1.4.3-1) ...
# 把 ~/.local/bin 加入 PATH(写进 shell 配置文件)
pipx ensurepath
Success! Added /root/.local/bin to the PATH environment variable.

Consider adding shell completions for pipx. Run 'pipx completions' for
instructions.

You will need to open a new terminal or re-login for the PATH changes to take
effect.

Otherwise pipx is ready to go! ✨ 🌟 ✨

⚠️ 注意:pipx ensurepath 修改的是 shell 配置文件(root 用户写入 /root/.bashrc),当前会话不自动生效,需重新登录或执行 source ~/.bashrc,否则下一条命令会提示 glances: command not found。

4.2 安装 glances 及全部特性依赖

export PATH="$PATH:/root/.local/bin"
pipx install 'glances[all]'
done! ✨ 🌟 ✨
  installed package glances 4.5.8, installed using Python 3.12.3
  These apps are now globally available
    - glances
  These manual pages are now globally available
    - man1/glances.1

glances[all] 中的 all 是 PyPI extras(可选依赖组),官方定义的 extras 清单如下(来源:官方 README「Features list」,查询日期 2026-10-23):

extras安装的依赖能力
all以下全部特性
webWeb 服务器(WebUI)与 REST API(FastAPI/Uvicorn/Jinja2)
export全部导出模块(InfluxDB/Prometheus/Elasticsearch/Kafka 等)
graphSVG 图表导出(Pygal)
containers容器监控(Docker/Podman socket)
cloud云平台元数据插件
ip公网 IP 显示
sensors传感器温度插件
smart磁盘 SMART 监控
raidRAID 状态插件
snmpSNMP 远程采集
gpuGPU 插件
wifiWiFi 插件
browser中央浏览器(Glances Central Browser)
mcpMCP 服务器(AI 助手集成)
action告警动作特性

只做 Web 监控时可用 pipx install 'glances[web]' 减少依赖;不确定就用 glances[all](实测安装后核心依赖版本:fastapi 0.161.1、psutil 7.2.2、influxdb-client 1.50.0、elasticsearch 9.5.1、pika 1.4.4、defusedxml 0.7.1)。

4.3 验证安装

which glances
glances --version
/root/.local/bin/glances
Glances version:        4.5.8
Glances API version:    4
PsUtil version:         7.2.2
Log file:               /root/.local/share/glances/glances.log

验证要点:Glances version: 4.5.8 且 API version: 4 即安装成功。日志文件位于 /root/.local/share/glances/glances.log(root 用户),排障时可先看此文件。

五、方案 B:pip + venv 安装

适合需要把 glances 固定在特定路径、纳入既有 venv 管理体系的场景。venv 同样规避 PEP 668 限制。

5.1 创建虚拟环境并安装

python3 -m venv /opt/glances-venv
/opt/glances-venv/bin/pip install 'glances[web]'
  Installing collected packages: glances
Successfully installed glances-4.5.8 fastapi-0.161.1 psutil-7.2.2 uvicorn-0.54.0

5.2 验证安装

/opt/glances-venv/bin/glances --version
/opt/glances-venv/bin/pip list | grep -Ei 'glances|psutil|fastapi|uvicorn'
Glances version:        4.5.8
Glances API version:    4
PsUtil version:         7.2.2
Log file:               /root/.local/share/glances/glances.log
fastapi            0.161.1
Glances            4.5.8
psutil             7.2.2
uvicorn            0.54.0

5.3 排障实录:pip 直装报 externally-managed-environment

在 Ubuntu 24.04 上跳过 venv/pipx 直接 pip3 install glances 会被 PEP 668 拒绝,实测报错如下(输出节选):

pip3 install glances
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-glances, where glances is the package you are trying to
    install.

    If you wish to install a non-Debian packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.

    See /usr/share/doc/python3.12/README.venv for more information.
note: If you believe this is a mistake, please contact your Python installation
or OS distribution provider. You can override this, at the risk of breaking
your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

定位与解决:这是 Ubuntu 23.04 起 Debian/Ubuntu 对系统 Python 的保护机制(PEP 668),不是 glances 的问题。正确做法按优先级:① 用 pipx(方案 A);② 用 venv(方案 B);③ 确有把握再 pip3 install --break-system-packages glances 强行覆盖系统 Python(不推荐,可能破坏 apt 管理的 python3-* 包)。

六、方案 C:uvx 一次性运行

uvx(来自 uv)无需预先安装 glances,首次运行时自动拉起临时环境执行,适合「临时用一次」或版本试用。先通过 pipx 安装 uv:

pipx install uv
  installed package uv 0.13.5, installed using Python 3.12.3
  These apps are now globally available
    - uv
    - uvx
export PATH="$PATH:/root/.local/bin"
uvx --version
uvx glances --version
uvx 0.13.5 (x86_64-unknown-linux-gnu)
Glances version:        4.5.8
Glances API version:    4
PsUtil version:         7.2.2
Log file:               /root/.local/share/glances/glances.log

💡 说明:uvx glances 等价于官方 README 中的「UVx, the magic way」用法。临时环境缓存在 ~/.cache/uv 下,重复执行不重复下载;但它不产生常驻安装,长期使用仍建议方案 A/B。

七、方案 D:apt 发行版仓库安装

apt 路径用于对照与兜底。先查仓库可用版本再安装:

apt-cache policy glances
glances:
  Installed: (none)
  Candidate: 3.4.0.3+dfsg-1
  Version table:
     3.4.0.3+dfsg-1 500
        500 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages
apt-get install -y glances
Setting up python3-matplotlib (3.6.3-1ubuntu5) ...
Processing triggers for libc-bin (2.39-0ubuntu8.9) ...
which glances
glances --version
/usr/bin/glances
Glances v3.4.0.3 with PsUtil v5.9.8
Log file: /tmp/glances-root.log

实测结论:apt 安装的是 3.4.0.3(3.x 系列),且 --version 输出格式与 4.x 不同(单行 Glances v3.4.0.3 vs 多行 Glances version: 4.5.8)。按官方 README 明确立场:「我不推荐这种方式——发行版包可能不是最新版本,且只启用基础插件」;Debian 系发行版包还不含 WebUI 所需的 JS 静态文件(来源:官方 README 引用 issue 2021,查询日期 2026-10-23),glances -w 的 Web 界面无法正常使用。

若已误装 apt 版本,建议先卸载再走 PyPI 路径,避免两套命令并存:

apt-get purge -y glances
apt-get autoremove -y
which glances
dpkg: warning: while removing glances, directory '/lib/systemd/system' not empty so not removed
glances 已移除

💡 说明:/lib/systemd/system not empty 警告是 dpkg 对非空目录的正常保护提示,与 glances 无关,可忽略。

八、方案对比与选择建议

维度A:pipx(推荐)B:pip + venvC:uvxD:apt
实测版本4.5.84.5.84.5.83.4.0.3+dfsg-1
是否联网是(PyPI)是(PyPI)是(PyPI,临时环境)是(Ubuntu 源)
安装位置~/.local/share/pipx/venvs/glances自定义(如 /opt/glances-venv)~/.cache/uv 临时缓存/usr/bin(系统包)
命令暴露~/.local/bin/glancesvenv 绝对路径每次运行时解析/usr/bin/glances
升级方式pipx upgrade glancesvenv 内 pip install -U重新运行即最新随发行版更新(滞后)
多版本并存pipx 多 venv 困难(同名覆盖)建多个 venv 即可每次最新仅仓库版本
Web/API 能力完整([all])完整([web])完整WebUI 静态文件缺失

选择建议:常规服务器运维选 A(一条命令、干净隔离、升级方便);需要固定路径/嵌入部署脚本选 B;临时诊断或试用选 C;只有完全离线内网 apt 源场景才退到 D,且需接受 3.x 老版本与 WebUI 缺失的限制。

九、配置说明

9.1 配置文件位置与初始化

glances 按以下顺序查找配置文件,找到即停:

  1. 命令行 -C <path> 显式指定的路径;
  2. /etc/glances/glances.conf(系统级,systemd 服务建议放这里);
  3. ~/.config/glances/glances.conf(用户级);
  4. Python 安装目录下的系统级路径(pipx venv 内)。

初始化系统级配置(以 v4.5.8 官方模板为基准,模板包含全部 50+ 配置段与逐项注释):

mkdir -p /etc/glances
curl -sSL -o /etc/glances/glances.conf \
  https://raw.githubusercontent.com/nicolargo/glances/v4.5.8/conf/glances.conf
wc -l /etc/glances/glances.conf
1086 /etc/glances/glances.conf

配置文件的全量段落解析与逐段实测见 《glances 4.5.8 配置参数详解》,此处不展开。

9.2 systemd 托管(Web 模式常驻)

真实服务器上常把 glances -w 配成 systemd 服务常驻。创建服务单元 /etc/systemd/system/glances-web.service:

[Unit]
Description=Glances Web UI / REST API server
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
ExecStart=/root/.local/bin/glances -w
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

⚠️ 注意:本节需要带 systemd 的 Linux 真机(Ubuntu 24.04 服务器原生满足)。ExecStart 必须写 glances 可执行文件的绝对路径(pipx 路径为 /root/.local/bin/glances,方案 B 为 /opt/glances-venv/bin/glances),且若以非 root 用户运行,请把路径替换为该用户的 ~/.local/bin/glances 并加 User=<用户名>。

启用并启动服务(每行仅针对一个单元):

systemctl daemon-reload
systemctl enable glances-web.service
systemctl start glances-web.service
systemctl is-active glances-web.service

预期输出依次为:无输出、Created symlink /etc/systemd/system/multi-user.target.wants/glances-web.service → /etc/systemd/system/glances-web.service.、无输出、active。启动后 curl http://127.0.0.1:61208/api/4/version 应返回 "4.5.8"(Web/API 模式的完整实测见 《glances 4.5.8 常用 CLI 命令与工具详解》)。

9.3 防火墙放行(Web 模式对外时)

Web 模式监听 61208(TCP),若启用 ufw 需放行:

ufw allow 61208/tcp
Rule added
Rule added (v6)

十、常见问题(FAQ)

Q1:glances: command not found,pipx 明明装成功了? pipx 把命令放在 ~/.local/bin,该目录不在 PATH 时就找不到。执行 pipx ensurepath 后重新登录(或 source ~/.bashrc),再 export PATH="$PATH:$HOME/.local/bin" 临时补齐。验证:echo $PATH | tr ':' '\n' | grep local/bin 应有输出。

Q2:Ubuntu 24.04 上 pip3 install glances 直接报错? 这是 PEP 668 保护机制(externally-managed-environment),完整报错与三种解决方案见第五章 5.3 节排障实录。原则:不要 --break-system-packages,改用 pipx/venv。

Q3:系统里同时有 apt 装的 glances 和 pipx 装的 glances,执行的是哪个? 取决于 PATH 顺序:~/.local/bin(pipx)排在 /usr/bin(apt)之前时执行 4.5.8。用 which glances 确认实际执行路径,用 glances --version 确认版本(3.x 与 4.x 的输出格式不同,一眼可辨)。生产环境建议只保留一套(见第七章卸载 apt 版)。

Q4:glances -w 提示缺依赖或 Web 打不开? Web 模式需要 extras 依赖(FastAPI/Uvicorn/Jinja2)。检查所装 extras:pipx 场景用 pipx install 'glances[all]' 重新安装(覆盖同名 venv 会提示先 uninstall);venv 场景在 venv 内执行 pip install 'glances[web]'。另外 Debian 系 apt 包不含 WebUI 静态文件,apt 版本即使能启动 Web 服务浏览器也拿不到完整界面,必须走 PyPI 安装。

Q5:如何升级到新版本?glances 已是最新时升级命令输出什么? pipx 场景执行 pipx upgrade glances,实测当前已是最新时的回显:

glances is already at latest version 4.5.8 (location:
/root/.local/share/pipx/venvs/glances)

有新版本时会显示卸载旧版、安装新版的完整输出。venv 场景在 venv 内执行 pip install --upgrade glances。

Q6:如何固定/切换版本实现多版本并存? pipx 同一包名只能一个 venv(升级即切换)。要多版本并存:建多个 venv 分别 pip install glances==4.5.8、pip install glances==4.4.x,通过 venv 绝对路径调用;或用 uvx glances==<版本> 按需运行指定版本。查看可用版本:pip index versions glances。

十一、卸载与清理

按安装路径对应清理(实测回显如下):

# 卸载 pipx 安装的 glances
pipx uninstall glances
uninstalled glances! ✨ 🌟 ✨
# 卸载 uv(如装过)
pipx uninstall uv

# 删除 venv(方案 B)
rm -rf /opt/glances-venv

# 卸载 apt 版本(方案 D)
apt-get purge -y glances && apt-get autoremove -y

清理用户数据目录(监控历史与密码文件,按需删除):

rm -rf /root/.local/share/glances /root/.config/glances

💡 说明:~/.config/glances/ 下保存有 client/server 模式的密码哈希文件(.pwd),确认不再使用后再删。

十二、参考链接

  1. 官方 README(安装章节):https://github.com/nicolargo/glances#-installation (查询日期 2026-10-23)
  2. PyPI 项目页:https://pypi.org/project/glances/ (4.5.8,2026-10-11,查询日期 2026-10-23)
  3. v4.5.8 官方配置模板:https://github.com/nicolargo/glances/blob/v4.5.8/conf/glances.conf
  4. 官方文档:https://glances.readthedocs.io
  5. PEP 668 规范:https://peps.python.org/pep-0668/
  6. 本站同系列实测文档:《glances 介绍与选型指南》、《glances 4.5.8 配置参数详解》、《glances 4.5.8 常用 CLI 命令与工具详解》