自学内容网 自学内容网

Ubuntu20.04升级glibc升级及降级的心路历程

想使用pip安装Isaac Sim,无奈此方法只支持 GLIBC>=2.34 。使用的是Ubuntu20.04,使用 ldd --version 查看GLIBC版本,如果版本低于 2.34 则需要升级GLIBC,基于此开始了长达一天的尝试。 请注意,升级GLIBC是一个危险操作可能会导致无法与其的问题,请谨慎升级!!!

升级

首先在 sudo nano /etc/apt/sources.list中添加

deb http://th.archive.ubuntu.com/ubuntu jammy main
#或
deb http://mirrors.aliyun.com/ubuntu/ jammy main 

之后

sudo apt update
sudo apt install libc6

然后使用 ldd --version 查看升级后的GLIBC版本。

或者使用strings /lib/x86_64-linux-gnu/libc.so.6 |grep GLIBC_查看,如果成功你会看到
在这里插入图片描述

最后从 /etc/apt/sources.list 中删除 deb http://th.archive.ubuntu.com/ubuntu jammy main ,升级完成,可继续使用Pip进行安装。

这是最理想的情况,很大可能会有各种错误,甚至会把系统搞崩,但是不用慌,经过博主反复近10次的升降级,按照下面步骤操作可以完美退回到原始版本。

降级

  1. 如果你是通过上述sudo apt install libc6的方式升级的GLIBC,建议先把 sources.list中新增的源去掉,然后 sudo apt update一下。
sudo nano /etc/apt/sources.list
sudo apt update
  1. 检查可用版本:
apt-cache policy libc6
  1. 清除apt缓存
sudo apt clean  
sudo apt autoremove
  1. 解除libselinux1 tar readline-common包的锁定,然后重新安装这三个包
sudo apt-mark unhold libselinux1 tar readline-common
sudo apt-get install libselinux1 tar readline-common
  1. 尝试安装老版本
sudo apt-get install libc6=2.31-0ubuntu9.16

如果不报错,那运气比较好,但是这时候大概率是会报错的。
在这里插入图片描述
出现报错应该是 libc6:amd64 这个包没有安装完成,处于半安装的状态,我们手动安装一下就可以了。
执行 ls /var/cache/apt/archives 查看一下有没有关于 libc6:amd64 的包
在这里插入图片描述
6. 先手动安装

sudo dpkg -i /var/cache/apt/archives/libc6_2.31-0ubuntu9.16_i386.deb 
sudo dpkg -i /var/cache/apt/archives/libc6_2.31-0ubuntu9.16_amd64.deb

在这里插入图片描述
可惜又错了,但是不要慌。

7.如果失败,用aptitude安装

sudo aptitude install libc6=2.31-0ubuntu9.16

在这里插入图片描述
如果显示保留高级版本选择n,如果显示降级就选y
在这里插入图片描述

降级完成


原文地址:https://blog.csdn.net/qq_43309940/article/details/143746825

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!