共计 2771 个字符,预计需要花费 7 分钟才能阅读完成。
下述內容主要轉自 不懂这个别说是刷机高手! 安卓 Recovery 你知多少 單純搬運過來轉成繁體,作為一個備份。
安卓 Recovery:它到底是什麼
熟悉安卓系統的朋友都知道,Google 官方發佈的安卓系統完整鏡像包含著數個 img 文件,其中就有 reocvery.img。按照官方步驟進行刷機的時候,安卓鏡像的數個 img 文件會被寫入安卓機中不同的分區,例如安卓系統主體會被寫入 System 分區,Recovery 也擁有自己獨立的分區。實際上,Recovery 無需安卓系統主體,也可以獨立運行。從這方面來看,Recovery 很像是一個微型的操作系統。
這是手機廠商預裝的 Recovery 的界面,刷機前一般會先把 Recovery 更換成第三方
實際上,Recovery 的定位的確很類似 PC 平臺的 WinPE。它本質上是一個非常精簡的 Linux,用以讀寫 System 分區(安卓系統主體)、Boot 分區(內核)的內容。為什麼刷機需要先刷 Recovery?因為用 Recovery 改寫 System 分區是極為方便的。儘管 Fastboot 也可以改寫 System 分區,但這往往需要連接電腦、利用 adb 來進行,比較麻煩。例如使用 Fastboot 來 root 手機,需要在電腦上輸入複雜的命令行,而使用 Recovery 來 root 就只需要點選相應是 su 文件,然後刷入 System 分區即可。
安卓 Recovery:它到底可以做什麼
很多朋友都用過 WinPE,WinPE 能幹的事情令人印象深刻。當系統掛掉或者需要調校系統的時候,引導進入 WinPE,可以自由管理電腦中的文件,運行一些工具,對系統進行備份、修改乃至重裝。Recovery 在安卓中乾的事情,和 WinPE 也非常相似。
Recovery 的本職工作就如其名字一樣,是“重置”。Recovery 首先可以對安卓系統進行各種重置,例如清除 Cache、Data 等等,也就是刷級玩家常說的“Wipe”。但是,如果要徹底重置系統,還是需要重新刷入 System 相關文件才能實現。
使用 TWRP 進行 Wipe 的界面
Recovery 可以修改 System 分區,玩家可以藉此實現很多功能。例如前文說過的 root,root 的本質是用第三方 su 替換掉系統 su,從而實現提權,正統的 root 方法就是手動把相應的文件從 Recovery 中刷入 System。又例如可以利用 Recovery 清除系統預裝 App,預裝 App 一般被寫到了 System 分區中,尋常方法難以更改,如果 Recovery 帶有文件管理器,那麼刪除預裝的 App 就成為了輕而易舉的事情。
使用 TWRP 在 System 分區刷入 zip 包
除了這些功能外,一些強大的第三方 Recovery 還擁有掛載系統儲存、解壓縮、備份系統、編輯系統文件(如 host、build.prop)等。不過,官方的 Recovery 一般都不會去做這麼多功能,多數的官方 Recovery 只提供了重置系統(Wipe)和升級系統的功能。這是可以理解的,對普羅大眾開放太多的高級功能,有概率會把系統玩壞或造成數據丟失。其中,利用官方 Recovery 進行升級,可能是最實用的功能之一。
這是原生安卓官方的 Recovery,沒有什麼功能,非常簡陋
以 Google 官方的原生系統為例,Google 的系統更新推送往往不能第一時間覆蓋所有的機型,但是沒有收到 OTA 更新的話,是可以利用 Recovery 來手動進行 OTA 升級的。下載 OTA 升級包後,在 Recovery 模式下連接電腦,用 adb sideload 命令刷入 OTA 包即可,效果等同於接收 OTA 推送,不會丟失數據。
第三方 Recovery:你都用過嗎?
顯然,官方 Recovery 難以滿足玩家們的各種折騰需求。刷第三方 ROM 需要寫入 System 分區,官方 Recovery 是不提供該功能的。因此,第三方的 Reocvery 就成為了刷級玩家標配,刷 ROM 前需要先刷 Recovery,也是因為如此。
現在主流的第三方 Recovery 有兩種,一起來看看吧。
◆ClockWorkMod Recovery
ClockWorkMod 簡稱 CWM,這是一個資格非常老的第三方 Recovery。CWM 基於安卓 2.1 的 Recovery 改寫,從安卓 2.X 時代開始,它就非常流行,一度是最受歡迎的第三方 Recovery。CWM 的功能強大,可以進行 Wipe、刷機、備份、掛載磁盤、格式化等操作,甚至還可以調節手機 CPU 等硬件性能。CWM 的開發團隊和著名第三方 ROM CyanogenMod 有著千絲萬縷的關係,這令 CWM 更為流行。
CWM Recovery 界面,通過音量鍵來操作
不過,CWM 對觸屏的支持並不好,而且功能也漸漸被其他 Recovery 超趕。目前 CWM 已經不是最廣為流行的 Recovery 了。
◆Team Win Recovery Project
這是目前最為流行的第三方 Recovery,可以說是現在刷機的標配了。和 CWM 相比,TWRP 的界面更加華麗,可以進行觸屏操作,不需要用音量鍵慢慢上下選擇功能。在功能方面,TWRP 對比 CWM 可謂是有過之而無不及,它擁有一個非常強大的終端,並且帶有觸摸鍵盤,能夠直接在 Recovery 當中使用 adb 命令來設置、修改系統。
TWRP 的界面更華麗,而且可以觸控操作
TWRP 支持的機型非常多,而且匹配新機型的速度也很快,加之是開源的,開發者可以自行修改以匹配特定機型,因而 TWRP 非常受歡迎。
無論是 CWM 還是 TWRP,都是開源的 Recovery,因此它們也為安卓業界貢獻了很多,一些廠商使用了它們的代碼,編寫自己的 Recovery。
廠商為何不讓用戶刷 Recovery?
和官方的 Recovery 相比,第三方 Recovery 無疑強大得多。要如何安裝第三方 Recovery?沒有限制的話,只需要在 fastboot 狀態下連接電腦,使用 fastboot 命令“fastboot flash recovery xxx.img(Recovery 的文件名)”就可以刷入。但是,第三方的 Recovery 並不是隨便就能夠安裝的。除了機型匹配方面的問題,最大的問題就是很多廠商都鎖定了 bootloader,用戶不能更改 Recovery 分區的內容。而且,這趨勢在這兩年還愈演愈烈,以前不鎖機的廠商,現在也鎖機了。為什麼會這樣呢?
廠商給出最有力的理由,就是安全。的確,Recovery 如果可以隨意改寫,會造成很多安全問題。例如一些惡意 App,可以憑藉修改 Recovery,在安卓中揮之不去——無論你把它卸載了多少次,下次開機後,你又會重新見到它。某些正規大廠出品的安全 App,也會更改 Recovery,例如雷電 OS 這個 App 就會篡改 Recovery,這些是手機廠商難以容忍的。
不過很多廠商也為用戶提供瞭解鎖 bootloader 的服務,刷機玩家選購手機的時候,可以著重關注一下這方面。