您的位置:首页 > 大数据 > 人工智能

adb remount 失败:remount failed: Operation not permitted

2014-11-01 10:16 519 查看
adb remount 失败:remount failed: Operation not permitted

关于ADB的使用,这里再说明下:常用命令

adb shell - 登录设备shell,后面也可直接跟运行命令。如:adb shell rm -r /system/sd/app

adb pull - 从手机中下载文件到电脑上。如:adb pull /data/app_s/Stock.apk C:\\Stock.apk

adb push - 从电脑中上传文件到手机上。如:adb push C:\\Stock.apk /data/app_s/Stock.apk

adb install - 安装软件到手机上。如:adb install C:\\apps2sd.apk

adb uninstall - 卸载手机上的软件。如:adb uninstall linda.apk
抓取系统Log信息:

adb logcat > d:\log.txt 这样就将系统信息下载到本地D盘目录下

如果是调试3G 模块,就需要这样组合用

adb logcat -b radio -b main -b system -v time d:/log.txt 来抓取log信息

等待adb 设备

adb wait-for-device - block until device is online

使用adb root 权限

adb root - restarts adb with root permissions

使用

adb push pc中桌面驱动文件*.ko /vendor/modules/
之后强制文件系统回写到nandflash中,以免断电掉失
adb sync

在使用adb remount 重新打开android 设备写模式,即刷机模式时,遇到问题:remount failed: Operation not permitted

使用了下面文章的方法,还是没有用,最后发现问题的根源所在: 编译的系统是user版本,故不能使用该命令,make clean 之后编译release版本就OK了

参考文章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设备,否则有可能导致数据丢失。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: