在 12.04 中安装 Wireshark 1.8.3

在 12.04 中安装 Wireshark 1.8.3

为了能够同时在多个接口上捕获流量,我尝试安装 wireshark 1.8.3。但是,我遇到了以下错误:

capture-pcap-util.c:274:1: error: static declaration of ‘pcap_datalink_name_to_val’ follows non-static declaration
/usr/local/include/pcap/pcap.h:326:5: note: previous declaration of ‘pcap_datalink_name_to_val’ was here 
capture-pcap-util.c:289:1: error: static declaration of ‘pcap_datalink_val_to_name’ follows non-static declaration 
/usr/local/include/pcap/pcap.h:327:13: note: previous declaration of ‘pcap_datalink_val_to_name’ was here

经过一番搜索后,我发现有人可以通过重新安装libpcap-dev或以下命令来修复它:

  1. rm & rmdir中的任何文件/usr/include/pcap' and '/usr/local/include/pcap
  2. 下载 libpcapsudo apt-get install libpcap0.8-dev
  3. ./autogen.sh在 wireshark 目录中
  4. make clean & make & make install

但是,它们都无法在 Ubuntu 12.04/wireshark 1.8.3 上运行。

有人可以帮忙吗?

答案1

我不建议在 Ubuntu 上编译 Wireshark(虽然可以,但是对于普通用户来说,有太多奇怪的库依赖关系难以排除故障)。

如果您只是希望能够嗅探多个接口,那么 1.8.0 之后的任何版本都可以做到这一点。幸运的是,有一个 PPA(见下文)可以让您安装 Wireshark,而无需从源代码进行编译。

您可以安装提供 Wireshark 1.8.2 至 12.04 的 PPA 包,而不必从源代码编译。最新的 wireshark 版本是 1.8.4,Ubuntu 12.04 存储库中的最新版本是 1.6.7。以下提供了安装 wireshark 1.8.2 的说明

要安装 PPA,请运行以下命令:

sudo add-apt-repository ppa:eugenesan/ppa
sudo apt-get update
sudo apt-get install wireshark

要启动 Wireshark,请运行命令sudo wireshark

笔记:有必要以 sudo 身份运行该应用程序,因为需要提升的权限才能访问原始网络堆栈。

有关详细信息,请参阅For more information, see尤金圣 PPA

此存储库包含针对最近两个 LTS 版本和最新 LTS 前版本(包括 smartgit 等)的定制、更新、移植和反向移植软件包集合。我建议您查看一下,看看您想要的反向移植/软件包是否可能包含在此处。

1.8.2 之后的版本似乎无法在没有编译的情况下使用,并且 12.04 中的库似乎存在一些问题。

答案2

在 Ubuntu 12.04 系统上,我还没有对 libpcap 进行任何操作,但我能够下载 Wireshark 1.8.6 源代码 tarball,解压它,运行配置脚本,并使用“make”进行编译。

不是run autogen.sh。这是为那些试图从 Subversion 存储库构建 Wireshark 的人准备的工具。如果您已经下载了源代码 tarball,只需运行 configure 脚本 - 无需autogen.sh事先运行。您也无需在刚刚下载并解压的源代码 tarball 上执行make clean任何操作。make

答案3

尝试这个:

sudo apt-get install wireshark
sudo groupadd wireshark
sudo usermod -a -G wireshark YOUR_USER_NAME
sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod 750 /usr/bin/dumpcap
sudo setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap
sudo getcap /usr/bin/dumpcap

相关内容