小米手机安装 Magisk 获取 Root 权限指南
现在获取手机 Root 主要通过安装 Magisk 实现,这篇文章将以新手视角介绍如何安装使用 Magisk。
为尽可能介绍明白,文中所提步骤均配上了截图说明(点击文字链接可以查看操作图解)。
准备工作
- 安装 Magisk 过程中需要用到
fastboot
命令,请确保电脑已下载相关工具和配置好命令环境变量 - 安装 Magisk 过程中需要刷写手机
boot
或Recovery
分区,请确保手机已完成 BL 解锁,不然无法进行 - 安装 Magisk 正常情况下不会丢数据,但稳妥起见,尤其是新手,建议先外置备份手机数据再操作
最后,虽然文中方法已用实机多次验证,但每人环境可能不同,无法承诺获得一致结果,文章仅供参考!
下载 Magisk
Magisk 下载地址 https://github.com/topjohnwu/Magisk/releases(选择下载最新版,然后安装到手机)。
如果下载遇到打不开情况,请多刷新几次,或者切换不同网络测试。
查询手机环境
在继续后面操作前,请先查询以下两点,记下查询结果。
- 手机打开安装的 Magisk,在主界面查看 Ramdisk 结果
- 查询手机是否具有单独
vbmeta
分区,查询方法请参考这篇文章
提取相应文件
查看手机上运行的系统版本是多少,下载对应系统版本刷机包,从里面提取相应文件(请见下面说明)。
- 如果之前 Ramdisk 查询结果为“是”,请提取
boot.img
文件 - 如果之前 Ramdisk 查询结果为“否”,请提取
recovery.img
文件
文件提取方法:
- 如果系统版本有线刷包,可以直接解压提取
- 如果系统版本只有卡刷包,需要从解压的 payload.bin 文件里提取(老机型卡刷包可以直接提取)
将提取到的文件复制到手机上。
生成修补文件
手机打开 Magisk 软件,点击 Magisk 卡片中的“安装”按钮。接下来的界面不同机型显示的选项可能不同。
- 如果之前 Ramdisk 查询结果为“否”,请选中“安装到 Recovery”选项
- 如果之前查询手机没有单独
vbmeta
分区,请选中“修补 boot 镜像中的 vbmeta”选项
如果显示有其它选项,一般保持默认不要更改。稍微新一些的机型通常不会显示相关选项,所以请忽略。
接下来点击“选择并修补一个文件”,选择之前提取到的 boot.img
或 recovery.img
文件,点击“开始”,然后等待生成修补文件。
补充:据 Magisk 文档指出,小米有个别机型 Ramdisk 结果可能不能准确检测。如果修补 recovery.img
文件失败,可以尝试用 boot.img
修补,后面安装也遵循 Ramdisk 结果为“是”的做法。
将生成的修补文件复制到电脑上(修补文件默认保存在手机内部存储 Download 目录)。
刷写修补文件
将手机关机,长按音量下键 + 电源键
进入 FASTBOOT 模式,用数据线连接到电脑。
电脑打开存放修补文件的文件夹,按住键盘 Shift 键
,同时鼠标右键点击文件夹空白处,在右键菜单点击“在此处打开 Powershell 窗口”,然后运行下面刷写命令(命令中的文件名请先自行修改)。
# 如果之前修补 boot.img 文件请用这个命令 fastboot flash boot magisk_patched-25200_pU6ZV.img # 如果之前修补 recovery.img 文件请用这个命令 fastboot flash recovery magisk_patched-25200_pU6ZV.img
刷写完成后用下面命令重启手机(补充:如果刷写的是 recovery.img
修补文件,也就是 Ramdisk 结果为“否”的机型。在刷写完重启时需要按住 Recovery 组合键,小米的是音量上键 + 电源键
,待出现启动界面后松开按键,这样进入的系统才能使用 Magisk)。
fastboot reboot
如无意外,重启手机后就安装好 Magisk 了。打开 Magisk 软件可以看到已经有 Root 授权管理选项,现在可以开始使用了。
提示:如果刷完后遇到反复重启进不去系统问题,可以尝试先用下面命令禁用启动验证(AVB/DM-Verity),然后重复上一步骤重新刷写修补文件(这个方法仅限具有单独 vbmeta
分区的机型使用)。
fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img
命令中用到的 vbmeta.img
文件从刷机包内提取,方法和之前提取其它文件一样。
或者,如果遇到问题打算放弃 Magisk 安装,只需用之前方法刷回从刷机包提取的原始文件。
使用问题补充
Magisk 如何对软件隐藏 Root
目前比较好的方法是安装 Shamiko 模块实现,具体请查看这篇文章。
安装 Magisk 后系统更新注意事项
安装 Magisk 后如果按往常一样更新系统,会出现 OTA 增量更新失败,需要下载完整包的问题,并且更新后会丢失 Magisk 安装。
采取下面更新步骤可以避免上述问题(仅适合 A/B 分区机型使用。其它机型忽略第 3 步骤,更新后重新安装 Magisk)。
- 平时关闭系统自动更新,以防后台自动下载安装更新
- 当要更新系统时,先打开 Magisk 软件,点击“卸载 Magisk”,选择“还原原厂映像”
- 运行系统更新,安装后先不要点重启,打开 Magisk 软件点击“安装”,选择“安装到未使用的槽位”,之后再重启
更新 Magisk 方法
Magisk 更新分 Magisk 软件 和 Magisk 安装,两者都可以在 Magisk 软件内操作更新(先更新 Magisk 软件,再更新 Magisk 安装)。
由于网络环境和应用权限问题,在 Magisk 里的点击更新软件可能会遇到不能下载或安装的问题。可以直接访问 GitHub 下载 APK 文件覆盖安装,然后再更新 Magisk 安装,选择“直接安装”模式即可。
卸载 Magisk 方法
打开 Magisk 软件,停用已安装模块(如果有的话),点击“卸载 Magisk”按钮,选择“完全卸载”,卸载后会自动重启生效。
提示:如果之前安装 Magisk 时取消了“保持强制加密”选项(修补文件那步,通常只在旧机型和旧版本上有显示该选项,且默认不会取消),则卸载 Magisk 后系统可能会自动加密用户数据,操作前记得外置备份数据。
不是单独 vbmeta 分区的机子,还原原厂映像后,直接OTA更新可以吗
还原boot后可以ota更新。
最后一步刷写修补文件,命令窗口已经显示finished了,我就拔线重启了,一直不开机,咋办啊
(不是单独 vbmeta 分区的机子)
没有遇过这种情况,尝试刷回原始boot?
刷回原始boot倒是可以开机了。
又按步骤重新刷一次,cmd窗口明明finished了,也有两次okey了,可就是开不了机,只好又刷原始boot了,还有别的什么办法吗
是不是要在开发者选项中开 USB安装 和 USB调试(安全设置) 啊
这个不清楚,或许可以试下换个系统版本或Magisk版本。
刷好root和第三方rec后,重启会掉吗
不会,至少写这个文章时测试没有发现有问题。
修补 完boot黑砖了 还有救吗
可以尝试刷回原始boot(能在刷机包里提取到)。
这个问题可能需要禁用启动验证,方法文中有补充,但如果使用的最新版面具,不应该有问题。
开不了机 全黑 还有办法吗
fastboot也不能进吗?
对 全黑了
是什么机型呢?
小米6
可以网上找下9008刷机模式救砖。
miui14也可以这么操作么?
应该也可以的。
Sending ‘boot_a’ (196608 KB) OKAY [ 5.049s]
Writing ‘boot_a’ OKAY [ 0.076s]
Finished. Total time: 5.610s
你好,我这样之后应该是成功了,但是依旧没有root权限,很奇怪
PS F:\搞机\Android SDK 工具包> .\fastboot flash boot magisk_patched-25200_1hqd9.img
Sending ‘boot_a’ (196608 KB) OKAY [ 5.049s]
Writing ‘boot_a’ OKAY [ 0.076s]
Finished. Total time: 5.610s
PS F:\搞机\Android SDK 工具包> .\fastboot reboot
Rebooting OKAY [ 0.001s]
Finished. Total time: 0.003s
具体是这样的?请问有哪里出错了吗
抱歉,看不出是什么问题。
我是13pro,我也觉得很奇怪。不然我再重新过一遍流程~谢谢您的解答~
miui14 安卓13 要刷init_boot 不是刷boot
哦,这就不清楚哦,抽空试试看。
init boot在哪啊。没找到 大佬
boot复制到手机了 安装时找不到boot文件怎么回事呢?
点击选择文件后,在出现选择文件界面时点击左侧菜单,点击设备名称,再从里面选择试试。
D:\adb-fastboot>fastboot flash boot magiskboot.img
Warning: skip copying boot image avb footer (boot partition size: 0, boot image
size: 12823848).
Sending ‘boot’ (12523 KB) OKAY [ 0.315s]
Writing ‘boot’ OKAY [ 0.102s]
Finished. Total time: 0.499s
站长,我这刷过应该成功了,但卡在进系统的界面不动,可知道怎么回事
抱歉这个不清楚,或许可以试下金丝雀版本修补boot。
感谢回复,最后我装了个低版本的就好了。
站长,我的红米4x已解bl,身边没电脑,有办法获取root和刷第三方rec吗?
这样只有开发版才可以哦,并且需要可以开启root选项才可以。
那我现在是MIUI11稳定版,下好MIUI11开发版在设置里可以直接刷吗?
应该不行,正常需要在未结束维护周期前升级,且要求最新版。
Sending ‘boot_a’ (0 KB) FAILED (File is too large to download)
fastboot: error: Command failed
这个是什么原因
没有遇过这个问题,检查修补文件是否正常,提示文件太大?
你好 大神 我想安装字体模块 安装后重启 模块中显示未安装任何模块
抱歉,这个不清楚哦,没有装过。
手机显示FASTBOOT,usb已经连接电脑。在文件夹输入fastboot flash boot magisk_patched-25200_*****.img后,显示waiting for any device。
可能连接不良,建议看下这个解决方法。
直接用开发版系统。应用设置里面解锁root 和这个方法有什么区别吗
开发版的root功能新版本已开始不提供了,且不是完整root权限。
😊😊😊😊😊
如果是从MIUI13升级到MIUI14改如何保留root,此时手机数据是否会保留,不是增量更新的情况下,是大版本更新,5.4g,求大佬解答
抱歉,这个没有测试过。
Warning: skip copying boot image avb footer (boot partition size: 0, boot image size: 201326592).
Sending ‘boot’ (196608 KB) FAILED (Write to device failed (No such file or directory))
fastboot: error: Command failed
这是啥情况啊
如果确认命令中的文件名无误,试下重新进入FASTBOOT。
F:\venus_images_V13.0.6.1.15.DEV_20220308.0000.00_12.0_cn_cb6b0c891f>fastboot flash boot magisk_patched-25200_d0OWv.img
‘fastboot’ 不是内部或外部命令,也不是可运行的程序
或批处理文件。
这是啥情况
需要先配置fastboot命令环境变量。
如果是卡刷每次更新系统之后,是不是都要重新刷入magisk
请查看文章后面的补充部分。
没有内测号还不能升级 有点尴尬了
非常有用,帮助非常大,解决了新手不会的问题,顶顶顶
刷入recovery的时候报错 FAILED (remote: ‘Error flashing partition : Volume Full’)
mac系统可以运行 fastboot flash boot 吗?
可以的,mac版本是这个下载地址。
用此方法可以用root了,但是无法挂载系统分区怎么办,酷安下载了syslock也无法解锁分区。咋办呀
我恢复出厂设置了,开机后安装Magisk,可以直接使用ROOT,但是模块这一栏是灰色的,该怎么办啊
就是之前按照上面的操作刷过root,用了大半年了,手机装的软件太多了,我通过Recovery回复出厂设置了,重新安装Magisk还是可以使用root
对了,恢复出厂设置后,重新安装Magisk,提示“需要一些额外的安装才能使Magisk正常工作,完成后自动重启,是否继续?”
试下重新修补boot?
谢谢,我重新修补下
我重新修补文件,然后用电脑刷入,开机后还是不行,然后我直接点击Magisk旁边的“更新”按钮,方式选择“直接安装(推荐)”,然后点击开始,重启后模块可以使用了
小白问下,稳定版root,也是按上面操作吗?不用解锁Bl???
稳定版和开发版通用,操作方法是一样的,但需要先解BL。
有TG群吗?
平时访客太少,所以没弄群。
良心网站,非常感谢你,教程很详细
不客气的。
刷好面具重启后 面具软件打不开了
可以试下直接重新安装面具应用。
下载apk安装,没有超级用户和模块。手机是redmi3,想刷twrp试试看,但不知道刷什么twrp,找不到。
或许可以看下这个文章。
如果我想刷个11的系统,是直接下个包,在刷twrp的时候传入然后刷吗,有11系统包的链接吗。看了一下网址是按机型分的,不知道怎么找。
这个机型有多个版本,可以查询手机代号确认。
TWRP卡刷也可以,但不如线刷方便可靠。
小米三,是ido,找到了twrp,当时找不到可以刷的线刷包,想刷个安卓9的版本,不知道是不是双清数据后可以刷任意的包吗?
是的,第三方卡刷没有版本限制,最好备份字库再操作。
不过我刷了一个小米6的最新系统,显示设备是ido,无法刷入sagit的包。😂
根据机型选择相应的twrp,然后再选择相应机型的线刷包?
ido机型我刷cancro后小米会进不去rec页面,但我刷ido的twrp,只让我刷ido型的包(只找到了小米3安卓5)。想刷米六不知道怎么刷了
没有版本限制但不能刷其它机型的包哦。
是的,但ido只有安卓5,github上找了一下,很多都在18年废弃了。暂时是找不到redmi ido 高版本的包了
官方包应该很久就停更了,这种只能找看有没有第三方适配。
是的 找了一圈没找到,以前看过关于第三方魔改的网址,但没收藏。现在手机旧的好多软件都不能用。面具刷上后就打不开,但有root权限😓
找下软件旧版本哦,面具也可以隐藏root。
站长啊,不用回我了,我弄好了忘记输入 ./了
可以电脑添加命令环境变量,这样就不用指定路径了。
站长啊,我把magisk搞丢了,然后升级了系统。重新安装magisk以后,新版系统的BOOT,然后刷写直接提示读取失败肿么办…
刷了之后wifi开不了了,怎么办呀
没有遇过这个问题,是不是刷错了分区?还原原始BOOT看看。
我又重新试了一下,是哪个vbmeta分区的问题,我用命令可以检测到但是在刷机包中不存在,如果我按有的来的话就会导致wifi打不开
特别感谢,辛苦了,辛苦了
ramdisk否,刷了boot,有root。。。不影响使用吧(主要是,下面那个刷不进去)
如果root正常应该没影响,官方文档说个别小米机型ramdisk不能准确识别。
写,哥!
非常感谢,你的文章非常有帮助。
不客气,有用就没白写。
感谢大佬!已充值!
不客气,感谢支持!
为什么我刷入之后,手机也是一直无法开机,一直在miui界面进不去
描述模糊判断不了,卡米通常是启动验证问题,但新版本面具不用刷vbmeta了,建议先检查操作流程。
不错不错
成功了!感谢站长!
手机重启后 Magisk失去root 怎么办
是更新了系统吗?如果打开Magisk没有提示修复,只能重新root了。
更新系统前建议先看文章下面的相关补充。
出现 waiting for any device 怎么办
字面意思可能连接不良,换个USB端口或数据线试试,同时检查电脑USB驱动安装。
介绍的太细了,其实操作过就知道,无非是修补BOOT用命令刷入,简单的很
是的,大部分手机是这样,为方便新手,文中尽量补充了可能遇到问题的应对方法。