2013年2月16日 星期六

Nexus 7: 無法經由 OTA 升級,怎麼辦?

當初幫 Nexus 7 解鎖(也就是所謂的 unlock 和 root)的目的是為了能夠使用 OTG(on the go;也就是可以接上 USB 隨身碟讓 Nexus 7 讀寫用),可是今天希望能夠從 4.2.1 升級到 4.2.2,就算是用了 OTA RootKeeper,還是無法升級。在升級的過程中,出現倒下來的 Android 機器人。

翻了快一天的文章,不小心看到  [Q] Problem updating to 4.2.2 b/c of Beats Audio 想起來,原來是之前安裝的 Beats Audio Installer 惹的禍。由於該軟體修改了部分系統檔案,而 OTA 再升級的過程中會檢查系統檔案是否被修改過,一旦發現修改就無法升級。怎麼辦呢?

根據該討論串的說法,首先到 http://goo.im/devs/WugFresh/stock/nakasi 下載 4.2.1 的原始檔 nakasi-jop40d-factory-6ac58a1a.zip。解開其檔案內的 image.nakasi-jop40d.zip,可以得到 boot.img 和 system.img 等檔案(我們只需要這兩個檔)。

請確認 adb 和 fastboot 是最新版的(這個步驟很重要),然後輸入以下指令

adb reboot-bootloader

進入 fastboot 模式;然後輸入下列兩行指令

fastboot flash system system.img
fastboot flash boot boot.img

將 4.2.1 原始的檔案寫入 Nexus 7,寫完後就可以重新開機。這個解決方法最漂亮的地方是原來的設定和資料仍然在;雖然這樣做完,你也失去了 root,但是這可以利用 Nexus 7 Root Toolkit 重新取回 root 權限。

這樣子一來,我們就可以利用 OTA RootKeeper 來升級,並在升級後恢復 root 權限。

沒有留言:

張貼留言