首页 > 其他分享 >升级 glibc 版本的问题

升级 glibc 版本的问题

时间:2024-04-13 16:55:06浏览次数:42  
标签:x86 glibc 升级 64 updates 版本 2.17 el7

升级 glibc 版本的问题

一般情况下,也不要升级 glibc 版本,升级后有可能会导致已安装的应用无法启动;开发环境上将 glibc 从 2.17 升级到 2.28 之后,遇到达梦数据库无法启动,从前台启动时报“段错误”,在 /var/log/messages​ 中看到错误信息:

kernel: dmserver[3506]: segfault at 0 ip 00007ff1f9a274b6 sp 00007ffed59f1270 error 4 in libc-2.28.so[7ff1f99ed000+1ae000]

而升级之后 libc.so.6 就是指向 libc-2.28.so 的软链接:

[root@localhost ~]# ll /lib64/libc.so.6
lrwxrwxrwx. 1 root root 19 Dec 13 18:07 /lib64/libc.so.6 -> /lib64/libc-2.28.so
[root@localhost ~]#

[root@localhost ~]# ll /lib64/libc-*
-rwxr-xr-x. 1 root root  2156592 May 19  2022 /lib64/libc-2.17.so
-rwxr-xr-x. 1 root root 18232920 Dec 11 11:55 /lib64/libc-2.28.so
lrwxrwxrwx. 1 root root       19 Jan  9  2023 /lib64/libc-client.so -> libc-client.so.2007
-rwxr-xr-x. 1 root root  1134632 Jul 31  2017 /lib64/libc-client.so.2007
[root@localhost ~]#

尝试将 libc.so.6 这个软链接删除,并重新创建指向 libc-2.17.so 的软链接:

# libc.so.6 这个软链接不能直接删除!!!
# 删除会导致 Linux 很多命令无法使用:
[root@localhost ~]# rm -f /lib64/libc.so.6
[root@localhost ~]#
[root@localhost ~]# ln -s /lib64/libc-2.17.so /lib64/libc.so.6
ln: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
[root@localhost ~]#

如果已经删除了,使用 LD_PRELOAD​ 重建软链接:

LD_PRELOAD=/lib64/libc-2.28.so ln -s /lib64/libc-2.28.so /lib64/libc.so.6

或者使用 sln 命令重建软链接:

sln /usr/lib64/libc-2.28.so /lib64/libc.so.6

sln /usr/lib64/ld-2.28.so /usr/lib64/ld-linux-x86-64.so.2
sln /usr/lib64/libm-2.28.so /usr/lib64/libm.so.6

# 重建上述三个软链接之后,基础命令不会再报错;

降级 glibc 版本

yum 安装的高版本

查看当前安装的 glibc 版本:

[root@VM-4-11-centos ~]# rpm -qa|grep glibc
glibc-devel-2.17-324.el7_9.x86_64
glibc-2.17-324.el7_9.x86_64
glibc-common-2.17-324.el7_9.x86_64
glibc-headers-2.17-324.el7_9.x86_64
[root@VM-4-11-centos ~]#

查询 glibc 软件包中都有哪些版本:

[root@VM-4-11-centos ~]# yum list glibc glibc-devel glibc-common glibc-headers --showduplicates
Loaded plugins: fastestmirror, langpacks
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
Determining fastest mirrors
 * centos-sclo-rh: mirrors.aliyun.com
 * centos-sclo-sclo: mirrors.aliyun.com
Installed Packages
glibc.x86_64                                               2.17-324.el7_9                                       @updates
glibc-common.x86_64                                        2.17-324.el7_9                                       @updates
glibc-devel.x86_64                                         2.17-324.el7_9                                       @updates
glibc-headers.x86_64                                       2.17-324.el7_9                                       @updates
Available Packages
glibc.i686                                                 2.17-317.el7                                         base
glibc.x86_64                                               2.17-317.el7                                         base
glibc.i686                                                 2.17-322.el7_9                                       updates
glibc.x86_64                                               2.17-322.el7_9                                       updates
glibc.i686                                                 2.17-323.el7_9                                       updates
glibc.x86_64                                               2.17-323.el7_9                                       updates
glibc.i686                                                 2.17-324.el7_9                                       updates
glibc.x86_64                                               2.17-324.el7_9                                       updates
glibc.i686                                                 2.17-325.el7_9                                       updates
glibc.x86_64                                               2.17-325.el7_9                                       updates
glibc.i686                                                 2.17-326.el7_9                                       updates
glibc.x86_64                                               2.17-326.el7_9                                       updates
glibc-common.x86_64                                        2.17-317.el7                                         base
glibc-common.x86_64                                        2.17-322.el7_9                                       updates
glibc-common.x86_64                                        2.17-323.el7_9                                       updates
glibc-common.x86_64                                        2.17-324.el7_9                                       updates
glibc-common.x86_64                                        2.17-325.el7_9                                       updates
glibc-common.x86_64                                        2.17-326.el7_9                                       updates
glibc-devel.i686                                           2.17-317.el7                                         base
glibc-devel.x86_64                                         2.17-317.el7                                         base
glibc-devel.i686                                           2.17-322.el7_9                                       updates
glibc-devel.x86_64                                         2.17-322.el7_9                                       updates
glibc-devel.i686                                           2.17-323.el7_9                                       updates
glibc-devel.x86_64                                         2.17-323.el7_9                                       updates
glibc-devel.i686                                           2.17-324.el7_9                                       updates
glibc-devel.x86_64                                         2.17-324.el7_9                                       updates
glibc-devel.i686                                           2.17-325.el7_9                                       updates
glibc-devel.x86_64                                         2.17-325.el7_9                                       updates
glibc-devel.i686                                           2.17-326.el7_9                                       updates
glibc-devel.x86_64                                         2.17-326.el7_9                                       updates
glibc-headers.x86_64                                       2.17-317.el7                                         base
glibc-headers.x86_64                                       2.17-322.el7_9                                       updates
glibc-headers.x86_64                                       2.17-323.el7_9                                       updates
glibc-headers.x86_64                                       2.17-324.el7_9                                       updates
glibc-headers.x86_64                                       2.17-325.el7_9                                       updates
glibc-headers.x86_64                                       2.17-326.el7_9                                       updates
[root@VM-4-11-centos ~]#

将 glibc 降级到指定的版本:

yum downgrade glibc-2.17-323.el7_9  glibc-devel-2.17-323.el7_9  glibc-common-2.17-323.el7_9  glibc-headers-2.17-323.el7_9 -y

执行完之后,再用 rpm -qa​ 查看系统中的版本。

标签:x86,glibc,升级,64,updates,版本,2.17,el7
From: https://www.cnblogs.com/zhpj/p/18133065/sheng-ji-glibc-ban-ben-de-wen-ti-hqvjw

相关文章

  • k8s 实战 Centos8.4 版本
    网络前置操作nmcliconmod"Wiredconnection1"ipv4.addresses192.168.0.201/24#设置IP地址nmcliconmod"Wiredconnection1"ipv4.gateway192.168.0.1#设置网关nmcliconmod"Wiredconnection1"ipv4.methodmanual#设置静态IPnmcliconm......
  • 通过__cplusplus查看c++版本并检查gcc支持版本
    虽然平时开发都是用的c++11标准,但打算看一下wslubuntu里面的gcc默认支持什么标准~1打印__cplusplus宏#include<cstdio>intmain(){printf("%ld\n",__cplusplus);}➜testg++test_cpp_version.cpp-otest_cpp_version➜test./test_cpp_version20......
  • 苹果Mac系列全面升级:M4芯片研发加速 主打AI
    日前,据名记马克·古尔曼爆料,苹果正加快研发M4系列芯片,该芯片将主打AI功能。爆料称,苹果计划今年底到明年初发布多款搭载M4芯片Mac,包括全新iMac、低端14英寸MacBookPro、高端14英寸和16英寸MacBookPro以及Macmini。古尔曼称,M4芯片分入门到中高端三个版本,入门版代号为Donan,中端......
  • flutterr 检测应用版本号、服务器下载文件 以及实现 App 自动升级、安装
    依赖package_info_plus:^7.0.0path_provider:^2.1.2#查找文件获取文件存储路径open_file:^3.3.2#打开文件插件permission_handler:^11.3.1#检测Apk是否拥有权限配置权限<!--在Android6(Marshmallow)之前的版本中,明确声明网络权限--><uses-perm......
  • 【VMware vCenter】使用Reduced Downtime Update (RDU)升级更新vCenter Server。
    ReducedDowntimeUpgrade(RDU)减少停机时间更新是用于vCenterServer更新升级的一种新的方式,顾名思义,主要目的就是为了减少在vCenterServer更新升级过程中的维护时间,经过测试验证,最快能够在几分钟之内完成对vCenterServer的更新升级(取决于环境)。我之前在另外一篇文章中(更新V......
  • B端架构升级之路
    一、背景随着B端业务快速发展,系统愈趋复杂。我们发起了B端架构升级专项,基于B端业务的特点,从研发规范建设、B端架构基建、系统架构升级和落地保障等多方面提升了B端的架构水平。 二、升级思路架构是一项复杂的工程,每个团队、每个服务都有自己的诉求。在B端架构升级项目中,我们......
  • 【虚幻引擎】DTProjectSettings 蓝图获取基本项目配置插件使用说明 获取项目命名,项目
    本插件可以使用蓝图获取到项目的一些基本配置,如获取:公司名、公司识别名、版权声明、描述、主页、许可条款、隐私政策、项目ID、项目命名、项目版本、支持联系方式、项目显示标题、项目调试标题信息、应保留窗口宽高比、使用无边框窗口、以VR启动、允许窗口重设大小、允许关闭、允......
  • VUE2.0版本学习笔记
    VUE2.0版本学习笔记脚手架安装npminstall-g@vue/clivuecreatevue2-practice#选择2.0版本如果执行中遇到错误,yarn的错误certificatehasexpired则执行yarncachecleanyarnconfigsetstrict-sslfalsecdvue2-practicenpmrunserve#初学者建议安装vsco......
  • Windows 10 专业工作站版:Win10中最强大的版本?
    Windows10提供了多个版本,满足不同用户的需求。其中,Windows10专业工作站版作为面向专业用户的旗舰版本,在性能、功能和安全方面都拥有显著优势,堪称Win10家族中最强大的版本。强悍的硬件支持Windows10专业工作站版支持更高的硬件配置,包括:最多支持4个CPU,而其他版本最多仅......
  • node 和 npm 如何进行版本升级
    node和npm在某种意义上,早已成为当前前端开发中不可或缺的工具。本文将介绍如何进行node和npm的版本升级和指定等等操作。查看node和npm版本:node-vnpm-v清除npm缓存:npmcacheclean-f如何升级npm当只需要简单的升级npm的时候,可以比较方便的处理。npm升级到最新版......