CentOS源码安装Wireshark
(2019年2月19日注:这篇文章原先发在自己github那边的博客,时间是2016年8月25日)
Wireshark为网络管理员常用的一个网络管理工具,通过使用这个软件,我们可以对本机网卡上的经过的数据包进行分析,通常包括了当前TCP/IP协议下几乎所有的数据包,我们可以根据抓取下来的数据包进行分析,从而得出本机附近的网络情况到底如何,以及网络的部分路由情况。
本次所使用的操作系统是CentOS 6.5桌面图形版,比较简单,分为两种形式的安装,一种是直接安装,另外一种是源码安装。
一、直接安装
只需要两句命令便可以完成安装,中间需要安装什么就按y。
[root@JCChan ~]# yum install wireshark // 安装软件
[root@JCChan ~]# yum install wireshark-gnode // 安装软件的桌面显示,便于操作

这种方法能快速安装一系列的软件及其依赖包,我们知道,在Linux中,软件的安装最麻烦的就是依赖包的安装系列,特别是基于编译好的rpm或者deb包,yum安装或者是apt-get安装能比较快捷的解决这个问题,但缺点就是安装源的软件版本一般不会是最新的,或者甚至是没有这样子的安装包,这时候就不能使用yum安装了,就要使用我们的源码安装。
二、源码安装
对于软件来说,源码是指编写的程序,比如C语言,C++语言,Java语言等,是可以被人们所能读懂的。而另一种软件的代码是指二进制文件,人们读不懂,但是计算机能够明白它写的是什么,从源码到二进制文件的过程叫做编译,对于源码安装来说,编译过程是最漫长的。源码安装有个最大的好处就是你可以把软件安装到你所需要的地方,而不像yum会安装到各种各样的地方,另外源码安装可以安装软件的最新版本。
1.先下载需要的两个安装包,分别是libpcap和wireshark source code。

2. 下载解压libpcap和wireshark。
[root@JCChan 下载]# tar zxvf libpcap-1.7..tar.gz //解压压缩包
[root@JCChan 下载]# tar xvf wireshark-1.12..tar.bz2 //解压压缩包
如下图所示,可以看到Wireshark软件是由很多个C文件写成的。

3. 由于libpcap是wireshark的依赖包,因此需要先编译它。
[root@JCChan 下载]# cd libpcap-1.7.
[root@JCChan libpcap-1.7.]# ./configure
出现第一个错误,没有合适的C编译器,不能编译C文件。

解决方案:安装gcc软件环境,如下图所示。
[root@JCChan libpcap-1.7.]# yum -y install gcc //安装gcc

4. 重新开始编译,出现第二个错误,没有flex软件包。

解决方案:安装flex软件包。
[root@JCChan libpcap-1.7.]# yum install flex //安装flex软件包
5. 继续编译,这次就可以成功编译了。

6. 开始安装
[root@JCChan libpcap-1.7.]# make && make install
出现如下的错误,yacc命令没找到。

解决方案:安装byacc软件包。
[root@JCChan libpcap-1.7.]# yum install byacc //安装byacc
7. 再重新安装一次,没有报错误信息,代表libpcap安装成功。

8. 进入wireshark安装包的目录,同样开始编译,出现错误,需要一个c++编译器。

解决方案:安装一个C++编译器。
[root@JCChan wireshark-1.12.]# yum -y install gcc gcc-c++ gdb //安装c++编译器
9. 重新编译,出现下一个错误,Qt is not available.

解决方案:安装qt相关的包,如下图所示。
[root@JCChan wireshark-1.12.]# yum -y install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer

10. 再次重新编译,继续有错误,这次是要安装gtk+3。

解决方案:安装gtk+2,到时使用gtk+2来编译,gtk+3的安装方法暂时还没有找到。
[root@JCChan wireshark-1.12.]# yum -y install gtk*
[root@JCChan wireshark-1.12.]# ./configure -with-gtk2
这样子就能编译成功了。

11. 开始安装,还是需要比较长的时间的,但是能安装成功!如下图所示
[root@JCChan wireshark-1.12.]# make && make install


12. 在当前目录下敲入一下命令,就能打开软件,并且打开到界面了!
[root@JCChan wireshark-1.12.]# ./wireshark


13. 抓包结果测试,可以看到有广播的ARP包以及有SSDP守护进程。

如今经过一年的洗礼,已经早已习惯了Linux命令行界面,然而重新看回这些自己学习Linux时做过的小项目,依旧收获颇丰。
CentOS源码安装Wireshark的更多相关文章
- CentOS源码安装QT
在VirtualBox上的CentOS下安装qt-everywhere-opensource-src-4.8.4 ,执行 ./confiure时失败,失败信息为:Basic XLib function ...
- 简单说明CentOS源码安装程序
第一步.安装依赖包.一般官网会有依赖关系,没有就网上搜索一下. 第二步.下载源码包,上传至CentOS服务器 第三步.解压缩 第四步.进入源码文件夹 第五步.执行./configure,这一步主要是为 ...
- CentOS 源码安装MySQL5.7
一.安装方式源码安装,源码包名称mysql-boost-5.7.27.tar.gz,此版本包含boost库,在解压后的boost路径下.安装时,可以-DDOWNLOAD_BOOST=1 -DWITH_ ...
- linux(centos)源码安装git
最近使用一个开源库,部署的的时候需要用git克隆依赖库.刚好系统没安装git.就尝试了源码安装git. 源码下载地址:http://codemonkey.org.uk/projects/git-sna ...
- CentOS源码安装 Tomcat/8.0.24
依个人的习惯,喜欢将源码安装在/usr/local这个目录下面: 第一步:下载源码 wget http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.2 ...
- Centos源码安装Python3
CentOS7默认安装了python2.7.5,当需要使用python3的时候,可以手动下载Python源码后编译安装. 下载python(https://www.python.org/ftp/pyt ...
- centos 源码安装php5.5
系统环境: CentOS 6.5 / 7.0 x86_64 Fedora 20 x86_64下载 PHP 源码包 # wget http://cn2.php.net/distributions/php ...
- CentOS源码安装搭建LNMP全过程(包括nginx,mysql,php,svn)【转】
转自:http://blog.csdn.net/yanzi1225627/article/details/49123659 服务器环境为:CentOS6.5 64位 目标:搭建LNMP(Linux + ...
- centos 源码安装git
(1) 添加rpmforge源 wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686 ...
随机推荐
- 20-MySQL-Ubuntu-数据表的查询-子查询(九)
子查询(嵌套查询) select * from students where height=(select max(height) from students);
- List<Map>中根据map的同一指标项数据——去重代码
先看网络上,博客经常出现的错误代码: for(ABatchAddCheckVO aBatchAddCheckVO : addList){ dto.put("aac001",aBat ...
- (转)Google Protocol Buffer 的使用和原理
转自:https://www.ibm.com/developerworks/cn/linux/l-cn-gpb/index.html 简介 什么是 Google Protocol Buffer? ...
- 学习 Apache FileMatchs 规则
# 凡是匹配到 zip,gz,rar,box,log结尾的文件,进行下面的规则进行匹配 <filesmatch ".(zip|gz|rar|box|log)"> Ord ...
- PHP 添加 跨域头
我将下面的代码,放在Codeigniter 项目中的index.php 中的 header('Access-Control-Allow-Origin: *'); header('Access-Cont ...
- Remember, every day is a miracle.
Remember, every day is a miracle.请记住,每一天都是一个奇迹.
- 用while实现登录操作(3次过后,输入yes,使counter置0,还可以玩)
用while实现登录操作(输入yes,使counter置0,还可以玩)#_author:Administrator#date:2019/10/24user_name="star"p ...
- Spring+Mybatis常见问题随笔
错误1:无法绑定指定方法 异常堆栈:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 原因 ...
- 云-腾讯云-云直播:云直播(LVB)
ylbtech-云-腾讯云-云直播:云直播(LVB) 云直播(Live Video Broadcasting,LVB)依托腾讯多年的音视频技术平台,以及全球海量加速节点和领先的音视频 AI 技术,为开 ...
- vue.js+element ui Table+spring boot增删改查
小白初学,不懂的还是太多了,找了好多资料才做出来的先记录一下 1.先用Spring boot创建一个包含了增删改查的项目 2.创建vue.js项目 3.安装Element UI (1)进入项目文件夹下 ...