1

我正在尝试在我的 ROM 中包含 SuperUser 应用程序和 su 二进制文件(通过 AOSP 方法)。我正在使用android-6.0.1_r79 (Marshmallow)我的基本 AOSP 代码。

[ [类似的问题已经在前面回答过,但之前的所有讨论都是在 Android KitKat 之前进行的,并且不能解决当前的 AOSP/超级用户问题。] ]

我按照这里的说明进行操作,经过几次小插曲,在谷歌的帮助下,我成功构建了。我正在使用此处列出的 su 存储库。

通过添加一些日志,我能够验证存在的 su 二进制文件/system/xbin来自wvengen/su.c 。但是,ROM 中没有超级用户应用程序。

我面临的第二个问题/system/xbin/su是只能访问 adb shell 而不能访问其他应用程序。默认情况下 su 二进制文件具有以下权限:

root@generic:/system/xbin # ls -l | grep su
-rwsr-x--- root     shell      488692 2017-04-16 16:20 su

我将其更改为:

root@generic:/system/xbin # chmod +rx su
root@generic:/system/xbin # chmod +s su
root@generic:/system/xbin # ls -l | grep su
-rwsr-sr-x root     shell      488692 2017-04-16 16:20 su

但仍有其他应用程序无法获得 su 访问权限

root@generic:/system/xbin # run-as com.test
root@generic:/system/xbin $ ls -l | grep su
lstat './su' failed: Permission denied

而所有其他二进制文件在 com.test 下都是可执行的(例如 /system/xbin/sqlite3)。

我还尝试更改fs_config.c中的 su 权限,但没有成功。

所以请给我一些指示:

  1. 了解为什么我的 ROM 中没有 Superuser.apk
  2. 如何使 su 二进制文件可用于其他应用程序
4

0 回答 0