Bucket & Code Server IDE 中的備份
備份頁面(管理員)會依排程,將設定、帳戶、每個儲存庫及您的工作複製到您選擇的目標,並依保留設定移除較舊的副本。還原可以放回全部內容,也可以只還原一個儲存庫或一個專案資料夾。
- 內容要勾選什麼
- 排程開啟前預設關閉
- 目標資料夾、rsync、rclone
- 加密密鑰,只顯示一次
- 還原全部,或其中一部分
新安裝尚無備份,因此執行清單、還原對話框與密鑰都取自面板的測試資料。其中每個金鑰都只是範例。
01備份內容
每次執行都會在資料目錄建立一個資料夾 backups/<id>/,其中有一個 manifest.json,逐一列出每個檔案的 sha256。在 備份包含的內容 下勾選要備份的項目。
| 項目 | 複製的內容 |
|---|---|
| 設定與帳戶 | 設定、帳戶及其兩步驟驗證密鑰、TLS 金鑰、備份金鑰 |
| Git | Forgejo 的傾印檔:儲存庫、wiki、LFS 物件、附件及其資料庫 |
| SVN 儲存庫、儲存桶 | 每個儲存庫;已複製過的修訂版本不會再複製 |
| VS Code 設定和擴充功能清單 | 每個帳戶自己的設定及其擴充功能清單 |
| 環境 | 預設關閉,因為可以重新建立 |
| 無論是否勾選都會備份 | 專案資料夾(不含 node_modules)、HOME 資料夾、App Builder 應用程式的設定與套件儲存庫 |
02排程與保留的副本
- 開啟 排程備份。新安裝時此功能預設關閉,因此只有按下立即備份才會執行備份。
- 將 排程 保留為
@daily(每天 00:00),或輸入五個 cron 欄位。下方的方塊會以 NAS 的時區列出接下來幾次的執行時間。 - 保留的副本:過去 7 天的每一天、4 週的每一週與 6 個月的每個月,各保留最新的一次執行;最新的成功執行也一定保留。接著按下 儲存備份設定。
若 NAS 在排程時間關機,錯過的備份會在套件啟動 10 分鐘後執行。
03副本存放位置
每次執行都會先寫入資料目錄,再複製到每個目標。按下 新增目標 並選擇其 類型;儲存之前,可以按 測試 試試這個目標。
- 本機資料夾:本 NAS 上的資料夾,例如
/share/Backup/BucketVS(選擇 會瀏覽共用資料夾)。每份副本只占用變更部分的空間。這份副本不加密,而且和資料放在同一組磁碟上,所以能防範操作失誤,卻防不了整台 NAS 的損失。
- 透過 SSH 的 rsync:另一台機器上的
user@host:path。勾選 使用套件的備份金鑰登入 後,請將頁面顯示的那一行加入該帳號的~/.ssh/authorized_keys。
- rclone 遠端:
remote:path,即資料目錄etc/rclone.conf中定義的遠端,例如 S3、B2、SFTP、WebDAV 或 Google Drive。
某個目標失敗時,執行結果會指出它,但這次執行本身仍算成功。
04加密離開 NAS 的內容
備份包含備份金鑰、rclone.conf、TLS 金鑰與兩步驟驗證的密鑰,因此頁面只有在開啟加密時才會儲存 rsync 或 rclone 目標。
- 開啟 加密離開 NAS 的副本 並按下 建立金鑰。

- 複製對話框顯示的私密金鑰,並將它存放在此 NAS 以外的地方。它只顯示這一次:bvsd 會保留公開的一半,若沒有私密的一半,任何 NAS(包括這一台)都無法還原加密副本。按下 我已妥善保存,然後按下 儲存備份設定。

副本以 age 加密。建立新金鑰後,之後的執行都用新金鑰加密,較舊的副本仍需要舊的私密金鑰。本機資料夾的副本則永遠不加密。
05立即備份
頁面頂部的 立即備份 會立刻開始一次執行。
同一天的兩次執行只算一次:較新的執行完成時,當天較早的執行會被移除。因此下午的 立即備份 會取代當天早上的排程執行。若早上那次的狀態很重要,請先將該次執行複製到其他地方。
06驗證與還原
執行 列表會顯示每次執行及其副本。執行列中的按鈕為 驗證、還原 與 刪除。驗證 會把執行內容讀回檢查:每個封存檔比對其 sha256、每份 SVN 副本執行 svnadmin verify,並對 Git 執行 git fsck 且檢查 Forgejo 的資料庫。
還原 會還原 全部、一個 Git 儲存庫、一個 SVN 儲存庫、一個 Bucket 或 一個專案資料夾。
- 在該次執行的副本通過檢查之前,NAS 上的任何內容都不會變更;若有副本檢查失敗,還原就會停止。
- 還原所取代的內容會移到資料目錄的垃圾桶中保留 7 天,因此還原可以復原。VS Code 設定檔與應用程式的設定是例外:它們會被直接取代,垃圾桶中不會留下副本。
- 還原單一儲存庫或單一專案資料夾時,模組會繼續執行。
- 還原 全部 前,系統會要求您先勾選 我了解還原的資料將回到 … 備份時的狀態。還原會停止各模組;若備份包含設定,bvsd 會以這些設定重新啟動,所有工作階段都會結束,包括您的。備份之後才建立的專案或 HOME 資料夾會保留。