在使用gdb与adb时需要注意一些类似于权限的问题,比如设备需要root,设备root后命令行下需要
切换用户到root用户下操作,又比如相关的目录或文件是否有足够的权限等等,总结为如下:
(以下示例所给的部分权限可能过大,因为是实验,所以命令仅供参考)
adb devices 显示已连接的设备 adb shell --》进入shell环境 su ->切换至root用户 adb push 本地目录文件 远程主机目录文件 -》上传文件或目录到远程主机 adb pull 设备目录文件 本地目录文件 -》从目标设备下载文件到本地 chmod 777 /system 修改gdb上传目录的权限 chmod 777 /system/bin 修改gdb上传目录的权限 adb push D:gdb /system/bin 上传gdb到/system/bin目录 adb push D:gdbserver /system/bin 上传gdbserver到/system/bin目录
adb push D:myfile.pdf /sdcard/ 发送文件到设备SD卡:
adb pull /sdcard/myfile.pdf D: 从设备SD卡获取文件:
chmod 777 gdb 修改gdb和gdbserver的权限为可执行 chmod 777 gdbserver ps | grep com.***.*** 查找程序的进程 ls /proc/*****/task/ (*****为上一条命令后出现的第一个进程数字组合) cd /system/bin gdb上传到/system/bin/目录下的,所以执行gdb命令式先跳转至该目录下 ./gdb -pid 20553 gcore