无法将android系统目录更改为rw
Posted
技术标签:
【中文标题】无法将android系统目录更改为rw【英文标题】:Cannot change android system directory to rw 【发布时间】:2016-08-08 19:27:07 【问题描述】:我正在尝试将 /system 重新挂载为 rw 文件系统,以便将一些文件推送到 /system/framework。它是一个运行 android 6.0 x86 映像的 android 模拟器。
$ mount
...
/dev/block/vda /system ext4 ro,seclabel,relatime,data=ordered 0 0
...
那我做
su
mount -o rw,remount /system
mount
...
/dev/block/vda /system ext4 rw,seclabel,relatime,data=ordered 0 0
...
此时我认为我还可以。然后我在主机上做:
adb push test.jar /system/framework/
但是我看到了:
failed to copy 'test.jar' to '/system/framework/test.jar': Read-only file system
然后我回到adb:
mount
...
/dev/block/vda /system ext4 ro,seclabel,relatime,data=ordered 0 0
...
它又回到了 ro。
当我再次尝试重新安装时,这次它甚至不允许我这样做:
mount: Read-only file system
255|root@generic_x86:/ #
那么我在哪里做错了?谢谢!
___ 编辑____
通过 adb root 命令以 root 身份重新启动 adbd 解决了我的问题。
【问题讨论】:
你试过bradcurtis.com/hosts-files-and-the-google-android-emulator 吗?我不确定命令adb remount
是否仍然有效,所以我还没有把它作为答案
@PawełZmarzły 不,它不起作用。保存行为作为我的方法。在我执行 adb remount 后它变为 rw。但是,当我实际向 /system 写入内容时,它会引发错误并改回 ro
@darklord 你知道如何推送文件了吗?更新我的 sdk 工具时,我也遇到了同样的问题
@Satya 我没有,但它应该与最近 android 版本中引入的 selinux 有关。 (请参阅 android 文档)我可以让它在 Android 4.2 上运行。
@darklord 我可以推送 Android 6.0,但是当我将构建工具更新到 25 版本时,我收到了这个错误。尝试了很多方法,但都失败了
【参考方案1】:
根据@raed-hosny 的回答,我解决了这个问题
$ emulator -writable-system -netdelay none -netspeed full -avd Nexus_5X_API_25
在您的日志中,您会看到类似这样的内容
sh: 1: glxinfo: not found
emulator: WARNING: System image is writable
sh: 1: glxinfo: not found
emulator: Listening for console connections on port: 5554
emulator: Serial number of this emulator (for ADB): emulator-5554
【讨论】:
错误:远程只读文件系统【参考方案2】:尝试使用 -writable-system 从终端启动模拟器,以便您可以以旧方式将 /system 挂载为可写
【讨论】:
你能给出确切的命令吗?可写系统是什么的论据? mount 命令还是 adb? @user13107 他指的是 sdk/tools/emulator 上的可执行文件 回答user13107的问题:emulator -writable-system -netdelay none -netspeed full -avd THE_NAME_OF_YOUR_EMULATOR
【参考方案3】:
另一个答案对我来说很接近,但缺少一些步骤。如果服务器尚未运行,则必须先启动它:
adb start-server
emulator -writable-system -avd Pixel_2_API_24
然后你可以挂载为可写:
adb root
adb remount
https://docs.mitmproxy.org/stable/howto-install-system-trusted-ca-android
【讨论】:
以上是关于无法将android系统目录更改为rw的主要内容,如果未能解决你的问题,请参考以下文章
如何将ProfilePictureView更改为圆形图像。 Drawable无法正常工作
无法在 Xcode 11 Beta 中将系统字体更改为自定义字体