資料遷移操作指南
本頁介紹資料目錄遷移的實際操作。技術實作見基礎實作。
尋找應用程式關聯的資料目錄
- 在 AppPorts 主視窗切換到「資料目錄」標籤。
- 頂部在「工具目錄 / 應用程式資料」之間切換。
- 檢視應用程式資料時,在左側選一個應用程式,右側列出它在
~/Library/下關聯的目錄。
AppPorts 按應用程式的 Bundle ID 或名稱比對下面這些位置:
| 掃描路徑 | 比對方式 | 遷移方式 |
|---|---|---|
~/Library/Application Support/ | Bundle ID 或應用程式名稱 | 符號連結 |
~/Library/Preferences/ | Bundle ID 或應用程式名稱 | 符號連結 |
~/Library/Containers/ | Bundle ID | 掛載遷移 |
~/Library/Group Containers/ | Bundle ID | 掛載遷移 |
~/Library/Caches/ | Bundle ID 或應用程式名稱 | 符號連結 |
~/Library/WebKit/ | Bundle ID | 符號連結 |
~/Library/HTTPStorages/ | Bundle ID | 符號連結 |
~/Library/Application Scripts/ | Bundle ID | 符號連結 |
~/Library/Logs/ | 應用程式名稱 | 符號連結 |
~/Library/Saved Application State/ | 應用程式名稱 | 符號連結 |
容器目錄為什麼不同,見掛載遷移。
工具目錄
AppPorts 會辨識常見開發工具在使用者目錄下建的目錄(~/.npm、~/.gradle 等):
- 在「資料目錄」標籤中切換到「工具目錄」。
- 清單顯示已辨識的目錄、大小、優先順序和狀態。
本機目錄不存在、但外接磁碟的規範位置還有 AppPorts 管理的目錄時,顯示為「待接回」。支援清單見工具目錄辨識。
目錄遷移(自訂資料夾)
「目錄遷移」標籤用於遷移使用者目錄下的任意資料夾,適合大型專案、模型、素材庫。
- 切換到「目錄遷移」。
- 按一下「本地資料夾」標題欄的「+」。
- 選本機資料夾,再選外接磁碟上的目標根目錄。目標是
目标根目录/文件夹名。
驗證規則:本機資料夾必須在使用者目錄下且不能是使用者目錄本身;路徑及其上級不能是符號連結;不能與已管理的目錄互相包含;外部目標不能在使用者目錄內,也不能與本機資料夾互相包含。
遷移後本機面板顯示原路徑狀態,外部面板顯示副本狀態,可執行「接回」或「還原」。移除設定只刪除記錄,不刪除資料。
符號連結遷移
適用於容器之外的所有目錄。
- 找到目錄,按一下「遷移」。
- AppPorts 複製到外接磁碟,寫入管理標記,把原目錄改名為安全備份,在原路徑建符號連結,最後清理備份。
- 遷移完成後狀態變為「已連結」。
遷移後重簽名
資料目錄頁頂部有「遷移后重签名」開關,預設關。開啟後,遷移完成會對關聯應用程式執行 Ad-hoc 重簽名,只用於處理遷移後彈「已損壞」的情況;沙盒應用程式會跳過。通常不需要開,詳見重簽名與當機防護。
掛載遷移
適用於 Containers 和 Group Containers 下的目錄,按鈕顯示為「掛載遷移」。
- 確認外接磁碟是 APFS,退出關聯應用程式。
- 按一下「掛載遷移」,看清確認對話框中的三條提示後繼續。
- AppPorts 在外接磁碟建立一個卷宗,複製資料,把卷宗掛到原目錄上。
- 完成後狀態為「已掛載」。第一次開啟應用程式時系統彈授權對話框,按一下允許。
完整說明見掛載遷移。
還原
符號連結遷移的目錄(狀態「已連結」):按一下「還原」,AppPorts 把資料複製回本機,刪除符號連結,再刪除外接磁碟副本。
掛載遷移的目錄(狀態「已掛載」或「待掛載」):按一下「還原」,AppPorts 把卷宗上的資料複製回本機,卸載並刪除卷宗。外接磁碟需保持連接。
兩種還原都先複製、後切換,中途失敗不會丟資料。
處理異常狀態
| 狀態 | 意義 | 操作 |
|---|---|---|
| 待規範 | AppPorts 管理的連結,但外部路徑不在規範位置 | 「整理」,把外部資料移到規範路徑並重建連結 |
| 待接回 | 外接磁碟上的資料還在,本機連結丟了 | 「接回」,重建符號連結 |
| 現有軟連結 | 不是 AppPorts 建的符號連結 | 「連結詳情」,可選擇納入管理 |
| 待掛載 | 掛載遷移的卷宗線上但沒掛上 | 「掛載」 |
| 外接磁碟未連接 | 找不到掛載遷移的資料卷宗 | 連上外接磁碟,AppPorts 會自動接回 |
接回和整理只對目錄有效;外部目標被一般檔案佔用時 AppPorts 會停下並保留那個檔案。
日誌上下文
資料目錄操作的日誌會帶上關聯應用程式的資訊,便於診斷:
| 欄位 | 說明 |
|---|---|
app_name | 關聯應用程式名稱 |
app_status | 應用程式狀態 |
app_is_resigned | 應用程式是否已被重簽名 |
app_bundle_id | 真實應用程式的 Bundle ID |
app_real_path | 真實應用程式路徑 |
掛載遷移的操作還會記錄卷宗名稱、Volume UUID 和 diskutil 命令的輸出。
樹狀檢視
包含子目錄的資料目錄以樹狀顯示:父目錄左側有展開箭頭,子目錄縮排,每個節點獨立顯示大小、狀態和操作按鈕。
