【转载】tcpdump rpm方式安装细节

这篇具有很好参考价值的文章主要介绍了【转载】tcpdump rpm方式安装细节。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言
挺久没更新了,先当成个博客来写吧,我是佛系更新,大家佛系随便看看就行,后续应该不会力求一定要高质量文章才发出来,就记录记录一个普普通通、平平凡凡的码农的生活。

问题背景
有些东西,说起来很简单,实操的时候,会发现存在各种细节。

前一阵排查一个线上问题,链路较长,排查这种问题基本就是靠日志,日志不足时,靠网络抓包,在linux上基本就是使用tcpdump。

但是,因为我们这边开发是没有线上机器权限的,所有线上操作都是要运维同事来执行,运维同事很忙,经常座位上围着一堆人,所以每次排查问题的时间很紧迫。

因为知道机器上没有tcpdump,我就自己在网上下载了一个tcpdump的rpm包,发给运维同事,然后在约好的时间,几个开发同事一起去他那边排查。运维同事登上跳板机,再登上主机,把rpm包传上去,一执行,结果报错了,tcpdump还依赖libpcap这个rpm。第一次安装就这么失败了,但也不能浪费这次定位的时间,只能先不抓包了,看看日志吧。

第一天靠日志也没分析出结果,第二天,这次做了准备工作,提前准备好了全部的包,这次怎么获取的呢?

在开发环境的centos 7.x机器上执行:

yum install --downloadonly --downloaddir=/root/download tcpdump
复制
执行完成后,就在/root/download拿到了tcpdump的依赖包:

[root@strategy-stg-app-2 download]# ll
total 564
-rw-r–r-- 1 root root 141376 Jun 21 15:45 libpcap-1.5.3-11.el7.x86_64.rpm
-rw-r–r-- 1 root root 431300 Jun 21 15:45 tcpdump-4.9.2-3.el7.x86_64.rpm
复制
这次发过去后,在某台机器上安装了,没问题,可以抓包,挺好。

然后,问题来了,前两天,又遇到一个问题,需要抓包,这次是另一台机器,于是按照老习惯,又把上面这两个包发过去了,结果这次马失前蹄,安装libpcap就报错了:

file /usr/lib64/libpcap.so.1.5.3 from install of libpcap-14:1.5.3-11.el7.x86_64 conflicts with file from package libpcap-14:1.5.3-8.el7.x86_64
复制
我也懵了,还不知道怎么处理这类冲突问题,然后最后就是没能抓包,打乱了之前的问题排查思路。

我归结了下问题,其实就是,不管线上是什么机器,最好是对方给我们一个操作系统的版本号,我们就能对症下药,知道应该安装什么版本的tcpdump。

centos版本/查询对应版本的rpm
[root@xxx download]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core)
复制
假设运维同事给了线上机器的版本后,我们如何决定安装什么版本的tcpdump呢?

我们要在开发环境也去搭建一个对应版本的机器来验证吗,理论上来说,是应该这样,但是,这也太重了。

我的方式是这样,我先查了下,centos目前有这么些版本:

https://en.wikipedia.org/wiki/CentOS#cite_note-123

有兴趣的同学观察下,标红的两列有对应关系的。

知道了机器的centos版本后,如何知道对应的tcpdump是什么版本呢?

这边有个rpm查询网站,http://rpm.pbone.net/

看下图,会发现centos 7.5和centos 7.6,搭载的tcpdump版本就是不一样的,一个是4.9.2-3,一个是4.9.2-4,

4.9.2表示version,而-3表示第三个Release,-4表示第4个Release,应该是有些小差别。

通过上面的方式,我们知道了应该使用什么版本的rpm,接下来,去通过什么方式获取呢,前面使用的如下方式,很可能只能获取到非对应版本的rpm:

yum install --downloadonly --downloaddir=/root/download tcpdump
复制
如何才能拿到想要的版本的rpm呢?

目前,对于tcpdump这个来说,我觉得直接手动下载rpm也是一个可以接受的方式。

在手动下载之前,需要知道tcpdump有哪些依赖的rpm?

这个可以通过前面的这种方式:

yum install --downloadonly --downloaddir=/root/download tcpdump
复制
或者下图这样,也能看个大概:

我们这里从上图看到的就是,如果要安装tcpdump的14:4.9.2-3版本,依赖的libpcap需要满足:

libpcap >= 14:1.5.3-10
复制
此时,去找对应版本的rpm来下载就行了。

冲突问题怎么解决
前言里提到的冲突问题,又如何解决?

file /usr/lib64/libpcap.so.1.5.3 from install of libpcap-14:1.5.3-11.el7.x86_64 conflicts with file from package libpcap-14:1.5.3-8.el7.x86_64
复制
上面说了,centos 7.x会有对应的版本的tcpdump,tcpdump依赖libpcap,但是很可能,线上机器在安装别的什么软件的时候,就安装了一个低版本的libpcap(如上面报错中提到的14:1.5.3-8版本)。

14:1.5.3-8版本的rpm包中,包含的文件,也有/usr/lib64/libpcap.so.1.5.3;此时,我们再去安装高版本的libpcap,如14:1.5.3-11时,14:1.5.3-11里也包含了一个libpcap.so.1.5.3要解压到/usr/lib64目录,此时就可能覆盖旧版本的,此时就会报错。

如果我们不想覆盖旧版本,就只能去找个低版本的tcpdump来安装,也就是一个依赖的libpcap为14:1.5.3-8版本的tcpdump。

怎么找呢,就是去http://rpm.pbone.net/查看各个tcpdump,依赖的libpcap的版本。

资源网站
http://mirror.centos.org/centos/7/os/x86_64/Packages/

https://rpmfind.net/

https://pkgs.org/

http://rpm.pbone.net/

https://www.cnblogs.com/guigujun/p/7868748.html加粗样式文章来源地址https://www.toymoban.com/news/detail-798216.html

到了这里,关于【转载】tcpdump rpm方式安装细节的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux内存压力测试工具 StressAppTest安装及使用

    StressAppTest 是一个免费且开源的命令行内存测试工具,它已经被Google使用过一段时间,现在使用的协议是apache 2.0。 它会将处理器和I/O到内存的数据塞满,从而创建一个真实的高负载场景去测试电脑内存。 Debian, Ubuntu, Linux Mint Fedora, RHEL, Rocky Linux Gentoo Linux openSUSE Linux Arch,Manjaro L

    2024年04月12日
    浏览(39)
  • Linux环境安装iperf3(网络性能测试工具)

    iperf官网地址: iPerf - The TCP, UDP and SCTP network bandwidth measurement tool   iperf特性: 测量带宽 报告MSS/MTU大小和观察到的读数大小。 通过套接字缓冲区支持TCP窗口大小。 UDP 客户端可以创建指定带宽的UDP流。 测量数据包丢失 测量延迟抖动 支持多播 跨平台:Windows、Linux、Android、

    2024年02月03日
    浏览(46)
  • 安装交叉编译工具链aarch64-linux-gnu-g++ 以及cmake测试

       测试文件结构    CMakeLists.txt  参考文章: linux 交叉编译 C和C++_aarch64-linux-gnu-gcc查看版本_weixin_45302027的博客-CSDN博客 ubuntu16.04 安装交叉编译工具aarch64-linux-gnu-gccg++_ubuntu 安装aarch64-linux-gnu-gcc_普通网友的博客-CSDN博客

    2024年02月12日
    浏览(51)
  • 安装MySql(rpm方式安装)

    地址:https://dev.mysql.com/downloads/mysql/ 下载这个:mysql-8.0.35-1.el7.x86_64.rpm-bundle.tar 进入解压路径执行安装以下程序/依赖,必须依次安装 缺少net-tools 缺少libcrypto.so.10 缺少libncurses.so.5、libtinfo.so.5 mariadb被mysql取代 用临时密码登陆mysql,修改root密码 添加远程连接用户 赋予远程用户

    2024年01月17日
    浏览(33)
  • 01-mysql安装篇(rpm方式安装+二进制方式安装)

    1、检查是否安装了mariadb 卸载清除: rpm -e 文件名 2、下载mysql 官网地址:https://downloads.mysql.com/archives/community/ 3、上传解压 4、安装 报错:error: Failed dependencies: net-tools is needed by mysql-community-server-5.7.37-1.el7.x86_64 解决: 5、检查安装 6、开启mysql服务 7、登陆mysql 第一次启动mysq

    2024年02月10日
    浏览(51)
  • Linux 下杀毒软件 clamav-1.0.0.linux.x86_64.rpm 离线安装及测试CentOS7,CentOS6.8,KylinV10 arm架构

    本文主要记录在centos7以及centos6.8版本上安装记录!废话不多说,直接开始操作!后添加KylinV10 arm架构安装记录 1、下载rpm包 https://www.clamav.net/downloads 官网地址 2、上传安装包到服务器并安装 3、创建目录 4、新建日志文件 5、编辑配置conf文件 6、配置库文件 7、创建clamav用户并

    2024年02月13日
    浏览(65)
  • 第三篇 Elasticsearch 安装 - RPM方式

            上一篇我们学习了使用“压缩包”的方式安装Elasticsearch,本篇我们将学习使用RPM的方式安装Elasticsearch。在工作中具体使用哪一种安装方式要根据公司情况判定。         学习的小伙伴如果想学习一下自己制作启动脚本(shell)、开机自启动等可以使用安装包的方

    2024年04月10日
    浏览(39)
  • 01-mysql安装篇(rpm方式安装+压缩包安装)

    1、检查是否安装了mariadb 卸载清除: rpm -e 文件名 2、下载mysql 官网地址:https://downloads.mysql.com/archives/community/ 3、上传解压 4、安装 报错:error: Failed dependencies: net-tools is needed by mysql-community-server-5.7.37-1.el7.x86_64 解决: 5、检查安装 6、开启mysql服务 7、登陆mysql 第一次启动mysq

    2024年02月03日
    浏览(43)
  • CentOS 7.9 安装 mydumper(RPM方式)

     链接:https://pan.baidu.com/s/1sGhtiKPOmJw1xj0zv-djkA?pwd=taoz   码:taoz 开始正文啦: rpm -ivh mydumper-0.14.5-3-zstd.el7.x86_64.rpm 问题如下: 解决:  yum -y install epel-release  yum install -y libzstd 重新安装就成功了  rpm -ivh mydumper-0.14.5-3-zstd.el7.x86_64.rpm  验证:mydumper --help    

    2024年02月16日
    浏览(55)
  • linux离线安装tcpdump

    安装步骤: (1) tcpdump需要依赖包libcap,所以需要先安装lipcap,然后安装tcpdump (2) lipcap需要依赖包flex和bison,所以需要先安装flex和bison (3) flex、bison、libcap、tcpdump百度网盘安装包可以访问链接: https://pan.baidu.com/s/17Kx56e_B87OnOSQz598D5w 提取码:jsw8 如果想下载最新版本tar.g

    2024年02月06日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包