http://blog.csdn.net/wirelessqa/article/details/8624208
有些機器root后通過adb shell 后,默認不是root用戶,需要輸入 su才能切換到root,這樣在執行批處理或想將文件放到手機系統中會有問題:
方法一:命令行
1 |
adb shell "su -c 'sleep 1'" |
2 |
adb start-server |
3 |
adb push tcpdump /data/local/tcpdump |
方法二:用工具
adbd Insecure(超級adbd)
下載地址:http://pan.baidu.com/share/link?shareid=322594&uk=436271564
說明:
1.打開adbd,勾選啟動超級adbd,這樣就可以直接有root權限運行adb shell命令了
2.因為超級用戶不是永久性的,重啟后會失效,所以勾選開機時啟用會省掉每次開啟的麻煩
注:上面這幾條命令也許對一部分手機有用,但是對小米手機穩定版本是沒有用的。因為小米的穩定版本不支持ROOT,如果非要ROOT需要安裝MIUI開發版
方法三:先將文件放到SDCARD再放入系統
1.利用其它工具將文件(tcpdump)放入sdcard中
2.adb shell進入shell環境,su獲得root權限(adb shell就默認獲取到root權限的就不用su了)
3.cat /sdcard/文件 >系統文件路徑,如下:將tcpdump放到系統文件/data/local/下
注明一下:shell命令cp和rm在這里都是不支持的,都會報錯,所以直接用cat來拷貝就可以了。
方法四:將文件放入有權限的文檔中
1 |
bixiaopeng @bixiaopengtekiMacBook -Pro ~$ adb push /Users/bixiaopeng/Downloads/tcpdump /data/local/tmp/tcpdump |
2 |
2899 KB/s ( 645840 bytes in 0 .217s) |
3 |
bixiaopeng @bixiaopengtekiMacBook -Pro ~$ adb shell |
4 |
shell @android :/ $ su |
5 |
shell @android :/ # ls data/local/tmp/ |
6 |
busybox |
7 |
d10519f9d1f65446873da10267a674bc.apk |
8 |
tcpdump |
9 |
shell @android :/ # |
1 |
系統不允許我們放到/data/local中,那我們就放到權限比較大的tmp中 |