在日常開發和伺服器管理中,即時監控系統資源使用情況是必不可少的任務。雖然 htoptop 是經典的系統監控工具,但今天我們要介紹一款更現代化的替代品 —— Bottom (btm)

什麼是 Bottom?

Bottom(命令列呼叫為 btm)是一款用 Rust 語言編寫的跨平台圖形化系統/處理程序監控器。它支援 Linux、macOS 和 Windows 系統,靈感來源於 gtop、gotop 和 htop,但提供了更豐富的功能和更美觀的介面。

主要特性

  • 🦀 Rust 編寫 - 記憶體安全、高效能、低資源佔用
  • 🖥️ 跨平台支援 - Linux、macOS、Windows 全覆蓋
  • 📊 視覺化圖表 - CPU、記憶體、網路使用率即時圖表
  • 🎨 高度可自訂 - 支援自訂佈局、顏色和過濾器
  • ⌨️ 直觀快捷鍵 - 類似 vim 的鍵盤操作,學習成本低
  • 🔍 強大搜尋 - 快速過濾和定位處理程序
  • 📈 歷史資料 - 檢視資源使用的歷史趨勢

安裝方法

Linux 系統

使用套件管理器安裝:

# Ubuntu/Debian
sudo apt install bottom

# Fedora/RHEL
sudo dnf install bottom

# Arch Linux
sudo pacman -S bottom

# openSUSE
sudo zypper install bottom

使用 Cargo 安裝(推薦最新版本):

cargo install bottom

使用預編譯二進位檔:

# 下載最新版本
wget https://github.com/ClementTsang/bottom/releases/latest/download/bottom_x86_64-unknown-linux-gnu.tar.gz
tar -xzf bottom_x86_64-unknown-linux-gnu.tar.gz
sudo mv btm /usr/local/bin/

macOS 系統

# 使用 Homebrew
brew install bottom

# 或使用 MacPorts
sudo port install bottom

Windows 系統

# 使用 Chocolatey
choco install bottom

# 或使用 Scoop
scoop install bottom

# 或使用 winget
winget install ClementTsang.bottom

快速上手

基本使用

安裝完成後,在終端機中直接執行:

btm

即可看到完整的系統監控介面。

常用快捷鍵

Bottom 採用類似 vim 的鍵盤操作模式:

快捷鍵 功能說明
?h 開啟說明選單
q 退出程式
g 跳轉到頂部
G 跳轉到底部
/ 搜尋處理程序
dd 終止選中處理程序
Tab 在不同視窗間切換
滑鼠點擊 直接選擇視窗

命令列參數

# 指定重新整理間隔(毫秒)
btm --rate 2000

# 預設顯示 CPU 視窗
btm --default_widget_type cpu

# 隱藏電池資訊
btm --hide_avg_cpu

# 使用自訂設定檔
btm --config /path/to/config.toml

# 檢視完整說明
btm --help

設定自訂

Bottom 支援透過設定檔進行深度客製化。設定檔位置:

# Linux/macOS
~/.config/bottom/bottom.toml

# Windows
%APPDATA%\bottom\bottom.toml

範例設定

# 重新整理間隔(毫秒)
rate = 2000

# 預設小工具佈局
[[row]]
  [[row.widget]]
    type = "cpu"
  [[row.widget]]
    type = "memory"

[[row]]
  [[row.widget]]
    type = "network"
  [[row.widget]]
    type = "process"

# 顏色主題
[colors]
  table_header_color = "#00d7ff"
  cpu_core_colors = ["#ff5555", "#50fa7b", "#f1fa8c"]

# 處理程序過濾器
[flags]
  hide_kernel_threads = true
  show_cpu_cores = true

與 htop 的對比

特性 Bottom (btm) htop
程式語言 Rust C
跨平台 ✅ Linux/macOS/Windows ⚠️ 主要 Linux/Unix
視覺化圖表 ✅ 內建 ❌ 需額外設定
歷史資料 ✅ 支援 ❌ 僅即時
設定靈活度 ✅ TOML 設定 ⚠️ 有限
資源佔用
社群活躍度 🔥 快速成長 穩定

實際應用場景

1. 伺服器效能監控

在遠端伺服器上執行 btm,可以直觀地檢視: - CPU 各核心的負載分佈 - 記憶體使用情況和交換空間 - 網路介面的即時流量 - 磁碟 I/O 讀寫速度

2. 開發環境偵錯

執行資源密集型應用時,使用 btm 快速定位: - 哪個處理程序佔用最多 CPU - 記憶體洩漏的可疑處理程序 - 網路連線的異常情況

3. 系統最佳化分析

透過歷史資料圖表,分析: - 系統資源使用的峰值時段 - 長期執行的資源趨勢 - 最佳化措施的效果驗證

進階技巧

自訂小工具佈局

Bottom 允許你完全自訂介面佈局,建立最適合你工作流程的監控面板:

# 專注於 CPU 和處理程序的佈局
[[row]]
  [[row.widget]]
    type = "cpu"
    ratio = 2
  [[row.widget]]
    type = "process"
    ratio = 3

處理程序過濾和搜尋

使用 / 鍵開啟搜尋框,支援正規表示式:

# 搜尋特定處理程序
python

# 使用正規表示式
^node.*

# 過濾特定使用者
user:kevin

監控特定 CPU 核心

# 只顯示指定 CPU 核心
btm --cpu_core 0 --cpu_core 1

總結

Bottom (btm) 作為一款現代化的系統監控工具,憑藉其 Rust 帶來的效能優勢、跨平台支援、豐富的視覺化功能和高度可自訂性,正在成為 htop 的有力替代品。

無論你是系統管理員、DevOps 工程師還是普通開發者,btm 都能為你提供直觀、高效的系統資源監控體驗。更重要的是,它完全開源免費,社群活躍,持續更新。

立即嘗試: 訪問 GitHub 儲存庫 開始你的現代化系統監控之旅!


參考連結: