用 btm 做日常监控:官方源停在 0.12.3,装完要先处理这几件事
项目地址:https://github.com/ClementTsang/bottom
bottom(命令名 btm)是 Rust 写的终端图形化进程与系统监视器,灵感来自 gtop、gotop 和 htop,MIT 协议,作者 Clement Tsang。默认像一块仪表盘:CPU、内存、网络、磁盘、温度和进程等组件共享一个屏幕,每个组件都可以排序、缩放,或展开占满整个终端。
装完先 btm --version:官方源冻结在 0.12.3
官方 Ubuntu 源(universe)里有 btm,但冻结在 0.12.3,发行版发布后不再升级;上游最新是 0.14.9(2026-08-27)。恰恰是新版本带来了缓存与缓冲区单独统计、内存组件中的 GPU 占用、内置配色主题、隐藏内核线程,以及针对新内核和新传感器的修复。一个读错硬件数据的监视器比没有监视器更糟。
安装途径对比:
- 官方 Ubuntu:
btm在 universe,冻结在 0.12.3,之后不升级 cargo install bottom:版本较新,但要编译好几分钟,装在 apt 之外,也不带手册页、补全和桌面入口- 上游压缩包:官方二进制,但每次新版本都要手动重新下载
- deb.griffo.io:最新版本并自动更新;软件包以命令名
btm命名,声明了对bottom的Provides/Replaces,可顶替官方源里那个包;含上游二进制 +btm.1手册页 + bash/zsh/fish 补全 + 桌面入口及图标;五种架构 amd64、arm64、armhf、i386、riscv64;支持 Ubuntu 22.04、24.04、25.10、26.04
sudo apt update
sudo apt install btm
btm --version
注意:自 2026-10-01 12:00(英国时间)起,使用该 apt 镜像需要订阅,有一个永久免费镜像 deb-free.griffo.io(最多落后上游 2 个月,安全修复立即发布),但 bottom 不在免费镜像里。
跑起来
btm # 启动仪表盘
btm --basic # 去掉图表,只留紧凑数字读数,慢速 SSH 或很小的 tmux 窗格里依然清晰
btm --json # 结构化流输出,用于无头采集
命令行参数(btm -h 简览,--help 完整):-c/--config、-l/--layout、-a/--avg、-r/--rate、-t/--default_time_value、-b/--basic、-m/--mem_as_value、-d/--disable_click、-f/--foreground_color、-g/--group、-s/--show_table_gap、-u/--temperature_type、-k/--disable_advanced_kill、-x/--tree、-R/--retention、-w/--whole_word、-S/--regex、-W/--case_sensitive、--disable_gpu。
布局得自己写 bottom.toml
bottom 是 widget 化的,每个图表是独立 widget,可移动、调整大小、隐藏。配置写在 bottom.toml 的 [[row]] 和 [[row.child]] 里,混搭 CPU 曲线、内存柱图、网络、温度、进程、电池。默认布局够用 80% 场景(默认布局定义在源码 src/constants.rs 的 DEFAULT_LAYOUT)。
一套 TOML 配置在 macOS / Linux / Windows 通用,默认位置不同但语法一致。要“立刻给我个花花仪表盘”,btop 更省事;bottom 的价值在自定义布局。
常见坑
- 温度/电池要平台传感器支持:Linux 上 CPU 温度常要 root,macOS / Windows 不用 sudo。
- 温度/电池读不到不是 bug,是权限或传感器没暴露。
- TUI 不是 GUI:SSH、tmux/screen、串口控制台都能跑,无窗口、不强制鼠标。
- 部分发行版要 curses 依赖,一般预装;没有就装 ncurses / libncurses。
应用内按 ? 打开帮助菜单。常用快捷键:q/Q/Ctrl+c 退出;Esc 关闭对话框/搜索框/退出展开;Ctrl+r 重置显示与已收集数据;f 冻结/解冻更新;e 展开/收起当前 widget;Ctrl+Up/Down/Left/Right(或 Shift+方向)切换到上/下/左/右的 widget;Up/k、Down/j 在 widget 内移动;g g、Home 跳首项,G、End 跳末项;PageUp/PageDown 整页,Ctrl+u/Ctrl+d 半页。
与 htop / btop 的取舍
- htop:经典文字模式进程查看器。
- btop:彩色、单一布局的“开箱即用”监控。
- bottom:基于 widget,三者里布局最灵活;跨平台支持最好,macOS / Linux / Windows 一套 TOML 配置、同样的键位;含温度、电池、网卡筛选。
一句话:要立刻能看用 btop,要按自己习惯排列监控项、且跨平台一套配置用 bottom。
迭代时间线
2019 年 Clement Tsang 启动(最初叫 ytop);2021 年 0.5 系列引入 widget 化布局;2022 年 0.6 系首个稳定跨平台体验;2024 年 0.9 系改跨平台配置;2025 年 0.10 系新增 widget 类型、曲线渲染更顺。