android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)

文章目录

  • android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践
    • references
      • 额外内容
      • magisk模块(optional)
      • 视频教程 ★ \bigstar
    • 基础知识准备
      • 推荐具有的技能
    • 工具/材料准备
      • 注意事项
      • 工作窗口预览
      • 配置命令行工具相关环境变量或命令行工具别名(optional):
        • 环境变量方式
        • 别名方式
        • 什么都不配置
      • 关于fastboot工具和adb工具的使用场景和帮助名令
    • 获取boot.img并修补为magisk_patched文件
      • 获取boot.img
      • 制作/获取magisk_patched已修补文件方式概览
        • 附:小米/redmi 刷机包汇总(如果你要自己提取boot.img)
      • 修补boot.img的过程
        • 传输boot.img到手机
        • 早期版本的android修补boot.img
        • 较高版本的android修补boot.img
      • 将修补好的magisk_patched文件传输到电脑
    • fastboot刷入修补好的magisk_patched文件
        • 刷入命令格式
        • 实操:开始刷写&结果
        • 稍微提一下该命令做了什么&原理(optional)
      • 重启手机查看效果
      • 常用的fastboot子命令Commands
    • 注意事项:android12刷入magisk获取&管理root权限
    • root 小结
      • 预期结果
      • 个人体验
    • magisk的使用系列
      • 隐藏root权限
        • magisk替身
      • 刷入各种模块
        • b i g s t a r bigstar bigstar模块虽好,可不要贪多
        • 获取模块
        • 刷入模块
      • 其他客户端获取并安装模块
        • scene5
        • 爱玩机工具箱
        • 调节zram和swapfile(虚拟内存)
        • A1内存管理和钢铁后台效果测评
        • 性能调度和省电调度(yc uperf)

android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践

references

  • Android 系统root教程-magisk最新版_ST0new的博客-CSDN博客_magisk root

  • Magisk安装教程 - Magisk中文网 (magiskcn.com)

额外内容

  • 玩机资源合集 (jamcz.com)
  • android12: How to Root Xiaomi Redmi Note 11T Pro / 11T Pro+ using Magisk without TWRP (getdroidtips.com)
  • Fastboot - Wikipedia
  • 分区布局 | Android 开源项目 | Android Open Source Project
  • Android Partitions Explained: boot, system, recovery, data, cache & misc (addictivetips.com)

magisk模块(optional)

  • 模块贴1 - 酷安 (coolapk.com)
  • K50最全root优化教程(流畅省电美化) 来自 Cx660 - 酷安 (coolapk.com)
    • 该贴资源1 (lanzoui.com) 提取码: 5krx

视频教程 ★ \bigstar

  • 玩机必看!带你入坑安卓刷机,小白也能看懂的ROOT基础指南来啦!_哔哩哔哩_bilibili

基础知识准备

  • 建议将前面列出的参考都看一遍
    • 特别是@晨钟(极客湾)的视频,相对全面,可以看他个两三遍(一遍估计不太好消化),当然如果不搞游戏什么的进阶后面的部分可以略过

推荐具有的技能

  • optional:遇到问题时,会使用搜索引擎/论坛寻求帮助查找问题
    • 会google更好,会使用搜索语法就更好
    • 能完整版酷安搜贴也不错(或xda)
    • 会点英文更好

工具/材料准备

  • 已经解锁的android手机(譬如小米/redmi手机)

    • 解锁小米手机 - Magisk中文网 (magiskcn.com)
    • 同时,在开发者选项中开启usb调试
      • (驱动现在一般不是问题,win10/11自带对android的驱动)
      • 但是不排除例外,请自行搜索驱动打上
      • 极端情况下(对于使用过软连接修改过%userprofile%\.android的android开发者,下面这篇文章或许有用)
        • android_adb调试链接方案/链接失败的若干问题
  • pc(windows10/11)

    • windows terminal+powershell(或者cmd) 组合
  • 命令行工具

    • SDK Platform Tools 版本说明 | Android 开发者 | Android Developers (google.cn)
  • 下载magisk app

    • Releases · topjohnwu/Magisk (github.com)
  • boot.img和magisk_patched文件会在后续操作中产生

注意事项

  • 建议用旧手机(备用机)试着操作一遍,总体简单(对于科班出身的,就更简单了)
  • android7之后的都可以(过程差不多),提高主设备刷写的成功率(当然,如果只是体验一下,主设备就不用root了)

工作窗口预览

配置命令行工具相关环境变量或命令行工具别名(optional):

环境变量方式

  • 这不是必须的,但是推荐配置一下,这会是你在用命令行的时候更加方便,而不需要将工作目录定在(fastboot.exe和adb.exe目录下)
  • 如果你对此看兴趣,可以参考以下文章(只需要看一小部分,就可以满足本教程需求)
    • windows_环境变量创建(environment variables/path)和使用(以java环境配置为例说明)+导出/导入环境变量方法+注册表备份_xuchaoxin1375的博客-CSDN博客_创建环境变量

别名方式

  • 如果你熟悉powershell,可以对上述两个命令行工具配置别名,同样是方便的,由于是可选的内容我就不展开了,另外查阅资料,或者查看powershell帮助手册
    • man Set-Alias
    • 如果喜欢,你还可以固化别名配置

什么都不配置

  • 都不想配置,那就得老老实实的将工作目录锁定在工具箱目录下

    • android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第1张图片
  • 还有一种方式,就是每次执行命令,都将命令行工具的绝对路径打出来,很不方便

关于fastboot工具和adb工具的使用场景和帮助名令

  • adb可以在开机的状态下使用

    • 在一些不需要root权限但又高于普通android用户权限的时候,adb用得多
    • 本教程中可选的使用(例如,可以做到一下事情
      • 检查设备是否成功链接(驱动是否正常):adb device -l
      • adb reboot bootloader使得开机的(并且已经允许计算机调试的android直接重启到bootloader(fastboot模式))
        • 这可以省去关机后按音量减&电源键的物理方式进入fastboot模式,更加高效
      • 使用adb push可以用来向anroid设备传输文件
      • 另一方面,adb pull可以从android 设备将文件拉取到电脑上
      • 以上都是可选,可以用你喜欢的传输方式进行传输文件
  • 获取帮助 adb --help

    • 
      PS D:\usersByCxxu\DownloadsAll> adb --help
      Android Debug Bridge version 1.0.41
      Version 33.0.2-8557947
      Installed as D:\exes\platform-tools\adb.exe
      
      global options:
       -a                       listen on all network interfaces, not just localhost
       -d                       use USB device (error if multiple devices connected)
       -e                       use TCP/IP device (error if multiple TCP/IP devices available)
       -s SERIAL                use device with given serial (overrides $ANDROID_SERIAL)
       -t ID                    use device with given transport id
       -H                       name of adb server host [default=localhost]
       -P                       port of adb server [default=5037]
       -L SOCKET                listen on given socket for adb server [default=tcp:localhost:5037]
       很长,省略篇幅
      
  • fastboot是线刷的主角命令

    • 用来对处于fastboot模式下的android设备进行操作
  • fastboot帮助手册fastboot --help

    • PS D:\usersByCxxu\DownloadsAll> fastboot --help
      usage: fastboot [OPTION...] COMMAND...
      
      flashing:
       update ZIP                 Flash all partitions from an update.zip package.
       flashall                   Flash all partitions from $ANDROID_PRODUCT_OUT.
                                  On A/B devices, flashed slot is set as active.
                                  Secondary images may be flashed to inactive slot.
       flash PARTITION [FILENAME] Flash given partition, using the image from
                                  $ANDROID_PRODUCT_OUT if no filename is given.
      
      basics:
       devices [-l]               List devices in bootloader (-l: with device paths).
       getvar NAME                Display given bootloader variable.
       reboot [bootloader]        Reboot device.
       
       省略篇幅
      
      

获取boot.img并修补为magisk_patched文件

获取boot.img

  • 未修补的初始boot.img的获取方式多种
    • 可以自己下载rom然后(转化)提取

    • android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第2张图片

    • 也可以直接到网上找找别人提取号的boot.img文件(譬如酷安论坛中找找帖子)

制作/获取magisk_patched已修补文件方式概览

  • 获取boot.img可以是别人分享的(酷安找帖子),也可以是自己提取

  • 但是,修补boot.img建议自己修补,即,使用自己安装的magisk app自行修补

    • 这样可以保证magisk app(客户端)和修补出来的magisk_patched文件具有一致性和兼容性,不容易出现异常
    • 异常情况包括但不限于
      • 无法开机
      • 开机了,但是magisk app无法管理root权限
  • 上述方式是推荐的方式,不过你还是可以试试用别人修补过的magisk_patched文件

    • 但不建议,会增加风险(本人失败过(❁´◡`❁),幸好找到了一份未修补的boot.img,成功重刷恢复过来)

附:小米/redmi 刷机包汇总(如果你要自己提取boot.img)

  • 直接从手机端获取rom

    • 到系统更新页面
    • android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第3张图片
  • google搜索(小白pass)

  • rom网站

    • Feishu Sheet
    • MIUI ROM DOWNLOAD - Xiaomi Community - Xiaomi
    • 或者到网站:Download Official ROM For All Xiaomi Devices | XiaomiROM.com

修补boot.img的过程

传输boot.img到手机

  • boot.img 通过任意一种你喜欢或你会的方式传输到手机(当然,你也可能直接在手机端完成boot.img的获取,完全有可能),利用已经安装的magisk 手机端app进行修补boot.img文件
    • 这将得到一个修补过的boot.img(实际名字类似于magisk_patched-some-id-token.img)
      • 例如我的这次操作:得到修补后的文件magisk_patched-25200_LFBPs.img
  • 下面描述操作细节

早期版本的android修补boot.img

注意,对于较早版本的android(譬如下面的情况是我的android7老设备,第二幕中,会使用android12设备root的实践报告),修补前需要选择选项:

  • 保留AVbobo2.0
  • 保持强制加密(默认勾选)
  • 修补boot镜像中的vbmeta
  • android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第4张图片
  • 点击下一步
  • 选择boot.img文件
  • 选择完毕会回到面具,点击开始修补(let's go)
  • android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第5张图片

较高版本的android修补boot.img

  • 对于android12设备,应该没有这么多选项(反而简洁),直接默认,在方式(methed)选择boot.img文件直接进行修补

  • 简而言之,如果有选项这一栏,实际保持默认即可

    • (这会保持加密,否则系统可能无法引导,
    • 不过救砖不难,只需要刷入未修补的boot.img即可恢复)
  • 选择下一步,选择我们前面准备好的boot.img,文件进行修补(选择完文件后点击开始)

  • 输出过程和低版本android类似,等待all done!提示

将修补好的magisk_patched文件传输到电脑

有多种方式传输文件到pc端,电脑路径可以是你熟悉的任何路径(譬如桌面)

  • adb方式

    • PS D:\usersByCxxu\DownloadsAll> adb pull /storage/emulated/0/Download/magisk_patched-25200_VBQAh.img
      /storage/emulated/0/Download/magisk_patched-25200..., 0 skipped. 20.6 MB/s (29777192 bytes in 1.379s)
      
  • 也可以使用qq/微信传输文件(友好方式)

  • 或者其他方式

    • 感觉windows资源管理器不太靠谱

fastboot刷入修补好的magisk_patched文件

  • 前面说到,adb是个好用的工具,但对于本教程并不是必须的
  • fastboot是本教程必须的

刷入命令格式

  • fastboot flash boot .\magisk_patched-25200_VBQAh.img
    • 这是配置好环境变量或者别名的情况下的简短命令
      • 或者,用绝对路径也可以,这样就可以在任何目录下执行相应命令
    • 如果没有相应配置,请用绝对路径来帮助系统找到命令行工具fastbootmagisk_patched文件路径
  • 命令解释:
    • 根据自己的情况,选择是否先进入到修补文件(magisk_patchedxxx)所在目录
      • 不进入的话,可以用绝对路径表示magisk_patche文件
      • 文件名根据自己的情况(magisk_patchedxxx)输入,如果是用powershell,可以tab键自动补全文件名
    • 回车,开始刷写

实操:开始刷写&结果

  • 刷写

PS D:\usersByCxxu\DownloadsAll> fastboot flash boot .\magisk_patched-25200_VBQAh.img
Sending 'boot' (29079 KB)                          OKAY [  0.936s]
Writing 'boot'                                     OKAY [  0.818s]
Finished. Total time: 2.015s

稍微提一下该命令做了什么&原理(optional)

  • 查看帮助文档

    • PS D:\usersByCxxu\DownloadsAll> fastboot -h
      usage: fastboot [OPTION...] COMMAND...
      
      flashing:
       update ZIP                 Flash all partitions from an update.zip package.
       flashall                   Flash all partitions from $ANDROID_PRODUCT_OUT.
                                  On A/B devices, flashed slot is set as active.
                                  Secondary images may be flashed to inactive slot.
       flash PARTITION [FILENAME] Flash given partition, using the image from
                                  $ANDROID_PRODUCT_OUT if no filename is given.
      
      basics:
       devices [-l]               List devices in bootloader (-l: with device paths).
       getvar NAME                Display given bootloader variable.
       reboot [bootloader]        Reboot device.
      
      
    • 可以看到, flash PARTITION [FILENAME] .(Flash given partition, using the image from $ANDROID_PRODUCT_OUT if no filename is given)

    • 而我们的命令fastboot flash boot magisk_patchedxx.img就是让fastboot这个程序执行子命令flash,flash 会把指定的文件刷入到指定分区partition(这里也就是boot分区);从而实现对boot分区的修改

重启手机查看效果

  • 打开magisk app

  • 顺利的话,则成功获取

常用的fastboot子命令Commands

Some of the most commonly used fastboot commands include:

  • flash – rewrites a partition with a binary image stored on the host computer.
  • flashing unlock/oem unlock – unlocks an OEM locked bootloader for flashing custom/unsigned ROMs. The is a device specific unlock key.
  • flashing lock/oem lock – an opposite action.
  • erase – erases a specific partition.
  • reboot – reboots the device into either the main operating system, the system recovery partition or back into its boot loader.
  • devices – displays a list of all devices (with the serial number) connected to the host computer.
  • format – formats a specific partition; the file system of the partition must be recognized by the device.
  • oem device-info – checks the bootloader state.
  • getvar all – displays all information about device (IMEI, bootloader version, battery state etc.).

注意事项:android12刷入magisk获取&管理root权限

  • 主要是需要注意较高版本的android之后引入的a/b分区,如果上述老版本的方式
    • fastboot flash boot magisk_patch-xxx.img不生效(或异常)
    • 那么尝试显式指定boot为boot_a&boot_b分别执行并刷写之
    • 然后使用fastboot reboot重启手机

android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第6张图片

root 小结

预期结果

  • 如果上述步骤都顺利的话,并且能够重启成功,那么magisk app应该能够获取到root权限并进行管理

个人体验

  • 我的机器内存只有6g,却出厂就搭载了基于android12的臃肿的miui13,

    • 开机就要占用将近4g
      • 使用强力清理也只能空出2.2g
      • 现在普通清理,就可以空出2.5g
    • 微信&qq后台乱杀,平均后台能力3个app左右,完全比不上我刚刚换掉的6g老设备(虽然处理器差一些)
  • 现在设备成功root,我发现内存占用水平被控制在了相对较好的范围

    • 我用了sence5的调控功能,发现电池也比之前来得耐用一些

    • 据说钢铁后台模块+A1内存管理,目前看来效果不错

magisk的使用系列

隐藏root权限

  • 这部分内容也挺重要,关乎某些银行类软件(设置是手机营业厅app)的使用
  • 这一部分的操作过程由于我没有截图,所以不清楚的可以查看其他文章

但是解决方案各种各样,不同版本的magisk 和手机型号均可能产生不同的效果(有的甚至无效)

  • 有使用第三方模块的(譬如shamio模块(估计是日本人开发的))
    • 这种方法其他人用的不少,我没试过

magisk替身

android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第7张图片

  • 我采用magisk自带的zygisk和隐藏面具功能(这会创建一个magisk app的替身,可以混淆银行类app检测不到root)
    • 这种方式简单,但是可能导致第三方app的数据丢失(譬如需要重新登录账号)
    • 而且原来的magisk app图标会消失,取而代之的是一个简陋的app 图标(该app的名字是可以有你自己取名)
      • 默认名字是settings
      • 授权后,magisk替身app会提示root权限丢失
      • 此时原来的magisk app应该还在桌面上,你进入到root重新授权给这个替身app,这样替身就接管了原来magisk的功能和身份以及权限

刷入各种模块

b i g s t a r bigstar bigstar模块虽好,可不要贪多

  • 模块之间均可能存在嵌在的冲突,导致各种问题(性能下降/死机等)

获取模块

  • 可以到酷安论坛找找想要的功能模块
    • 耐心找找

刷入模块

  • 刷入模块的客户端(GUI provider)不止有magisk 本身(替身app 也可以)
    • 浏览器下载或者其他途径下载号模块压缩包(通常不太大)
    • android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第8张图片
    • 打开面具进行安装
    • 注意,有的模块会一些交互,譬如让你按音量+或者音量-,你按完才算正式刷入(例如上面的A1内存管理)
      • 此时会弹出rebot的按钮
      • 根据情况可以立即重启或者稍后重启(返回切走)
    • 有的模块会由于过时而失效,请不要过于惊讶
    • 甚至,某些模块导致相互冲突,使得手机变砖也有可能
    • 所以说,要回刷也好会救砖

其他客户端获取并安装模块

scene5

  • scene5也有丰富的功能,可以授权给scene5,间接安装模块
  • 我就不展开了

爱玩机工具箱

  • 功能丰富,但是不建议和scene5同时设置似的配置(譬如虚拟内存),容易发生系统异常
  • android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第9张图片
  • 爱玩机magisk仓库
  • android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第10张图片

调节zram和swapfile(虚拟内存)

  • 虚拟内存谨慎调节
    • 对于某些设备设置了swapfile(是比较耗时的过程)和zram未必生效,而且可能会相互干扰可能导致zram无法正常使用,甚至容易引起死机
    • 还可能和系统自带的内存扩展(虚拟内存功能)发生冲突(猜测)
    • 建议保持默认即可

A1内存管理和钢铁后台效果测评

  • 总的来说效果可以,但是系统有点掉帧,不如以前丝滑了
  • 可以短时内保活较多数量的后台,同时造成一定程度的卡顿(有点儿windows系统处理),所以还是尽量把不用的后台手动杀掉(毕竟可以省点嘛)

性能调度和省电调度(yc uperf)

  • scene5提供了性能调度(和省电调度)

    • tuner中设置
    • android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第11张图片
    • app profile 可以设置单个应用的调度策略(游戏狂喜)
  • 还提供了其他调度模块的下载引导
    android 手机获取root权限_获取刷入模块_MIUI_android7~android12实践(redmi note11 T pro root)_第12张图片

你可能感兴趣的:(android)