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 ...
随机推荐
- python接口自动化(get请求)
python接口自动化(get请求) get请求的目的:查询资源 一.导包 二.请求的URL 三.请求的参数 四.获取请求的URL 五.获取响应的状态码 六.获取响应的本文信息 #导包 import ...
- Servlet共享数据
共享数据: 1.域对象:有一个作用范围的对象,可以在范围内共享数据 2.request域:代表一次请求范围,一般用于请求转发的多个资源中共享数据 方法: 1.存储数据:setAttrbute(Stri ...
- mysql sql的分类、运算符、常用的数据类型
SQL (结构化查询语言)的分类 DML(数据操作语言),关键字 insert,update,delete, DCL(数据控制语言),控制权限,grand,revoke 授权,回收 DDL(数据定义语 ...
- 2018-10-29-微软-Tech-Summit-技术暨生态大会课程-·-基于-Roslyn-打造高性能预编译框架...
title author date CreateTime categories 微软 Tech Summit 技术暨生态大会课程 · 基于 Roslyn 打造高性能预编译框架 lindexi 2018 ...
- VBA当中的时间日期函数
目前还没发现VBA中有直接的函数能够将完整的年月日时分秒的文本格式日期转换成日期型日期的,那只能使用间接实现的办法.用dateserial + timeserial的方法.因为dateserial和t ...
- Android开发 LiveData与MutableLiveData详解
前言 LiveData与ViewMode是经常搭配在一起使用的,但是为了不太混乱,我还是拆分开来说明,此篇博客只讲解 LiveData 与 MutableLiveData的概念与使用方式(但是会涉及到 ...
- java8--Stream的flatmap与map异同的理解
大纲: 异同点 示例 一.异同点 他们的相同点是接收的入参都是一个function. 不同点这个入参function的返回不同.map返回一个对象,flatmap返回一个stream. 这就使得map ...
- 廖雪峰Java15JDBC编程-3JDBC接口-5JDBC连接池
1. JDBC连接池 1.1 JDBC连接池简介 线程池可以复用一个线程,这样大量的小任务通过线程池的线程执行,就可以避免反复创建线程带来的开销. 同样JDBC可以复用一个JDBC连接 JDBC的连接 ...
- Nacos v0.7.0:对接CMDB,实现基于标签的服务发现能力
Nacos近期发布了0.7.0版本,该版本支持对接第三方CMDB获取CMDB数据.使用Selector机制来配置服务的路由类型.支持单机模式使用MySQL数据库.上线Node.js客户端,并修复了一些 ...
- 总结加密、机密jar中的class
1.加密和解密部署到jboss中间件中的的单个class文件,原理:使用“java源程序加密解决方案(基于Classloader解密) (2014-07-13 11:31)”blog即可实现: imp ...