Android 玩家必備神器入門:從零開始安裝 Magisk | 您所在的位置:網(wǎng)站首頁 › 屬馬男和什么屬相婚配 › Android 玩家必備神器入門:從零開始安裝 Magisk |
Matrix 首頁推薦 Matrix 是少數(shù)派的寫作社區(qū),我們主張分享真實的產品體驗,有實用價值的經驗與思考。我們會不定期挑選 Matrix 最優(yōu)質的文章,展示來自用戶的最真實的體驗和觀點。 文章代表作者個人觀點,少數(shù)派僅對標題和排版略作修改。 少數(shù)派上一篇介紹 Magisk 本體的文章還是在兩年前,兩年間,Android 大版本從 9 來到了 12,Magisk 開發(fā)者 John Wu 也從 Apple 跳槽到了 Google。物換星移,人去梁空,這個神奇的開源項目卻沒有因此止步不前。現(xiàn)在的 Magisk 有著廣泛的兼容性和繁榮的模塊生態(tài),依然是每一個 Android 玩家必備的神器。 五月,Magisk 發(fā)布了 v23,并悄然更新了安裝教程,刪改了過時內容。本文以此教程為基礎,重新介紹 Magisk 官方推薦的刷入方式以及其他要點。一些內容為照顧新手玩家而作,有一定知識儲備的玩家可以按需跳過。 Magisk 簡介Magisk 是一個安全、美觀且非常強大的 Android 自定義工具。它主要有以下三個功能: MagiskSU:獲取設備 Root 并經用戶授權給應用;Magisk Modules:下載、掛載與管理模塊,模塊則能個性化各種系統(tǒng)設置;MagiskHide:對選定應用隱藏設備已 Root 的事實和 Magisk 自身的存在。![]() 如果想在 Android 設備上管理 root 權限,或是實現(xiàn)某些深度自定義的功能(比如替換字體、調控性能等),那么刷入 Magisk 就是你目前最好的選擇,而且「貍貓換太子」的掛載方式使得 Magisk 對現(xiàn)有的系統(tǒng)文件不會造成影響。其原理和安全性如何,可以查看少數(shù)派一篇舊文的前兩部分: 關聯(lián)閱讀:每個 Android 玩家都不可錯過的神器(一):Magisk 初識與安裝由于 Android 陣營廠商眾多,的確很難保證他們步伐齊一,也就不存在某種一定通行的「通法」能夠搞定任一 Android 設備的 Magisk 刷入。因此建議新手在入門時先行尋找當前機型的討論,檢查是否大多數(shù)玩家已經成功刷入/是否有額外步驟后再行嘗試下文介紹的「通法」1。 此「通法」大致分為以下幾個步驟:檢查設備,準備工具 > 安裝 Magisk App > 提取鏡像 > 使用 App 修改鏡像 > 刷入鏡像。這五個步驟大部分有圖形界面輔助,少部分的命令行作可以直接復制粘貼。 ![]() ? 下文展示每個步驟的詳細內容。如果你是新手玩家,請完整閱讀文章內容后再上手。 檢查設備,配置工具磨刀不誤砍柴工,第一步是檢查和準備:檢查設備的安卓版本、配置好 ADB 和 Fastboot,以及解鎖 Bootloader。安裝失敗的原因往往是設備的特異性,安裝中各類奇怪報錯往往是因為沒有配置好工具。 檢查 Android 版本Magisk 23 僅支持 Android 5.0 及以上的版本,你可以在手機設置 -> 系統(tǒng)信息 & 關于手機的字眼下看到目前 ROM 的 Android 版本。目前給出的最高支持版本是 11。Android 12 截止到目前的 beta 3 據(jù)玩家測試都可以正確安裝,風險自負。低于 5.0 版本的手機需要更新系統(tǒng)或者裝更低版本的 Magisk,低版本的安裝方式可以參考 此文。Magisk 歷史版本均可在 Github 上的 發(fā)布頁 找到。 配置 adb 和 fastbootadb 和 fastboot 是我們針對 Android 設備進行高級調試和安裝的工具。如果你已經安裝了 choco 或 homebrew 等包管理工具的話,Windows 輸入choco install adb universal-adb-drivers -y,Mac 輸入 brew install android-platform-tools 能最方便的完成 adb 和 fastboot 的配置。 我們也可以手動安裝:Windows 用戶可以參照 Windows 作系統(tǒng)下的 ADB 環(huán)境配置 這篇文章;macOS 用戶可以嘗試 此腳本 或是參考 使用 Mac 為 Android 手機刷原生系統(tǒng) 進行手動配置。最后最最不濟,可以嘗試在 Google 開發(fā)者頁面 下載對應 adb 包,解壓后在對應的目錄下執(zhí)行指令亦可,或者是嘗試 WebADB 或 adb 在線執(zhí)行器 這樣的在線 adb 工具,比較考驗瀏覽器的兼容性。 adb 安裝后 Windows 用戶需要安裝驅動。個人建議下載一個泛用型驅動 universal adb drivers。少數(shù)情況下不能識別的話,需要我們用「手機廠商名 + adb driver」的關鍵詞搜索得到相關的下載和安裝教程。安裝了驅動后,Windows 設備管理器中才會出現(xiàn)相應的設備。 ![]() 配置完 adb 環(huán)境,玩機路上的最最重要的地基已經打好,但若要將手機設置為可被調試的狀態(tài),我們還是要麻煩點上幾步: 打開「設置」應用,進入「關于本機」或類似的界面;連續(xù)點擊「版本號」,直到提示開發(fā)者選項已開啟;進入「開發(fā)者選項」;打開「USB 調試」選項,MIUI 或 ColorOS 用戶 需要額外放權作。此時,連接電腦,打開終端,輸入adb devices,如果返回了設備名稱,說明 adb 配置完成;用 adb reboot bootloader 進入 fastboot 界面,鍵入 fastboot reboot 后,若設備重啟,說明 fastboot 正常。 ![]() 不解鎖 bootloader 則無法對設備進行底層的自定義。對于 Android 玩家這樣的小眾群體來說,bootloader 能否解鎖甚至成為了購機參考中的決定性因素。 一般來說,在開發(fā)者選項中基本都有一個名為「OEM 解鎖」的選項。除了少部分流入我國市場的國外運營商有鎖機外,此選項基本都可供用戶開啟。 有的廠商為此選項附加了一定的條件:例如小米需要在 解鎖申請頁面 申請;索尼與 Moto 都需要向官方申請解鎖碼,一般幾分鐘內搞定;Google Pixel 和早期的一加手機都無需等待,打開 OEM 解鎖選項后輸入一下命令,然后在接下來的頁面中手動作。 adb reboot Bootloader # 重啟手機到 Bootloader 界面 fastboot flashing unlock # 進行解鎖,部分廠商需要在此附上解鎖碼解鎖 Bootloader 后會立即清空手機中所有數(shù)據(jù),但這也是很多玩機作必經的第一步,建議盡早開啟。解鎖 Bootloader 還意味著手機等私密設備的安全性大大下降,不少廠商也會在解鎖政策上附加上不少「條款」:三星設備解鎖后會永久性熔斷 KNOX 安全認證;大部分手機的版權認證 DRM 等級也會從 L1 下降至 L3、無法通過 Play 商店認證等。 綜上所述,我們不建議你在主力機上解鎖 Bootloader,一定要那樣做的話,請知曉這一作可能造成的風險。官方已經明確表示不能解鎖 BL 的,請知難而退。 打包鏡像并刷入下面我們開始真正上手刷入 Magisk 。 Tips:從 Magisk 22 開始,不再區(qū)分刷寫用的 .zip 包與安裝管理器用到的 .apk 應用安裝包,二者合一且只有后綴的區(qū)別,默認提供 .apk 包,更改后綴為 .zip 后即可被刷寫。 安裝 Magisk App,查看 Ramdisk在刷入前,我們先安裝 Magisk App 來檢查設備的信息,來確定進一步的作。我們先到 官方項目地址 下載 apk 文件安裝。 ![]() 打開安裝后的 Magisk App,像上面的最后一張截圖一樣,你能看到一項名為 Ramdisk 的值。請確保此項的值為「是」「True」,我們再進行下一步。 Tips:極少數(shù)小米設備存在檢測設備信息錯誤的問題,Ramdisk 雖然顯示為「否」,但實際上是需要修改 boot.img。 若 Ramdisk 值為「否」,請結合附錄相關章節(jié)閱讀全文。 獲取 boot.imgboot.img 鏡像一般來說都可以從當前使用的 ROM 的壓縮包中找到。 官方 ROM 的壓縮包,例如 Google、小米、Moto,由廠商發(fā)布,可從固定的發(fā)布頁面、機型論壇等獲取相關鏈接。一些廠商同時提供了 OTA 包和全量包,我們優(yōu)先下載全量包,解壓后即可獲得 boot.img,也就是我們所需要的 boot 分區(qū)的鏡像文件。 ![]() 如果你使用的是第三方開發(fā)者制作的 ROM,也同樣需要下載系統(tǒng)全量包解壓獲取,而部分開發(fā)者也會單獨釋出 boot.img 為玩家提供便利。如果你比較幸運,在論壇中有人分享了自己修改好的鏡像,可以直接獲取進行刷寫。 Tips:如果你下載的是 OTA 包或解壓系統(tǒng)包后只能得到一個體積較大的 payload.bin 文件,請?zhí)D至附錄查看如何使用開源工具解壓(需 python 環(huán)境) ![]() 而解壓小米手機的線刷包后,能在 images 文件夾中找到 boot.img: ![]() 保險起見,將要用到的鏡像保留一份在電腦上以備不測,之后將其復制到手機上。 使用 App 修改鏡像第三步我們獲得了 boot.img,并將它復制到了手機上。下面我們將用 Magisk App 修改這些鏡像。如果你下載的是別人修改好的鏡像的話,直接跳過這一步。 打開手機 Magisk 應用 > 安裝 > 選擇并修補一個文件 > 選擇復制進去的 boot.img > 開始。等待滾動的命令行顯示 All Done。 ![]() 修改好的鏡像會被存儲在手機的下載文件夾中,名稱以「magisk_patched」開頭,將這個鏡像再傳回電腦。改個短的名字(可選)。 ![]() 復制修改鏡像后的完整路徑,在終端中輸入: ## 手機重啟到 bootloader adb reboot bootloader ## 如果 Ramdisk 為 yes fastboot flash boot ## 刷入完成后重啟 fastboot reboot? Tips,要得到文件的完整路徑:- 在 macOS 中,直接拖動文件到終端窗口,會生成對應文件的路徑- 在 Windows 中,選中文件 > Shift + 右鍵,會多出「復制為路徑」命令 如果想要謹慎一點,比如說修改的鏡像文件是從網(wǎng)上下載的,想先試試看能否正常啟動,則可以用命令:fastboot boot 。這樣順利啟動系統(tǒng)后即可暫時擁有 Magisk ,不過重啟后就會失效。確認沒有問題后,再打開 Magisk App 中選擇安裝 > 直接安裝,來「永久」寫入 Magisk。 最終,當我們能在 App 中看到「當前」一欄的版本號且重啟不會消失時,恭喜你,安裝成功。 更新和卸載一旦安裝成功,以后更新 Magisk 就不用這么麻煩了。Magisk App 的「安裝」選項會在你成功刷入鏡像后多出來一個「直接安裝」選項。點此選項就能升級 Magisk。同樣,卸載也可以通過 Magisk App 首頁的「卸載 Magisk」按鈕來實現(xiàn)。 ![]() 就目前來看,安裝 Magisk 后出現(xiàn)的各類問題大多數(shù)情況下都不是因為 Magisk 本身,而是因為安裝刷入后又陸續(xù)刷入的來源不明的 Magisk 模塊或者授予 root 權限的不明應用。如果你同時還想刷入第三方內核的話,建議先刷 Magisk 再刷第三方內核,這樣也能知曉問題出在哪一方身上。 因為未知原因導致安裝失敗也不要怕,在步驟「獲取 boot.img」是我們保留了一份原來的鏡像,按照最后一步的方法將原來的鏡像重新刷回去就能正常開機。 在使用 Magisk 的過程中,可能會出現(xiàn)了 App 閃退或拒絕啟動,可以嘗試使用 Magisk Hide 來針對這些 app 隱藏 Magisk 的存在。而如果你因為安裝了未知模塊而翻車無法順利進入系統(tǒng),請先冷靜下來:解決此類問題有一個萬能的命令adb wait-for-device shell magisk --remove-modules ,此條指令將會在手機啟動過程中生效。 關聯(lián)閱讀:一日一技 | Magisk 模塊「翻車」,沒有 TWRP 如何救磚? Magisk App 內容會在之后的文章中更詳細的講述。 參考資料Magisk 項目地址:https://github.com/topjohnwu/Magisk官方論壇:https://forum.xda-developers.com/f/magisk.5903/官方教程:https://topjohnwu.github.io/Magisk/常見問題:https://www.didgeridoohan.com/magisk/HomePage附錄:Ramdisk 為「否」的機型安裝流程Ramdisk 是系統(tǒng)中的一個小分區(qū),Ramdisk 告訴系統(tǒng)接下來要加載哪些東西。Magisk 的目的是修改 Ramdsik,把自己加進開機需要加載的系統(tǒng)組件中。App 中 Ramdisk 的值為「否」時,表示需要修改的 Ramdisk 被放在了 recovery.img 中,我們需要提取并修改 recovery.img。 整個流程仍然分為五步,但部分環(huán)節(jié)有所不同: 檢查設備,配置工具安裝 App,此時 Ramdisk 顯示為「否」下載當前系統(tǒng)的全量包,如果你使用了第三方 Recovery,那么 recovery.img 就是這個第三方的鏡像。提取 recovery.img,備份,然后傳到手機上修改鏡像:在選擇修補文件后,會多出一個「Recovery Mode」的選項。記得勾選刷入鏡像:使用的命令是 fastboot flash recovery這五步完成后,重啟手機。和修改 boot.img 不同的是,我們需要立即按下設備進入 Recovery 的組合鍵,這樣才能掛載 Magisk。這是因為我們是通過修改 recovery.img 的方式掛載 Magisk 的,只有在按下組合鍵的情況下,設備才會啟動 recovery 分區(qū),從而實現(xiàn) Magisk 的掛載。 按下組合鍵后,設備不會進入 Recovery 模式,而是會閃屏過后直接進入一個有 Magisk 的系統(tǒng)。每一次重啟都要這樣做才能掛載 Magisk。進入系統(tǒng)后就沒有特別需要注意的問題了。 而想要進入真正的 Recovery ,我們需要在按下組合鍵后的閃屏界面長按音量 + 鍵。 附錄:解壓 OTA 包獲取其中的 boot.img一般來說像 Google 給出的刷機包,解壓其中的 image 包可以直接獲得我們想要的各種鏡像文件。但部分廠商給出的升級包以及部分第三方 ROM 的刷機包中解壓出來只有 payload.bin,無法進一步解壓獲得我們想要的各種鏡像文件。 ![]() 解壓 payload.bin 需要用到特殊的工具,我們可以在 Github 上找到開源的 payload dumper,這是一個基于 python 3 的命令行工具。 以 zip 格式下載源代碼,本地解壓得到 payload_dumper-master 文件夾,下屬兩個 py 后綴的 python 文件。將 ROM 的 .zip 包解壓縮后,把其中的 payload.bin 文件移送到 payload_dumper-master 中。 pip3 install protobuf #安裝 protobuf ## 定位到 payload_dumper-master 文件夾 python3 -m pip install protobuf python3 -m pip install -r requirements.txt python3 payload_dumper.py payload.bin? ![]() 一般來說我們的 Android 手機都有恢復模式(Recovery),這個模式獨立于 Android 系統(tǒng)之外,主要用于升級或者修復手機的 Android 系統(tǒng)。TWRP 就是一種經過自定義的恢復模式,玩家可借助這類自定義恢復模式來便捷地完成系統(tǒng)級作,包括刷入 Magisk。 自定義恢復模式刷入法無需考慮 Ramdisk 是 Yes 還是 No,但 TWRP 的更新適配往往跟不上新機型、新系統(tǒng)的速度,Magisk 官方文檔中亦已不再推薦使用自定義恢復模式刷入法。 除了文中第二節(jié)提到的三個準備,使用此方法我們還需要 下載 Magisk.apk 并重命名為 Magisk.zip提前準備一個兼容的第三方 Recovery根據(jù)有沒有 Recovery 分區(qū)分為兩種情況: 如果你的手機具備 Recovery 分區(qū),可考慮通過 adb 命令刷入自定義恢復模式鏡像文件: adb reboot bootloader #進入fastboot模式 fastboot flash recovery之后,使用組合鍵或者 adb reboot recovery重啟到恢復模式。進入自定義恢復模式后輸入鎖屏密碼解鎖 data 分區(qū),找到 Magisk.zip 安裝包刷入即可。 手機沒有 recovery 分區(qū)的話,則可以像剛剛那樣使用 boot 命令啟動(而不是刷入)自定義恢復模式鏡像文件。如果你的自定義恢復模式并不支持解密 data,我們也可以嘗試使用 adb sideload 命令從電腦端為手機刷入 magisk。 為方便理解,以既沒有 recovery 分區(qū)、配套 TWRP 又過于老舊不支持解密 data 分區(qū)的 Pixel 2 為例,演示用 TWRP 來刷入 Magisk。 電腦端準備好(過時的)TWRP.img 與 Magisk Installer.zip。Pixel 連上手機并已開啟 USB 調試選項。 adb reboot bootloader Fastboot boot 指定目錄/twrp.img手機開機 > 進入 TWRP > 要求輸入密碼 > 跳過 > 允許修改系統(tǒng)。在 TWRP 中選中「高級」、「adb sideload」,使 TWRP 處于接受 sideload 的狀態(tài)。電腦終端方面,輸入指令:adb sideload 指定目錄/magisk.zip。等待刷寫完成后開機即可。 > 下載少數(shù)派 客戶端 、關注 少數(shù)派公眾號 ,了解更妙的數(shù)字生活 ?? > 想申請成為少數(shù)派作者?沖! |
今日新聞 |
推薦新聞 |
專題文章 |
CopyRight 2018-2019 實驗室設備網(wǎng) 版權所有 |