相信喜歡折騰iPhone的果粉,對下面2張圖並不陌生,下面兩張圖就是我們在折騰iPhone時可能會遇到的情況。
注:
左圖是恢復模式時的界面,和DFU模式有點不同。開機如果直接顯示該界面,說明機子可能因刷機或其它原因進入恢復模式,無法正常退出。在此情況,一般需要用一些工具(如紅雪,小雨傘等工具)來將機子踢出該模式。
右圖為蘋果的logo,俗稱白蘋果,正常開機的話,加載時間只有幾分鍾,如果開機過程中卡在白蘋果界面的話,一直都進不了主屏幕,那么便是機器白蘋果了。
遇見上述情況的話,最常見的解決方法就是通過刷機了,但是刷機的話,手機里面的現有數據如照片短信聯系人還有程序備份等重要數據將會全部丟失,如果有用iTunes備份的習慣,還可以從備份中恢復一部分數據,因為很少有人每天都用iTunes備份。如果沒有iTunes備份的話,那就真的無力回天了?
經過百度,Google搜索后,終於找到了無iTunes備份解決方案,那就是利用SSHDFU模式下備份iPhone數據,原理就是將手機進入DFU模式,然后通過工具建立SSH通道,最后使用SSH客戶端將數據備份。下面將詳細介紹如何建立SSH通道,如何使用SSH客戶端傳輸數據等。
使用環境及工具列表
- Java6運行環境,JRE6Update37:網盤下載
- ssh_rd_rev04a:網盤下載
- 退出恢復模式工具Exit_Recovery_Mode.zip:網盤下載
- Putty:官方下載 網盤下載
- Winscp:官方下載 網盤下載
教程開始
* Step1,將手機進入DFU模式;
- 如何進入DFU模式,如果手機還在白蘋果,同時按下HOME+POWER直至屏幕變黑。然后按住POWER鍵,松開HOME鍵,出現白蘋果的時候,再同時按下HOME鍵,開始默數,正常的話手機屏幕會再次變黑,當數到10的時候,保持HOME鍵按住,松開POWER鍵,再默數15下。基本上都可以進入DFU模式。
* Step2,利用ssh_rd_rev04a.jar工具虛擬個ramdisk,用來建立和iPhone連接的SSH通道,並獲取登錄用戶名和密碼;
-
這里要注意,ssh_rd_rev04a.jar是java的可執行文件,所以該工具正常運行的前提是您的電腦已經正常安裝JRE(Java Runtime Environment),即java運行環境。
-
打開ssh_rd_rev04a.jar,啟動正常后會出現如下窗口:
-
如果提示“Connect a device in DFU mode”,即請連接DFU模式的iDevice。這里的iDevice指的是iPhone,iPod等蘋果產品。如果出現其它提示,比如:
注意上圖中紅色框內的內容,錯誤提示是1.要求安裝iTunes9或更新版本,以及2.無法綁定2202端口。但很大可能是您的java版本過新,不被該工具支持。解決方法,除了確認iTunes版本是9以上外,將電腦上的jre卸載掉,然后在文章開頭下載jre6,並安裝。安裝后,再重新打開ssh_rd_rev04a.jar工具,應該就可以正常運行了。
-
將已進入DFU模式的iPhone連接到電腦,該工具會自動識別並加載,我們所需要的只是安靜等待而已,工具窗口內不斷更新進度信息。過幾分鍾一切就緒后,工具顯示為:
注意上圖紅色部分中的登錄名及密碼
login:root 即登錄名
password:alpine 即密碼
如果手機有越獄並修改過root密碼的話,密碼處顯示的可能會不一樣 -
數據線一頭的手機上則顯示為刷機界面,不過和刷機不一樣,白蘋果下方的進度條始終處於初始狀態,且在數據拷貝過程中始終沒有發生變化。
* Step3,利用putty加載iPhone文件夾
- 保持ssh工具打開,然后打開putty,來建立個ssh連接。在如下位置填入:
- Host Name: 127.0.0.1
- Port: 2022
-
Connection type: SSH
-
點擊“Open”會彈出一個命令行窗口,並顯示:
login as:
提示輸入用戶名,此處請填入用戶名,也就是root,回車后提示輸入密碼,請輸入在ssh工具中顯示的密碼,默認為alpine。命令行窗口顯示:
-
在光標處,輸入命令: mount.sh 回車后,顯示將disk0s1s1及disk0s1s2分別加載到mnt1和mnt2:
* Step4,使用Winscp來備份數據;
-
接下來,我們用winscp再來復制數據。Winscp是Windows系統下常用的SSH圖形化客戶端。圖形化界面使得在操作上相當方便。打開winscp,在出現的窗口中再次輸入Host name, port, username和password。
-
暫且先不點擊Login,建議再設置下文件名的編碼。點擊左邊菜單里里面的“Environment”選項,在右邊的“UTF-8 encoding for filenames”的下拉菜單里面選擇“On”,然后點擊Login進行連接。這點比較重要,如果您的iPhone設置為中文語言環境,那么一些程序的數據可能存在以中文名命名,沒有設置文件名編碼的話,這些中文文件名的數據將無法被winscp正常識別,導致數據傳輸時出現無法找到該文件的錯誤。
-
設置完后點擊Login,winscp會自動連接iPhone,連接成功后出現如下窗口:
-
窗口的左下部是本地文件夾,右下部默認打開“/private/var”,在上圖的下拉菜單中可以打開其它文件夾,圖形化界面的操作比較簡單,這里就不多介紹了。這里主要的要注意mnt1和mnt這2個文件夾,mnt1主要保存着和系統相關的文件和設置等,常用的相片,視頻,信息,聯系人,還有各個程序的數據都是保存在/mnt2/mobile里面。系統自帶的程序保存文件夾如:
/mnt2/mobile/Media/DCIM/: 照片
/mnt2/mobile/Media/Recordings/:語言備忘錄
/mnt2/mobile/Library/AddressBook/:聯系人
/mnt2/mobile/Library/SMS/:短信
/mnt2/mobile/Library/Notes/:備忘錄
用戶自行安裝的程序是在/mnt2/mobile/Applications/下面,該文件夾下面的每個文件夾代表一個已安裝的程序,文件夾的名字都是由一串字母和數字以及橫桿組成的程序ID。如:
/mnt2/mobile/Applications/15F42897-C562-4466-8DAD-5201C40DBFDE
程序文件的數據一般都保存在該程序文件夾下面的/Documents/子文件夾下面。
將上述文件夾拷貝到本地電腦就可以完成數據備份。已備份照片為例,介紹下如何使用winscp進行數據備份。打開/mnt2/mobile/Media,選中DCIM,在右單擊彈出的菜單內選擇Download
然后會提示文件的保存位置
輸入保存文件夾后,點擊OK就開始下載數據到指定的文件夾內。等待數據備份操作完畢
* Step5,備份完畢后,重啟手機。
這時就可以重新刷機了,不然就是一部磚頭。