把做好的影片從容器裡弄出來,送到你手機上
第 11 篇建好了影片管線,第 12 篇解釋了那 720 MB 的工具。它做出來的 MP4 是真實存在的檔案,但你的手機碰不到它。這篇要把 /data/pi-agent/ 跟 Google Drive 用 rclone 接起來——這個工具已經在 add-on 裡了。授權一次,之後每支做好的影片就會自己出現在你手機上。
檔案是存在的。只是放在一個沒用的地方。
做好的 MP4 放在 /data/pi-agent/底下,在一個你手機打不開的容器裡。沒有上傳這一步的話:影片做完 → 打開電腦 → SSH 連進去 → 找到輸出路徑 → 用 scp拉出來 → 再傳出去。有 rclone 的話:影片做完 → 手機收到 Drive 通知 → 分享出去。
rclone 是一個檔案同步工具,就像命令列版的 Drive App,而且已經在容器裡了:不用 apt install rclone,不用另外管理版本。每個指令都長同一個樣子:
rclone copy 本地路徑 遠端名稱:遠端資料夾這件工作找它做,有三個理由,這篇只講最單純的方向——本地檔案傳到 Google Drive:
- 成熟穩定。 超過十年的開發歷史;token 續期、斷線重試、大檔分片上傳這些細節都處理好了。
- 不綁死 Google。 支援超過 40 種服務:OneDrive、Dropbox、Box、iCloud Drive、Amazon S3、阿里雲 OSS、SFTP、WebDAV。兩端都可以是雲端儲存空間,所以它能把 Drive 的東西複製到 Dropbox,或把 S3 的資料備份到 OneDrive。
- 直接。 檔案是直接從你自己的 Home Assistant 主機傳到你選的供應商;Pi Agent 不會透過任何 WoowTech 雲端服務中轉。
其他任何組合,用的都是同一套「遠端加路徑」的模式。
為什麼 rclone 從來不會要你輸入 Google 密碼
Google 已經不再讓軟體用你的 email 跟密碼直接登入:任何拿到密碼的東西,都能碰到整個帳號——信箱、Drive、你的 YouTube 頻道、付款服務——就算是你信任的軟體,也可能被入侵。這跟一個服務要求讀取你 Google 日曆時用的,是同一套委任存取模型。
你的密碼是整棟大樓的萬用鑰匙。rclone 拿到的只是一張限定一個房間的門卡,在櫃檯登記在你名下發出來的。你隨時可以取消它;你自己的鑰匙照樣能用。
flowchart TD A["rclone 發起一次授權請求
並印出一個指令
要在有瀏覽器的電腦上執行"] --> B["Google 詢問是否允許 rclone
存取 Drive,範圍是
你選的那個"] B --> C["Google 發給 rclone 一張 token
限定在那個範圍內"] C --> D["rclone 之後每次傳輸
都出示這張 token"] D -.->|"你在
Google Account、Security、
third-party connections 裡撤銷它"| E["儲存的 token
不再能授權 rclone"]
隨時都能到 Google Account → Security → third-party connections撤銷它。只在你確認過網址跟帳號、真正是 Google 的頁面上輸入 Google 密碼;任何其他要求輸入密碼的畫面都直接關掉。
這是唯一一篇要你自己動手打字的章節
這個系列大部分都是靠開口問就能完成。這裡你要自己輸入: rclone config 是互動式的,跑在 Pi Agent 的容器裡。
- read、bash、edit、write 就是左欄完整的清單。 bash 是 agent 能幫上終端機工作的原因——但下面的授權步驟還是得你自己來。
- read 被選中,右側面板列出它的三個參數: path,必填; offset 跟 limit,選填。它只讀你指定的檔案,不會自己想讀什麼就讀什麼。
-
步驟 1
安裝 Advanced SSH & Web Terminal
前往
Settings → Add-ons → Add-on Store,搜尋 Advanced SSH & Web Terminal,安裝,打開 Web UI。筆電上不需要另外裝任何 SSH 客戶端。 -
步驟 2
你還沒進到 Pi Agent 裡
這個終端機打開的是 SSH add-on 自己的環境:你可能會看到系統路徑,例如
/config/跟/mnt/、ls /data/pi-agent/在這裡可能會顯示「No such file or directory」。這是正確的,不是壞掉——那個路徑是 Pi Agent 的持久化資料。 -
步驟 3
找出你自己的容器名稱
Pi Agent 的容器是
addon_<slug>,透過倉庫安裝的 slug 通常以一段八位字元的倉庫雜湊開頭,例如b9cf5676_woow_ha_pi_agent。這段雜湊是由倉庫來源算出來的,所以不同的倉庫網址會給出不同的名稱。檢查Settings → Add-ons → Woow HA Pi Agent → Info找 Hostname 或 Slug 欄位;如果你的沒顯示,不要用猜的——去查出來:docker ps --format '{{.Names}}' | grep pi_agent -
步驟 4
進入你剛剛確認過的容器
把你自己的 slug 代入
docker exec -it addon_<your-slug> bash——例如docker exec -it addon_b9cf5676_woow_ha_pi_agent bash。除非跟你的安裝完全一致,否則不要照抄這個範例。像root@container-id:/#這樣的提示符號,代表你已經進去了;ls /data/pi-agent/現在應該會列出 sessions、models 跟 rclone。 -
步驟 5
接下來都留在這裡
rclone config,rclone lsd跟rclone config reconnect都需要這個容器:rclone 的執行檔跟持久化設定都放在這裡。如果你看到rclone: command not found,先停下來檢查提示符號跟容器名稱。
addon_local_woow_ha_pi_agent 或 addon_woowtech_ha_pi_agent,也絕對不要照抄別人系統上的名稱。如果 docker ps 用不了或拒絕權限,不要隨便換用 ha 或 Podman 指令:讀一下這個終端機 add-on 的 Protection mode 跟主機存取文件。管理容器需要有主機層級的權限,這種權限能修改或刪除任何 add-on 的資料——只有在你完全理解這代表什麼的時候才去改這個設定,離開 shell 時記得改回來。大部分提示都用預設值就好。有兩個例外。
執行 rclone config。不同版本用詞可能不一樣;每個提示都先讀過再按 Enter。
| 提示 | 該輸入什麼,以及為什麼 |
|---|---|
e/n/d/r/c/s/q> | n ,代表新增一個遠端。第一次跑的話,上面那份清單是空的。 |
name> | gdrive。這是一個本機標籤,不是你的 Google 帳號,之後每個指令都會用 gdrive: 這個前綴。之後的遠端可能會叫 dropbox 或 onedrive。 |
| Storage type | 旁邊的數字,對應 drive (Google Drive),在那 40 多個編號後端裡找,或者 drive 如果你的提示接受名稱輸入的話。 |
Google Application Client Id> | 自己申請的 OAuth client 是比較長久的選擇。如果你的版本還允許用共用 client,按 Enter 接受預設值就好, client_secret那一項也一樣。先讀下面 2026 年的提醒。 |
| Scope 兩個裡選一個 | 1,「完整存取所有檔案,不含應用程式資料夾」,如果這個管線需要上傳到任意資料夾、也需要檢視既有檔案的話。 3 把 rclone 限制在它透過這個 App 建立或開啟的檔案;這些檔案照樣會出現在 Drive App 裡,但 rclone 沒辦法瀏覽或管理你其他的檔案。選能用的範圍裡最小的那個。 |
service_account_file,然後 Edit advanced config? | 留白,然後 n。個人 Google 帳號沒有服務帳戶的 JSON 檔案,而分塊大小、代理行為跟 SSL 的預設值,適合 99% 的家用安裝環境。 |
Use web browser to automatically authenticate rclone with remote? 另一個選項 | n,這是最容易選錯的提示。 y 是給那些 rclone 能直接開 Firefox 或 Chrome 的電腦用的;在你這台沒有瀏覽器的 Home Assistant 主機上,它可能會讓終端機一直卡在 waiting for code... ,永遠等不到。 |
| 授權這一步 | 目前的版本會印出一個 rclone authorize 指令,給一台有瀏覽器、rclone 版本相容的可信任電腦用;比較舊的版本會印出一長串開頭是 https://accounts.google.com/o/oauth2/auth?access_type=offline&client_id=...&scope=...&response_type=code。複製 整 行,每一個 、, 、 跟 都不能漏。從那台電腦的官方發行管道去拿 rclone,絕對不要把這個指令或網址交給任何線上的「授權小幫手」。。要幫那台電腦拿 rclone,只從官方發行管道拿,絕對不要把那個指令或網址交給任何線上的「授權小幫手」。 |
| Google 的登入與同意頁面 | 檢查四件事:這是你自己跑的 rclone authorize 指令;這個頁面真的是 Google 主機提供的;顯示的帳號是你要用的那個;要求的 Drive 範圍跟你選的一致。「Google hasn't verified this app」會出現在未驗證或測試中的 client 上——你自己申請的 client 出現這個很正常,但這不代表這個畫面就一定安全。四件事都確認過,才點開 Advanced ,選 Continue to rclone。任何不熟悉的東西:取消。 |
| token 這一步的提示 | 那台可信任的電腦會印出授權結果;把整段複製進去。比較舊的版本會改問 Enter verification code> ,你要回答 Got code。不管哪種方式,rclone 都會把 token 寫進 rclone.conf。目前的流程是把結果送回那台電腦,不是像舊教學講的那樣顯示一組帶外驗證碼。 |
Configure this as a Shared Drive (Team Drive)? | n ,一般個人的「我的雲端硬碟」選這個。Team Drive 是它的舊名;只有你的組織給了你存取權、而你想把遠端根目錄設在那裡時才選它。 |
Keep this "gdrive" remote? | 讀一下摘要,包括 type = drive 跟你選的範圍。 y 只有在值都對的時候才選 q ,然後退出。 |
client_id 跟 client_secret ,在 Google Cloud Console 裡申請,然後在 Client Id 那個提示輸入,照著 rclone.org/drive/#making-your-own-client-id 跟 Google 的同意畫面、測試使用者要求來做。精靈跑完,不代表上傳真的能用
還在容器裡的話,跑 rclone lsd gdrive:。它會印出你「我的雲端硬碟」或共用雲端硬碟根目錄下的目錄:
-1 2024-03-15 08:22:14 -1 Albums-1 2025-06-20 14:11:03 -1 Work Backups-1 2026-01-08 22:45:56 -1 Home Videos能列出來就確認了讀取權限。如果根目錄裡沒有任何資料夾,沒有輸出也沒有錯誤也是正常的;建一個資料夾再跑一次,就能得到明確答案。有三種錯誤常常出現:
| 顯示什麼 | 該怎麼做 |
|---|---|
Failed to lsd: couldn't list directory: Get "https://...": oauth2: token expired | 這張 token 已經不被接受了。跑 rclone config reconnect gdrive: ,再跑一次 OAuth。 |
Failed to lsd: didn't find section in config file | 目前的設定檔裡找不到符合的遠端名稱。跑 rclone config 檢查精確的名稱——大小寫是有差的, Gdrive: 跟 gdrive:。 |
rclone: command not found | 不是同一個東西。你不在 Pi Agent 的容器裡,或內建的執行檔用不了。回到 docker exec 那一步,檢查目標。 |
現在證明你能寫入。如果你的 Drive 根目錄已經有 test.txt,兩行都用一個獨特的名稱,這樣測試才不會覆蓋掉它:
echo "hello from pi agent" > /tmp/test.txtrclone copy /tmp/test.txt gdrive:在 Drive App 裡檢查「最近」,讀一下 test.txt 的內容;確認過再從 Drive 裡刪掉它。複製不會動到本地的檔案。
-v 看詳細的傳輸資訊, -vv 看更詳細的診斷資訊。 rclone lsd gdrive: -vv 會回報後端初始化、API 活動、重試跟耗時。這些 log 可能帶著檔案路徑跟帳號的中繼資料:貼到論壇之前先讀過、遮掉敏感內容。rclone 通常會隱藏機密資訊,但整份 log 都該當成敏感內容處理。把管線指向一個資料夾
pitch_video 這個 Skill 需要一個目的地,例如 gdrive:PiAgent/Videos/,但這個設定放在哪個欄位因版本而異:讀你安裝那個版本的 SKILL.md、README 跟設定範例,絕對不要假設另一個版本有的欄位這裡也一定有。常見有三種寫法,值都一樣:
| 設定放在哪 | 範例值,跟該注意什麼 |
|---|---|
upload_to: 在 YAML frontmatter 裡 | upload_to: gdrive:PiAgent/Videos/ ——只有在已安裝的 Skill 文件記載了這個欄位時才這樣寫。 |
一個獨立的 config.yaml 或 .env | RCLONE_DEST=gdrive:PiAgent/Videos/ ——這個 Skill 啟動時會讀這個。 |
一個 push_drive.sh 風格的腳本 | 把 rclone copy "$OUTPUT" gdrive: 改成 rclone copy "$OUTPUT" gdrive:PiAgent/Videos/ ——直接,但比較難維護。保留引號,並檢查結束狀態。 |
- Process details · 2 messages · 2 tool calls 預設是收起來的。想看實際跑了什麼、而不只是摘要的時候,把它打開。
- notes.md 出現了兩次:一次在回覆下面的標籤,一次在 EXPLORER 左側清單裡新增的一項。你不用光憑一句話就相信結果。
- 187 in · 57 out · 1,152 cache R · $0.0032 是這次的花費。讀一份 SKILL.md 大概就是這個等級的工作量。
自己動手建那個 Drive 資料夾,不要讓複製動作順便建出來,這樣你才能先檢查它的位置跟分享權限。保留結尾的 / 在三種寫法裡都一樣;用 rclone copy, gdrive:PiAgent/Videos 的話這也是一個目錄路徑,上傳時要順便改檔名需要用 copyto。
copy 是台影印機:只會在目的地加東西,不會動其他的。 sync 是一面鏡子:它會讓目的地跟來源一致,刪掉遠端有、近端沒有的東西。不要為了上傳一個檔案,就把這兩個搞混。
現在跑一次第 11 篇那整條管線。它最後一個階段應該會記錄類似這樣的訊息:
[push_drive] Uploading final.mp4 (42MB) to gdrive:PiAgent/Videos/[push_drive] Transferred: 42.1 MiB / 42.1 MiB, 100%, 3.2 MiB/s[push_drive] Uploaded final.mp4 successfully in 13s接著到 Drive 裡檢查檔案——名稱、大小、播不播得動。看起來成功的 log 那一行不算驗證。在上傳回報成功、 跟 你自己也看到遠端的檔案之前,不要刪掉本地的輸出。
rclone ls gdrive:My videos 這種例子,沒加引號直接貼上去是活不下去的。像 PiAgent/Videos/ 或 Home/Recordings/ 這種純英數字的路徑,打起來比較安全。有一個檔案你該把它當成一把鑰匙
rclone 會把遠端跟它的 token 寫進 /data/pi-agent/rclone/rclone.conf、
[gdrive]type = drivescope = drivetoken = {"access_token":"ya29.a0Af...","token_type":"Bearer","refresh_token":"1//0e...","expiry":"2026-08-14T15:30:00.000000Z"}team_drive = refresh_token 會在不用再問你的情況下,換來新的短效存取 token,這也是它能長效運作的原因。任何拿到這個檔案可用副本的人,都能在授權範圍內存取資料,直到你撤銷授權為止。
/data/pi-agent/ 是持久化的 add-on 資料,這帶來兩個後果。升級會替換掉 add-on 打包的檔案系統,但不會動到 /data/ ,所以重啟或升級 Pi Agent 通常不會讓你被打回去重跑一次 OAuth——先看第 15 篇。而 Home Assistant 備份可以在選了 Pi Agent 且備份成功時,把同一個 /data/打包進去,包括 rclone.conf。還原之後,跑 rclone lsd gdrive: ,加上一次無害的上傳測試,不要假設它就一定能用。
| 情況 | 要重跑一次 OAuth 嗎? |
|---|---|
| Pi Agent 升級或 add-on 重啟 | 正常情況下不用——但事後還是驗證一下這個遠端。 |
| 從驗證過的備份還原,不管同一台機器還是新機器 | 正常情況下不用,前提是 add-on 資料跟有效的 token 都還原回來了。 |
你在 Google Account → Security | 要。那張 token 已經被撤銷了。 |
| 你刪掉了 rclone.conf,又沒有安全的備份 | 要。 |
| Google 因為異常活動或其他安全事件撤銷了它(罕見) | 要,先檢查過帳號最近的安全活動再重跑。 |
Dropbox、OneDrive、S3——或你櫃子裡的 NAS
另一個目的地,就是再跑一次 rclone config、 n 來新增一個遠端,取一個清楚的名字,例如 dropbox, onedrive 或 s3,接著選對應的後端。只有 Storage 步驟之後的問題不一樣:
| 後端 | 它的精靈會問什麼 |
|---|---|
dropbox | 跟 Drive 類似的 OAuth 流程。在沒有瀏覽器的 Home Assistant 主機上,瀏覽器自動設定那題回答 n ,在一台可信任的電腦上完成印出來的授權。 |
onedrive | 你的精靈提供的帳號跟雲端硬碟類型;個人 onedrive.com 帳號跟組織的 Microsoft 365 帳號,選項會不一樣。 |
s3 | 通常是一個 access_key_id 跟 secret_access_key ,不是走 OAuth,加上供應商選項,例如 AWS 或 Cloudflare R2。用 AWS 的話,透過 IAM 建立最小權限的憑證——絕對不要用帳號根權限的憑證。 |
sftp, smb, webdav | 看你的 Synology、QNAP 或 TrueNAS 設定開放哪一種。本地傳輸通常比較快、也不佔雲端額度,但一樣需要驗證跟存取控管,而且如果 NAS 上放的是唯一一份,它自己也需要備份。 |
在真正依賴它之前,先測試那個確切的遠端: rclone lsd dropbox:,再做一次無害的上傳測試,跟 Drive 那次一樣。確認過之後,才把 Skill 的目的地從 gdrive: 改成 dropbox:, onedrive: 或 s3:mybucket/。
你可以同時保留好幾個遠端:一個 Skill 腳本可以跑 rclone copy final.mp4 gdrive:PiAgent/Videos/ 跟 rclone copy final.mp4 dropbox:PiAgent/Videos/。每次傳輸各自消耗自己供應商的額度,也可能各自獨立失敗,所以在宣告成功或刪掉本地來源之前,兩邊的結束狀態跟遠端檔案都要檢查。有兩份副本是備援,不是備份策略——備份策略還需要保留規則跟驗證過的復原流程。
真正會讓人卡住的地方
| 症狀 | 該怎麼處理 |
|---|---|
| 授權那一行被截斷了,或瀏覽器把它當成搜尋 | 一個比較舊的網址長達 200-400 個字元,而一個 rclone authorize 指令可能更長;少一個字元整個流程就斷了。在 Advanced SSH Web UI 裡三擊整行選取,按 Ctrl+C。貼到網址列,不是搜尋欄;在手機上,用「貼上並前往」。 |
| 「Google hasn't verified this app」 | 在未驗證或測試中的 OAuth client 上出現是正常的,但這不代表這個畫面就安全:照著精靈登入那一步的四項檢查走一遍,再點 Advanced → Continue to rclone。任何不熟悉的東西,取消。你自己的 client_id 不會自動讓這個警告消失:同意畫面跟測試使用者也得一併設定好,更大範圍的公開使用可能還需要 Google 的驗證。 |
| 上傳失敗,顯示額度超過 | 標準 Google 帳號通常有 15 GB,Drive、Gmail、Photos 共用;先查你自己的額度。接著清掉不需要的檔案,包括很大的 Gmail 附件;或改用 Dropbox、OneDrive;或查一下你所在國家目前的價格再買容量——這篇寫成時的參考價位大約是 100 GB 一年台幣 700 元、200 GB 台幣 900 元,S3 或 R2 每 GB 幾分錢,但價格會變動。如果這個 Skill 支援清理,只在結束狀態成功、你自己也檢查過遠端檔案之後,才讓它刪掉本地的輸出。 |
| 好幾個月沒用之後出現 401 | Refresh token 是長效的,不是永久的:撤銷、OAuth client 變更、某些政策下長時間閒置,或帳號安全性動作,都可能讓它失效,出現 oauth2: token expired 或 401 Unauthorized。檢查一下 Google 帳號的安全活動,接著跑 rclone config reconnect gdrive: ,在 Pi Agent 容器裡完成無頭流程。這會更新 rclone.conf 裡的 token。 |
rclone lsd 很慢,或看起來像卡住了 |
rclone lsd gdrive: -vv 能分辨是網路重試,還是單純清單很大:一個有幾萬筆項目的根目錄,跑個幾十秒是正常的。 ping accounts.google.com 能揭露明顯的連線問題,但證明不了 API 本身,因為很多服務會刻意降低 ping 的優先度。重啟有問題的路由器可能有幫助;把 DNS 換成 8.8.8.8 不是萬用解法,要符合你自己的隱私跟網路政策。如果資料夾存在, rclone lsd gdrive:PiAgent/ 能縮小清單範圍。 |
docker exec 沒有改變提示符號,或 rclone 還是找不到 |
這個指令可能失敗了、進錯容器了,或被 SSH add-on 的權限擋住了。跑 docker ps --format '{{.Names}}' | grep pi_agent 確認精確的名稱,例如 addon_b9cf5676_woow_ha_pi_agent。如果 Home Assistant CLI 存在的話, ha addons info <your-slug> 能給你 add-on 的中繼資料,但不會讓你進入容器。不要瞎猜 Podman 或 Docker 的指令;如果管理指令一直用不了,就改用 add-on 自己的 web terminal,但只有在它的 Info 頁面有提供時才這麼做。 |
| 影片做完了,但 push_drive 從沒跑過 | 三種可能:你的設定跟那個確切 Skill 版本的文件對不上;這個 Skill 不認得 upload_to ,而且是自動上傳功能出現之前的版本,讀它的 CHANGELOG,照它記載的升級路徑走,不要直接從 GitHub 拉檔案;或者 push_drive.sh 在 rclone 前置檢查失敗後跳過了那個階段。在改動任何設定之前,先讀完整份執行 log。 |
| OneDrive 拒絕了一個 Drive 接受的檔名 | OneDrive 對某些字元比較嚴格,例如 、 ? * < > |。rclone 通常會把後端存不了的字元編碼過去,但結果取決於後端跟它的編碼設定。 --onedrive-server-side-across-configs 管的是 OneDrive 設定之間的伺服器端操作;它修不了無效的檔名,所以不要為這個問題加上它。「客廳:先開燈?」這種檔名,傳輸起來遠不如 living_room_lights_20260814.mp4。 |
這時候大家常問的問題
有人拿到我的 token 了,現在該怎麼辦?
Google Account → Security → Your connections to third-party apps and services,選 rclone,移除它的存取權:這會撤銷外洩的授權。接著跑 rclone config reconnect gdrive: ,在 Pi Agent 容器裡換一張新的 token。檢查最近的安全活動,看有沒有陌生的裝置、地點或 IP 位址,如果外洩的備份裡也有 rclone.conf,把裡面每一組憑證都輪替一遍。一定要用 Google Drive 嗎?
這會吃光我家的網路頻寬嗎?
--bwlimit 5M 到 Skill 文件記載的 rclone 指令設定裡,把速度限制在大約 5 MiB/s;把上傳排到半夜;如果 Wi-Fi 不穩,讓主機改用有線網路。上傳流量會計入 ISP 的任何數據上限。檔案只會佔用一次 Drive 的儲存空間;Google 不會因為傳輸而重複扣你的額度。兩套 Home Assistant 系統能共用同一份 rclone 設定嗎?
/data/pi-agent/rclone/rclone.conf 從系統 A 複製到系統 B 的同一個路徑,用 scp 或合適的 Home Assistant 檔案管理工具,並把這份複製當成一組憑證來保護;之後兩邊就會共用同一組 refresh token 跟帳號。要防止衝突:如果兩台主機都把 final.mp4 傳到同一個資料夾,後傳的會覆蓋先傳的。在 Skill 的檔名規則裡加上各自主機的名字—— final_hostA.mp4, final_hostB.mp4 ——或改用各自獨立的目的地,例如 gdrive:PiAgent/HouseA/ 跟 gdrive:PiAgent/HouseB/。能不能直接手動編輯 rclone.conf?
scope 這類設定是可以編輯的——但改動 drive 改成 drive.file 不會縮小一張已經發出的 token 的範圍;要重新連接這個遠端,授權新的範圍。 team_drive 跟 root_folder_id 也都可以編輯,而 root_folder_id 會把一個遠端的根目錄設在某個 Drive 資料夾。不要手動編輯 token:它是敏感的 JSON,很容易改壞,改壞了反正還是得重新連接。跑 cp rclone.conf rclone.conf.bak 先做這個,而且不要把這份憑證的副本留在任何公開能存取的地方。它每次都會把所有東西重新上傳一遍嗎?
rclone copy 會跳過沒變動的檔案,通常是比對大小跟修改時間;加上 --checksum ,如果兩端都支援雜湊值的話。 rclone sync 是上面講的那個鏡像同步指令,第一次跑之前一定要先用 --dry-run。Pi Agent 的 push_drive.sh 通常用 copy,不用 sync,避免刪掉任何東西。能把 token 搬到另一台機器上全新的 Pi Agent 嗎?
/data/pi-agent/ 存在,接著安全地把舊系統的 /data/pi-agent/rclone/rclone.conf 複製過去,並測試這個遠端。或者在舊系統上做一次只選了 Pi Agent add-on 的部分備份,還原到新系統上:機制跟完整備份一樣,只是項目少一點。不管哪種方式,這些內容可能還包含 API 金鑰跟 Session 紀錄,記得加密保護。接下來往哪走
你剛建立了一組憑證。第 14 篇要講的是怎麼不弄丟它。
你的 API 金鑰、你的 session 紀錄,還有你剛做出來的這張 token,能不能撐過一張壞掉的 SD 卡,就看這個。第 14 篇要講 Home Assistant 備份包含什麼,還原之後又該驗證什麼。
打開完整教學手冊《Pi Agent 入住指南》系列第 13 篇,由 WoowTech 渥屋科技 製作。
內容出自 Woow HA Pi Agent 入住指南,依 CC BY 4.0 釋出。
The Smart Space Solution · 智慧空間解決方案 · © 2026 WOOW Technology Co., Ltd.