我又再安裝了一次!Pixel 4 復活記的續集!

Pixel 4 復活記

📱 Pixel 4 復活記:將舊手機改造成 AI Agent

身為一個 CS Major 的大叔,抽屜裡總有幾支捨不得丟的舊手機。這幾天看著那支 Pixel 4 (Snapdragon 855),心想它的算力其實比樹莓派 4 還強,為什麼不拿來跑最近很紅的 OpenClaw (AI Agent 框架) 呢?

這是一場從 Root 刷機、Linux 容器撞牆,最後回歸 Android 原生 Termux 的技術長征。如果你也想把舊手機變成 24 小時待命的 AI 伺服器,這篇 SOP 可以幫你省下至少 10 小時的 Debug 時間。

⚠️ 關鍵提醒: 不要使用 Google Play 商店下載的 Termux!它已經停止維護,會導致各種 Library 連結錯誤。請務必去 F-Droid 下載最新版。

🛠️ 為什麼不 Root?技術選擇的反思

一開始我也陷入了迷思,覺得 Server 就是要 Root、就是要跑 Ubuntu (透過 PRoot)。結果遇到了兩個大坑:

  • SystemError 13: Ubuntu 容器內的標準 Node.js 試圖讀取 /proc/net/dev,被 Android 的 SELinux 擋下,導致 OpenClaw 直接崩潰。
  • 效能耗損: 跑一個完整的 Linux Distro 對手機記憶體與電量都是負擔。

結論: 最好的解法是 「Termux 原生環境 + chroot 模擬層」。既能享受 Android 優化的 Node.js,又能解決路徑相容性問題。

🚀 實戰 SOP:10 分鐘架設龍蝦伺服器

1 基礎環境初始化

安裝好 F-Droid 版 Termux 後,第一件事是防止系統殺後台,並安裝必要的開發工具。

# 1. 換源並更新系統
termux-change-repo
pkg update && pkg upgrade -y

# 2. 安裝核心工具 (包含 chroot, ssh, tmux, nodejs)
# 注意:我們使用 nodejs-lts 版本以確保穩定
pkg install proot termux-tools openssh tmux python nodejs-lts make clang build-essential git nano -y
💡 省電與存活設定: 下拉通知列,找到 Termux 通知,點擊 "Acquire wakelock"。這能確保螢幕關閉時 CPU 不休眠。

2 安裝 OpenClaw (Local Install)

我們不使用 -g 全域安裝,避免汙染 Termux 環境。採用專案級安裝 (Local Installation) 是最佳實踐。

# 建立專案目錄
mkdir ~/lobster && cd ~/lobster

# 初始化並安裝
npm init -y
npm install openclaw

3 解決路徑問題 (關鍵魔法)

OpenClaw (以及很多 Linux 程式) 會嘗試寫入 /tmp,但 Android 沒有這個目錄。我們使用 termux-chroot 來建立一個虛擬的檔案系統層。

# 建立設定檔 (直接寫入,跳過互動問答)
mkdir -p ~/.openclaw

# 寫入設定 (將 YOUR_PASSWORD 換成你的密碼)
cat < ~/.openclaw/openclaw.json
{
  "gateway": {
    "mode": "local",
    "auth": {
      "token": "YOUR_PASSWORD"
    }
  }
}
EOF

4 啟動與長駐 (Tmux 方案)

在 Termux 上,PM2 往往會因為 SSH 斷線而被系統殺死。最穩定的 Server 方案是使用 Tmux

# 1. 開啟一個新的 Tmux Session
tmux new -s lobster

# 2. 【重要】進入模擬層 (解決 /tmp 報錯)
termux-chroot

# 3. 進入目錄並啟動 (前台模式)
cd ~/lobster
npx openclaw gateway run

當你看到 Gateway started 且畫面卡住時,恭喜你成功了!
現在按下 Ctrl + b,放開後按 d,即可將視窗分離 (Detach)。這時就算你關掉電腦的 SSH,OpenClaw 依然會在 Pixel 4 的背景默默工作。

☁️ 自動化備份 (Rclone)

既然是 Server,資料備份不能少。我們使用 Rclone 將資料同步到 Google Drive。

# 備份整個 Termux 環境 (暴力備份法)
tar -zcf /sdcard/termux-backup.tar.gz -C /data/data/com.termux/files ./home ./usr

# 同步到雲端 (需先設定好 rclone config)
rclone copy /sdcard/termux-backup.tar.gz gdrive:/Pixel4_Backups/

留言

此網誌的熱門文章

Pixel 4 變身最強 AI 助理:OpenClaw 一鍵部署全攻略

如何在本機上建立一個可以自動下載X上的影片流程,以tampermonkey及cobalt docker搭配進行

草屯美食深度指南_2025年版