雙顯卡 (Intel + NVIDIA Optimus) 筆電在 Linux 下常因獨顯長期供電導致過熱、風扇全速、續航縮短。Bumblebee 3.0 引入 bbswitch 核心模組可動態切斷 NVIDIA 顯卡電源,大幅降低發熱。本文記錄從舊版 PPA 清理、ironhide 移除、新版安裝到驗證的完整流程。

# 1. 移除舊版 Bumblebee PPA
sudo ppa-purge ppa:mj-casalogic/bumblebee
sudo ppa-purge ppa:mj-casalogic/ironhide
# 2. 移除 ironhide 套件 (dpkg 錯誤需手動修正 postrm 腳本)
sudo apt-get purge ironhide
# 若報錯: Sub-process /usr/bin/dpkg returned an error code (1)
# 修正 /var/lib/dpkg/info/ironhide.postrm
sudo vim /var/lib/dpkg/info/ironhide.postrm
# 找到群組刪除邏輯,逐行加 # 註解
# if [ `cat /etc/group |grep ironhide |wc -l` > 0 ]; then
# groupdel ironhide
# fi
# 再次移除
sudo apt-get purge ironhide
# 成功
# 新增穩定版 PPA (Ubuntu 12.04+)
sudo add-apt-repository ppa:bumblebee/stable
sudo apt-get update
# 安裝核心套件
sudo apt-get install bumblebee bumblebee-nvidia primus linux-headers-generic
# 安裝 bbswitch (核心模組,動態切電)
sudo apt-get install bbswitch-dkms
# 1. 檢查 bbswitch 載入狀態
cat /proc/acpi/bbswitch
# 輸出: 0000:01:00.0 OFF → 獨顯已斷電
# 2. 使用 optirun/primusrun 執行獨顯程式
optirun glxgears -info
# 或
primusrun glxgears
# 執行期間 /proc/acpi/bbswitch 應變為 ON
# 3. 檢查溫度
sudo apt-get install lm-sensors
sensors
# 觀察 GPU/CPU 溫度下降
[driver-nvidia]
KernelDriver=nvidia-current
PMMethod=auto
LibraryPath=/usr/lib/nvidia-current:/usr/lib32/nvidia-current
XorgModulePath=/usr/lib/nvidia-current/xorg,/usr/lib/xorg/modules
XorgConfFile=/etc/bumblebee/xorg.conf.nvidia
[optirun]
Bridge=primus
VGLTransport=proxy
PrimusLibraryPath=/usr/lib/primus:/usr/lib32/primus
PMMethod=auto:自動偵測 bbswitch/vga_switcheroo/noneBridge=primus:使用 Primus 零拷貝渲染,效能優於 VirtualGL| 現象 | 原因 | 解決 |
|---|---|---|
optirun 報 Cannot access secondary GPU |
bbswitch 未載入 / NVIDIA 驅動版本不符 | sudo modprobe bbswitch、重裝 nvidia-current、檢查 dkms status |
| 獨顯長期 ON 不斷電 | 有程式持有 /dev/nvidia* (如 nvidia-settings、docker 容器) | lsof /dev/nvidia* 找出並關閉 |
| Steam/遊戲效能差 | 未使用 Primus / 環境變數缺失 | PRIMUS_SYNC=2 primusrun %command% (Steam 啟動參數) |
| 核心升級後 bbswitch 失效 | DKMS 未自動重建 | sudo dkms autoinstall 或重裝 bbswitch-dkms |
sudo prime-select on-demand,動態切換無需登出 (需 435+ 驅動)Bumblebee 3.0 + bbswitch 為舊版 Ubuntu / 不支援 Prime 的硬體提供了成熟的動態切電方案,能顯著降低筆電待機溫度 10-20°C、延長電池壽命 30-50%。