为什么无法从shell获得root访问权限?


14
> adb shell
sh-4.1$ su
Permission denied

我已经成功将手机植根。我知道这一点是因为我能够在SD卡上安装应用程序,并且我有一个名为SD Maid的程序,该程序能够以root用户权限运行。


在SDCard上安装应用程序不一定需要root用户,SDMaid也可以(部分地)在没有root的情况下工作,因此没有证据。从外壳的报价,而另一方面,似乎证明了你是不是成功与你的生根。检查已安装的应用程序时,是否可以使用SuperUser或SuperSU?是否收到需要确认的提示,例如“ SDMaid请求的根权限”?
伊兹

@Izzy我收到类似的通知SD Maid has been granted super root permissions吗?此外,我还安装了play.google.com/store/apps/…,它的确要求我提供超级用户确认,并获得成功。
Kshitiz Sharma

@Izzy,我希望与众不同。在SDCard上安装应用程序确实需要使手机生根。你能指出一个相反的例子吗?
Kshitiz Sharma

确定:转到“设置”->“应用程序”->“管理应用程序”,然后逐步进行浏览。只需点击相应的按钮即可移动支持它的应用程序。第二:在第一个屏幕快照中的“ Sleepy Timer”的“月亮图标”下方,查看AppMonster:该应用程序支持无根的App2SD。AppMonster可以移动它(不需要root),甚至可以这样做。从Android 2.2开始就原生支持App2SD。按照标签常见问题解答:App2SD
Izzy

对于先前的评论:确定,因此完全确认该根有效。再次,请检查您的应用程序是否有SuperUser / SuperSU,这次启动该应用程序。在其配置中,它应该让您看到它已存储了哪些权限。也许您曾经不小心检查了“记住”并点击了“拒绝”按钮以获取adb shell。如果找到相应的条目,只需将其删除。下次应再次询问您,然后确保单击正确的按钮:)
Izzy

Answers:


14

这里

您可能需要从开发人员设置菜单激活adb root。如果从cmd行运行adb root,则可以得到:

系统设置禁止root访问-在设置中启用->开发选项

通过系统设置禁用根访问权限-在设置中启用->开发选项一旦激活根选项(仅ADB或Apps和ADB),adb将重新启动,您将能够从cmd行使用root。


5
此设置并非在所有ROM中都可用(例如在我的LG Optimus 4X中找不到该设置,它当然是植根于此的)。恕我直言,这是CyanogenMod的专业。
伊兹

您对Android有什么了解?>根访问权限已通过系统设置禁用-在设置中启用->开发选项一旦激活了根选项(仅ADB或Apps和ADB),adb将重新启动,您将能够从cmd行使用root。
Nizzy

2

Chainfire在Google Play上有一个名为ADBD Insecure的应用程序。如果您的设备在运行设备Stock ROM时已被植根,则此应用可让您以根模式运行adbd。我最近才发现这个应用程式。

Google Play上的版本不是免费的,但是有免费的版本。免费版本的链接链接到Google Play中的应用程序说明中。

这个应用程式的优点是,可以与已扎根的Stock ROM一起使用。如果您使用的是自定义内核或自定义ROM,则可能不需要此应用程序。但是,如果您仍在使用已存根的ROM,则可能需要为设备获取此应用程序。

如果您的设备已root,则adbd Insecure使您可以在root模式下运行adbd。(请注意,如果您正在运行自定义内核,则可能已经实现了此功能)

如果您的设备上运行的是库存(由电话制造商生产)内核,则即使您已扎根,adbd也有可能以“安全”模式运行。此应用程序使您可以在“不安全”模式下运行adbd,从而使您可以在“ adb shell”中进行根访问,可以通过“ adb push / pull”访问系统文件和目录,并可以运行“ adb remount”命令您的/ system分区可写。

在此处输入图片说明


我尝试从植根于Magisk的Oneplus 5 Nougat上的原始XDA线程尝试免费的ADBD Insecure应用程序,但该应用程序无济于事,并且在USB调试模式下中断了MTP连接,直到重新启动手机为止。
Vadzim '18年

0

如今,Magisk通常用于生根。

我发现在Oneplus 5(Oxygen OS,Nougat)上,只需转到Magisk Manager应用程序,打开超级用户权限屏幕并切换Shell(com.android.shell)即可解决adb su权限被拒绝的问题。


0

从开发人员设置菜单为adb启用root访问权限。然后连接您的USB电缆并键入:

adb root

它应该返回

restarting adbd as root

现在重新启动外壳

adb shell

Stock Android在开发选项中不提供“对adb的根访问”。adb root只能在userdebugROM上使用:为什么“ adb root”什么都不做?
Irfan Latif
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.