1. 程式人生 > >adb remount 失敗:remount failed: Operation not permitted

adb remount 失敗:remount failed: Operation not permitted

post wrap env 軟件 mtd opera sync 讀寫權限 .cn

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設備,否則有可能導致數據丟失。


adb remount 失敗:remount failed: Operation not permitted