adb remount 失败:remount failed: Operation not permitted

本文详细介绍了在进行Android源码调试时,如何仅针对修改的文件目录进行模块编译,以及如何解决在将编译后的.so库推送到系统/system/lib目录时遇到的权限问题。包括通过adb命令在不同情况下实现对系统目录的读写操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转自:http://blog.sina.com.cn/s/blog_4ba5b45e0102ek4k.html

在进行android源码调试的时候,如果只是更改了某个目录下的某个文件的话,那么没有必要重新编译整个系统,只需要看看你修改的文件目录下的Android.mk,

看其生成的是什么so库,那么利用android的mm命令就可以模块编译了。在mm之前,需要导入env
$ source build/envsetup.sh
$ lunch
$ mm
那么自然会在out的相应目录下生成指定的so库,接着需要将其push到系统的/system/lib目录,如果你的板子可以adb remount的话,自然没有问题,那么,如果出现
remount failed: Operation not permitted ,怎么办呢?

1. 确定是否正确连接手机了
adb devices

2. 进入shell
adb shell

3. shell中输入命令(命令最前面的$和#号不用输入)
$ su 
# mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system 
# chmod 777 /system
# chmod 777 /system/lib 

# exit

4. 然后你就有系统system目录的读写权限了,例如你就可以使用adb push 把文件push到系统目录中去了,或者删除系统文件。

注意,如果你将so库push到/system/lib目录下,你是需要重启才能生效的,此外,如果是断电重启的话,则最好运行一下sync的命令,强制文件系统回写到nand flash设备,否则有可能导致数据丢失。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值