[知識] iOS 中一些重要路徑

因為自己 iPhone 從上次備份還原後,iCloud 設定頁面登出按了就是沒反應,加上一堆系統不乾淨造成的神秘 bug,在這次重置 iPhone 時,透過提取 iTunes 備份檔手動還原各種 App (含系統層級的 App) 至 iPhone 上,也順便寫了這篇記錄一下 iOS 中常用到的路徑

那為什麼要這樣做呢?因為這些檔案往往是僅能透過 iTunes 備份而 iCloud 不備份的紀錄,如果今天你的 iTunes 前次備份很髒亂,就會想這樣手動還原了。
而通常可以如此方式瀏覽 iPhone 根目錄及各個系統層檔案夾往往是透過 Apple File Conduit 2、SSH、iFile、Filza 或者 FilzaJailed,當然一切大前提下都是越獄後的成果。

以 iOS 11.3.1 測試:

系統相關

一般系統 App 相關

往往都是在這資料夾下層:

通話記錄 CallHistory

iMessage 及簡訊

Health Kit 資料 (備份需加密)

Home Kit 設定

iCloud Drive

Safari 相關

Watch OS 備份

其實只是幾個 plist 設定,非常輕量

將整個資料夾覆蓋後改至對應的權限即可

一般權限下可瀏覽的 User Folder

媒體類

相機膠卷

非常肥大的兩個地方XD

語音備忘錄

一般 App 記錄檔

從 iOS 8 之後就更改至這新位置囉,不過我目前還是沒研究出怎麼從 hash 名稱資料夾找出對應 App 的方法

想看進一步教學可以察看:[教學] iOS 手動轉移 Walkr 紀錄及 Line 簡訊 (備份還原 App)

AppGroups

Cydia 相關

Tweak 設定

Dylib Path

Deb path (Electra JB)

而 Cydia 安裝 Packages 後其實會將 deb 下載至一個暫存路徑再進行安裝:

Cydia 設定 (包含軟體源)

還原步驟

大概把以上這些備份起來,再加上其他 App 的資料就可以構成一個蠻完整的備份了 (你還可以擺脫噁心的系統垃圾和 bug。)
那從 iTunes 備份提取這些資料 (可透過 iMazing 之類的 App 或者直接檢視 ~/Library/Application\ Support/MobileSync/Backup/ 來獲取) 之後,該如何還原呢?

1.提取資料
2.透過 ssh 等有寫入權限的方式還原至手機上的對應資料夾
3.將還原後的資料夾更改至正確的權限 ( 755 及 mobile ),例如這個範例是 /var/mobile/Media/DCIM/

4.如果有遇到擁有 db 資料庫類的資料,記得刪除 .db-shm 跟 .db-wal 的快取檔案 (可參考:皮樂姐姐的文章
5. iMessage 需要 reboot,其他都可以直接關閉 App (後台)重開就可以生效了

另外 Respring 的指令是:

本篇僅供學術研究使用(疑?)

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料