我最近安装了我的Droid X,一切似乎都很完美。我做了一些改变来构建。prop,当我做adb push build时。prop /system/我得到以下错误:未能复制'c:\build。支持“到”/system//build。prop':只读文件系统。
我该如何解决这个问题?
我最近安装了我的Droid X,一切似乎都很完美。我做了一些改变来构建。prop,当我做adb push build时。prop /system/我得到以下错误:未能复制'c:\build。支持“到”/system//build。prop':只读文件系统。
我该如何解决这个问题?
当前回答
在终端仿真器中以root用户尝试以下操作:
restorecon -v -R /data/media
其他回答
mount -o rw,remount /dev/stl12 /system
对我有用
对Jan Bergström的回答再补充一点:因为Android是基于Linux的系统,Linux中的路径包含正斜杠(../),在使用push命令时,使用“/”来定义Android设备中的目标路径。
例如:adb push C:\Users\admin\Desktop\1.JPG sdcard/pictures/
注意这里,向后斜杠用来定义从windows PC推送的文件的源路径,向前斜杠用来定义目标路径,因为Android是基于Linux的系统。您不必作为根用户来使用这个命令,而且它在生产设备上工作得非常好。
并不是所有的手机和安卓版本都安装了相同的东西。 重新安装时限制选项是最好的。
简单地重新挂载为rw(读/写):
# mount -o rw,remount /system
一旦你完成了修改,重新挂载到ro(只读):
# mount -o ro,remount /system
虽然我知道这个问题是关于真实设备的,但如果有人在模拟器中遇到类似的问题,无论2017年2月最新的工具是什么,模拟器都需要从命令行启动:
-writable-system
对于任何可写入/系统的内容。如果没有这个标志,remount或mount的任何组合都不允许写入/system。
在模拟器以该标志启动后,在adb根目录后重新安装一个adb就足以获得推送到/system的权限。
下面是我用来运行模拟器的命令行示例:
./emulator -writable-system -avd Nexus_5_API_25 -no-snapshot-load -qemu
-avd标志的值来自:
./emulator -list-avds
我认为最安全的方法是将/system重新挂载为可读写,使用:
mount -o remount,rw /system
完成后,将其重新挂载为只读:
mount -o remount,ro /system