我正在尝试为android模拟器设置hosts文件。我看到了这个建议:
adb remount
adb push hosts /etc/system/hosts (most tutorials suggest
this file)
adb push hosts /system/etc/hosts (some VM systems seem to
prefer this file instead!, for me this worked)
但是当我执行adb重装时,它会写“重新安装/ superblock失败:权限被拒绝”。我要使用adb shell,但它也会写一个错误。
generic_x86:/ # mount -o remount,rw /system
mount: '/system' not in /proc/mounts
1|generic_x86:/ # mount -o rw,remount,rw /system
mount: '/system' not in /proc/mounts
generic_x86:/ # mount -o remount,ro /system
mount: '/system' not in /proc/mounts
1|generic_x86:/ # whoami
root
我两次重新安装Android Studio都没有帮助。有人可以帮忙吗?
答案 0 :(得分:1)
使用-writable-system标志使adb重装工作。主机已替换为新文件。
启动仿真器为: emulator.exe-可写系统-avd Nexus_5X_API_28_x86
答案 1 :(得分:0)
hosts文件位于不允许覆盖文件的目录中。因此,您应该首先将主机复制到其他位置,进行编辑,然后再复制回去。
例如,让我们研究标准仿真器:
在模拟器打开时运行以下命令:
adb devices
此命令将显示正在运行的仿真器。运行以下命令以禁用仿真器的只读行为:
adb -s emulator-5554 remount
此步骤之后,应该成功重新安装日志。然后,您应该将模拟器复制到另一个目录进行编辑:
adb -s emulator-5554 pull /system/etc/hosts ~/Desktop/
此步骤之后,它将记录有关文件传输成功的信息。现在,您可以编辑主机文件。编辑后,您应该将文件推回去。首先,您应该重新启动adb:
adb reboot
仿真器将自行重启。之后,您可以重新安装adb:
adb -s emulator-5554 remount
重新安装后,您可以向后推送主机文件:
adb -s emulator-5554 push ~/Desktop/hosts /system/etc/hosts