![](/img/trans.png)
[英]"/system/bin/sh: syntax error: '(' unexpected" when specifying a file in ADB
[英]/system/bin/sh: tcpdump: No such file or directory
使用本指南,我已经生成了一个tcpdump文件以在Android设备上运行。 我在Ubuntu 12.04
上制作了该文件,而不是Fedora
。
一切工作顺利, tcpdump文件已正确生成。 我将tcpdump
文件复制到Nexus-5上的/system/bin/
并运行了以下命令。
> adb shell
# ln -s /system/bin/tcpdump /system/xbin/tcpdump
# chmod 06755 /system/xbin/tcpdump
# reboot
重新启动计算机后,当我运行> adb shell tcpdump -h
,出现以下错误:
/system/bin/sh: tcpdump: No such file or directory
有人可以帮我解决问题吗? 谢谢!
编辑1:
当我在Virtualbox的 Ubuntu计算机上运行“ tcpdump -h”时,显示以下结果:
$ tcpdump -h
tcpdump version 4.2.1
libpcap version 1.1.1
Usage: tcpdump [-aAbdDefhHIKlLnNOpqRStuUvxX] [ -B size ] [ -c count ]
[ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ]
[ -i interface ] [ -M secret ]
[ -r file ] [ -s snaplen ] [ -T type ] [ -w file ]
[ -W filecount ] [ -y datalinktype ] [ -z command ]
[ -Z user ] [ expression ]
然后,我将此tcpdump文件复制到Windows-7主机上,并将其复制到设备上。
我现在知道出了什么问题,但是以下事情起作用了:
https://github.com/chatch/tcpdump-android
这是一个下载,解压缩,配置和构建tcpdump
的脚本。 是的,您可以更改源并重建。
原来,我的tcpdump文件在此过程中不是静态编译的。
在静态编译以包括所有其他文件之后,我仍然使用/system/xbin/tcpdump
使其工作。
您也可以在上面的链接中查看评论部分。 我解释了到底出了什么问题以及如何解决。
是的,我们需要静态构建应用程序而不是使用动态链接。 如果我们在动态链接中运行,它将不会显示此类文件目录。 因此,您必须使用交叉编译器工具链静态地运行linux测试应用程序,并在平台上运行,例如imx6板
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.