解决adb push时出现的“Read-only file system“问题

出现Read-only file system问题,不是因为文件或者文件夹的权限不对,而是要push的目录对应的分区是以只读方式挂载的,网上给出的解决办法是重新以读写方式挂载对应分区,以/system分区为例,使用命令:mount -o remount rw /system,当然如果你想重新挂载系统分区需要有root权限。

但是你会发现,当你在adb shell中使用该方式重新挂载分区后,退出adb shell后用adb push命令向/system分区推送文件时仍然报错Read-only file system,这是因为在adb shell中重新挂载分区只针对当前的shell有效,在退出后该挂载方式失效。所以即使你打开两个cmd/powershell窗口,一个窗口使用adb shell重新挂载分区,在另一个窗口adb push也是不行的。

我这边最终尝试可行的方法是通过手机内置存储卡(外置SD卡也可以,但是有的手机没有外置SD卡)中转下,例如我想把计算机上的frida-server-14.0.7-android-arm64文件拷贝到手机的/data/local/tmp目录下,可以按照下面方式操作:

D:\反编译APP\platform-tools>adb push D:\frida-server-14.0.7-android-arm64 /sdcard
D:\frida-server-14.0.7-android-arm64: 1 file pushed, 0 skipped. 7.3 MB/s (20018792 bytes in 2.626s)

D:\反编译APP\platform-tools>adb shell
shell@le_x6:/ $ su
root@le_x6:/ # cp /sdcard/frida-server-14.0.7-android-arm64 /data/local/tmp
root@le_x6:/ # cd data/local/tmp
root@le_x6:/data/local/tmp # ls -l
-rw-rw-rw- shell    shell     9435529 2019-04-10 14:02 7toRushRom.apk
-rwxr-xr-x shell    shell     1165484 2017-11-14 09:39 busybox
-rw------- root     root     20018792 2020-11-10 11:51 frida-server-14.0.7-android-arm64
drwxr-xr-x root     root              2020-11-10 10:21 re.frida.server
-rw-rw-rw- root     root         3281 2020-11-09 22:10 result.txt
drwxrwxrwx root     root              2020-11-09 23:21 tinyproxy

chmod 777 frida-server-14.0.7-android-arm64                                    <
root@le_x6:/data/local/tmp # ./frida-server-14.0.7-android-arm64

文章来源于网络,原帖链接找不到了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

多学点技术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值