在KernelSU环境中,当SELinux设置为Enforcing模式时,使用su命令切换到Root权限后,执行pm或am这类调用cmd指令的操作会出现报错,提示'cmd: Failure calling service package: Failed transaction (2147483646)'。这个问题在使用KernelSU原版时并不会出现,即使SELinux为Enforcing。用户期望KernelSU的表现能与原版相同,即正常执行pm或am指令并返回帮助信息。以下是详细的复现步骤和设备信息。
复现步骤
- 打开终端模拟器(例如MT管理器的终端模拟器,并新建系统会话)。
- 输入su命令进入Root会话。
- 运行pm或am指令(本质上都是调用cmd指令)。
观察到报错信息:
cmd: Failure calling service package: Failed transaction (2147483646)
预期行为
正常执行pm或am指令,并返回帮助信息(与KernelSU原版表现一致)。
屏幕截图
日志信息
无响应
设备信息
- 设备:Redmi Note 12 Turbo
- 操作系统版本:Android 15, HyperOS 2.0.203.0.VMRCNXM
- KernelSU版本:SukiSU Ultra v3.1.8-5ba4f73e@main
- 内核版本:5.10.226-android12-9-00064-gea4a6f067d3f-ab12969919
附加信息
SELinux状态:Enforcing
评论已关闭