最近有少數用戶發現,開啟Cydia就直接跳出資料庫(Data)出錯,顯示「could not open file /var/lib/dpkg/status – open (2 no such file or directory)…」紅字或「flAbsPath on /var/lib/dpkg/status failed -realpath (2 no such file or directory)」黃字錯誤,根據上面看來是/var/lib整個資料夾都消失,造成這樣問題用戶可在有安裝OpenSSH前提下還能透過底下這方法救回。
錯誤現象
- Cydia開啟就顯示「could not open file /var/lib/dpkg/status – open (2 no such file or directory)…」紅字錯誤
- Cydia開啟就顯示「flAbsPath on /var/lib/dpkg/status failed -realpath (2 no such file or directory)」黃字錯誤
- 軟體源內所有來源內的套件全變成空白
- 變更內容全空白
- 已安裝內全空白
- 搜尋不到任何插件
分析原因
會造成這樣問題,最主要是越獄用戶自己去點到「設定」>「一般」>「重置」>「清除所有內容和設定」所引起,先前就一直不段的在提醒越獄用戶請不要點到這項越獄禁忌功能,避免導致iOS造成白蘋果,不過新版iOS9.2-9.3.3 以後的非完美越獄是不會導致白蘋果,因為系統分區資料並沒有搬移,導致還是可正常進入系統,不過這個小動作就是會造成越獄檔案破壞,造成Cydia的資料夾/var/lib 和 /var/log/apt整個被刪除,開啟時自然就無法找到該資料夾檔案,造成出錯問題發生。
AFC2也失靈?
先前有裝Apple File Conduit “2″為何沒有反應?由於AFC2也是要依賴Cydia Substrate,而且新版本Cydia Substrate也都是搬移至用戶區中,在點下清除所有內容和設定時,依賴Cydia Substrate也同時被清除,就會導致任何插件連同AFC2也一併全失靈,不過OpenSSH就不需要依賴Cydia Substrate執行,也是直接安裝在系統文件區域中也不會遭受到清除問題。
如果是 iOS 11~iOS 11.1.2越獄用戶,建議可以看另一篇解決
如果是iOS 10~iOS 10.2越獄用戶,建議可看另一篇解決方法
完美解決方法(有OpenSSH)
如果您先前有安裝好Open SSH,如果是iOS 11越獄用戶都會內建OpenSSH,這是最後一道解救辦法,可以再將「/var/lib」資料夾覆蓋回去,後面就來教大家如何解決此問題。如果沒裝OpenSSH用戶,請繼續下拉看教學。
- 下載iFunbox:http://www.i-funbox.com/index.html
- 準備一台WIN、MAC電腦
- 傳輸線
Step 1. ▼ 安裝iFunbox後點透過USB接上設備,點選「快速工具箱」>「SSH 終端機」。
Step 2. ▼ 看目前透過USB通道的IP位置與連接埠。
- 下載Winscp工具:免安裝中文化包
Step 3. ▼ 下載後請按右鍵解壓縮出來,開啟winscp.exe,輸入主機IP位置、連接埠、使用者(root)、密碼(預設為alpine),如果SHSH密碼有修改過請自行更改輸入,最後點下「儲存」。
Step 4. ▼ 點選「確認」即可。
Step 5. ▼ 就可直接「登入」,主要這樣做是為了下次可以直接登入,就不需要再重複打一次。
- 如果忘記當初改的密碼,請透過「這篇教學解決」。
Step 6. ▼ 再登入之時,會跳出加入主機金鑰快取警告,點選「是」繼續。
var.lib.apt.tar :解救包下載
Step 7. ▼ 就能夠順利透過電腦連入設備內,右側區塊就是越獄資料夾檔案,請下載上面提供的「var.lib.apt.tar」壓縮檔案,並直接拉入至越獄資料夾內。
Step 8. ▼ 在winscp內點選「var.lib.apt-mrmad.com.tw.tar」右鍵,選擇「File Custom Commands」>「輸入…」。
Step 9. ▼ 自訂命令中請打入底下的指令,怕打錯建議直接複製、貼上,避免輸入錯誤,並將「在終端機顯示結果」勾選起來,最後點下「確定」即可。
tar -xpvf ! -C /
Step 10. ▼ 會跳出你想要開啟分開的shell期間嗎?點選「確定」繼續。
Step 11. ▼ 最後會顯示終端機控制台視窗,點「關閉」即可。
最後將Cydia完整關閉,點HOME鍵兩下將Cydia關閉,重新開啟Cydia是否就能正常運作了呢?
完美解決方法(無OpenSSH)
如果你是沒有裝OpenSSH用戶也不用太擔心,還是可透過底下這些方法來修復Cydia。
- 下載iFunbox:http://www.i-funbox.com/index.html
- 準備一台WIN、MAC電腦
- 傳輸線
- 下載修復檔(下載 cydia-fix )
Step 1. 開啟 iFunbox 軟體,並透過連上設備。
Step 2. 將修復檔 Cydia-fix 解壓開來,會看見「lib資料夾」與 MobileTerminal.ipa 檔案。
Step 3. 將「lib資料夾」拉入 iFunbox 內的 iBooks 目錄內。
Step 4. 下載 Cydia Impactor 工具(由Cydia 之父Saruik推出製作),開啟 Cydia Impactor 將 MobileTerminal.ipa 檔案拉入即可安裝,操作方法與裝越獄工具相同方式。(教學)
Step 5. 最後別忘記要到「設定」>「一般」>「裝置管理」內,點選認證(email顯示可能會不同)進入,會跳出詢問窗口點擊「信任」,桌面上的 MobileTerminal App才能正常運作。
Step 6. 開啟 MobileTerminal App ,並輸入底下的指令碼
- 先輸入
su
- 會要求輸入 root 密碼,如果沒有改過預設就是底下這密碼
alpine
- 最後會顯示 “/var/mobile root#” 表示就是進入 root 模式中,並繼續輸入底下兩行指令,即可將 Cydia 修復完成
cp -R /var/mobile/Media/Books/lib /var mkdir /var/log/apt
最後將Cydia完整關閉,點HOME鍵兩下將Cydia關閉,重新開啟Cydia是否就能正常運作了呢?
喜歡這篇文章教學,後續想了解更多Apple資訊、iPhone、Mac、3C隱藏技巧,歡迎追蹤 瘋先生FB粉絲團、瘋先生LINE@、訂閱瘋先生Google新聞、Telegram、Instagram以及 訂閱YouTube頻道,將會有更多非常實用的技巧教學分享給大家。
留言功能已關閉。