• Linux升级zlib版本


    Linux升级zlib版本

    在较低版本的Linux安装服务或插件的时候,可能会遇到因zlib版本不匹配导致安装无法顺利进行,需要对zlib进行升级。

    因为zlib会被内核中服务依赖,粗暴升级可能会使ssh,scp等无法使用,导致无法远程连接服务器。

    特记录正确升级方式。

    基本信息

    zlib主要文件(zlib为包名,libz为文件名)

    /lib64/libz.so.1.2.X
    /lib64/libz.so.1
    

    其中,libz.so.1为软链接

    因为服务依赖的关系,我们不好直接对文件进行更替操作。过程中需要使用rpm进行包的安装,但rpm本身也依赖该zlib。所以整个修改过程中应保证软链接是有指向目标的。

    zlib的rpm各个版本下载地址:http://rpm.pbone.net/results_limit_1_srodzaj_1_dl_40_field[]_1_field[]_2_search_zlib.html

    升级步骤

    整个过程都为root权限

    1. 准备好对应需要升级的zlib,放在当前目录下

    2. 创建当前版本副本

      cp /lib64/libz.so.1.2.XXX /lib64/libz.so.1.2.XXX.ori
      
    3. 软链接重定向为备件文件

      ln -snf /lib64/libz.so.1.2.XXX.ori /lib64/libz.so.1
      
    4. rpm删除历史版本,安装新版本

      # 查看目前版本
      yum list zlib
      ## yum list zlib |grep Installed -A1|grep -v Installed
      
      # 卸载zlib
      rpm -e --nodeps zlib
      
      # 本地安装新版本
      rpm -ivh ./zlib-1.2.XXX.x86_64.rpm
      
      # 查看新安装版本
      yum list zlib
      rpm -qa |grep zlib
      
    5. 软链接重定向为新文件(安装卸载后,原本文件已替换)

      ln -snf /lib64/libz.so.1.2.XXX /lib64/libz.so.1
      

    注意点

    rpm 对zlib包的安装卸载后,如无软链接指向备份文件,会导致SSH和yum,rpm等无法使用

    zlib包的升级需要结合系统其他服务依赖情况,通常用于Linux6.3内的zlib1.2.3-27版本升级到zlib1.2.3-29

  • 相关阅读:
    python 实现单链表
    java解压缩zip
    关于 ElesticSearch 安装
    spring boot 与 spring cloud 关系
    Java并发编程:深入剖析ThreadLocal
    mybatis like 的坑
    JMeter 压力测试使用CSV参数
    IntelliJ IDEA创建多模块依赖项目
    关于IntelliJ IDEA删除项目
    switchhost -- 切换host的工具
  • 原文地址:https://www.cnblogs.com/jrri/p/15011108.html
Copyright © 2020-2023  润新知