Android/Magisk – Sora

Uncategorized

主流 (systemless) root 方案,完全开源免费。

使用 Magisk Manager 管理 modules。

紧急卸载模块方法:删除模块目录 /data/adb/modules/module-name 。

在 Recovery 下管理 Magisk。

Magisk Not Installed

一些版本 Android ROM 和 / 或 Magisk 在安装 magisk 后常常在运行一段时间后提示 “Magisk Not Installed” 并失去 root 权限,重启后恢复正常。这是因为 Magisk daemon 进程因为某些原因被杀死了。

在 Android Pie (9.0) + Magisk 18 / 19 环境下经常出现。

Workaround: 安装 mgkdhelper 这个 Magisk module, 其原理是定时检测 Magisk daemon 进程是否存在,如果不存在则启动之。(Update: 测试某些设备此 workaround 无效)

Multi users

对多用户(包括 work profile 创建的用户,如 island 或多开app创建的),
需要在主用户的 Magisk Manager 里设置允许其它用户的 app 申请 root 权限。
可以选择“由主用户管理”,或选择“每个用户各自管理”并将 Magisk Manager 安装到其它用户里。

MagiskHide

MagiskHide 可以对某些应用完全隐藏 root,在大多数情况下,它几乎一定能完全工作。

在 MagiskHide 设置里对某个 app 隐藏 root 后需要重启手机以生效。

Magisk 的 MagiskHide 设置里不会列出其它用户的 apps。

禁用加密

几乎所有出厂版本 Android 5.0+ 的设备默认启用了 /data 用户分区数据的强制全盘加密 (FDE, Full disk encryption),影响性能并且增加耗电。(ARMv8以后的设备,即所有64位 arm 处理器均支持 AES 指令集,硬件加密对系统性能影响较小,一些设备的跑分测试显示关闭全盘加密后分数提高1%-2%左右)

这类设备的原厂 boot.img 的 ramdisk 里 fstab 的 /data 分区条目带有 “forceencrypt” 标记。forceencrypt 标记会使内核启动时检测 /data 加密状态,如果未加密会自动加密(设备第一次启动时或格式化后启动时)

刷入 Magisk 时可以设置移除 boot.img 里 ramdisk 的 forceencrypt 和 dm-verity。

在刷入 Magisk 之前,在 Recovery 里创建一个 /cache/.magisk 文件:

echo KEEPVERITY=false>>/cache/.magisk
echo KEEPFORCEENCRYPT=false>>/cache/.magisk

If you can’t access /data (TWRP can’t decrypt, etc) you can instead use either /data/.magisk or/system/.magisk, but please note that using /system/.magisk isn’t systemless.

禁用 boot.img 的 forceencrypt 原理是修改 boot.img ramdisk 的 fstab,将 forceencrypt 标记替换为 encryptable。

请注意:如果 /data 已经加密,刷入(KEEPFORCEENCRYPT=false的)Magisk并不会清除已有的加密状态。清除 /data 加密状态需要格式化 /data 分区,方法是在 TWRP 里 “Format data” (this is NOT the same as Wipe data) (In TWRP: Wipe -> Format Data) 或在 fastboot 里 fastboot format userdata。

PS. 如果你不想刷 Magisk 而只想禁用 boot.img 的 forceencrypt,可以在 TWRP 里刷入 Universal DM-Verity, ForceEncrypt, Disk Quota Disablers 这个包。(其它旧工具: FED-Patcher (ForceEncrypt Disable Patcher))。

在 Magisk Manager 的 “Advanced settings” 能看到当前系统 boot.img 里的 FORCEENCRYPT 和 VERITY 状态 (这两个复选框勾选状态对应当前系统的状态,如果修改关掉 Magisk Manager 再打开会重置;勾选或取消勾选只有在通过 Magisk Manager 安装或重刷 magisk 时才有效果)。

Source

Sharing is caring!

Leave a Reply