操作系统: Debian GNU/Linux 11 (斗牛眼) Debian版本: 11.5
我试图使用dpkg somefile.deb安装多个软件包,但由于缺乏internet连接,它还没有完成,因为存在依赖问题。
现在我运行了'apt更新‘或’apt-获取更新‘,我得到了以下错误:
apt-get: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /lib/x86_64-linux-gnu/libstdc++.so.6)
apt-get: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /lib/x86_64-linux-gnu/libstdc++.so.6)
apt-get: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /lib/x86_64-linux-gnu/libstdc++.so.6)发布于 2022-10-20 12:38:27
罪魁祸首是包libstdc++6,它被升级到Debian测试/sid,阻止了apt-get (一个C++应用程序)继续工作。
2022-10-18 10:01升级libstdc++6:amd64 10.2.1-6 12.2.0-5 2022-18 10:37:01状态触发器未决libc-bin:bin 64 2.31-13+de11u 4 2022-10-18 :37:01状态半配置libstdc++6:amd64 10.2.1-6 2022-10-18 10:37:01 libstdc++6:amd64 10.2.1-6 2022-10-18 10:37:01状态半安装libstdc++6:amd64 10.2.1 -6 2022-10-18 10:37:01-6 2022-10-18 10:37:01 libstdc++6:amd64 12.2.0-5
apt-get不再可用,但它只剩下dpkg,一个C应用程序,因此不受影响,以解决这个问题。
因此,恢复您试图安装的不是Debian 11的内容:很可能是lokinet-bin (它的后缀确实表明它不是针对Debian 11的,而是未来的Debian 12)。
dpkg --purge lokinet-bin从带外信息下载正确的libstdc++6包.在任何其他功能Debian 11系统上,这都是可行的:
apt-get --print-uris download libstdc++6例如,它可以返回(今天):
'http://ftp.us.debian.org/debian/pool/main/g/gcc-10/libstdc%2b%2b6_10.2.1-6_amd64.deb' libstdc++6_10.2.1-6_amd64.deb 492540 SHA256:5c155c58935870bf3b4bfe769116841c0d286a74f59eccfd5645693ac23f06b1如果下载工具可用,则可以从任何镜像(包括上面的镜像)下载,然后从其他系统下载或直接在损坏的系统上下载:
curl -JRLO 'http://ftp.us.debian.org/debian/pool/main/g/gcc-10/libstdc%2b%2b6_10.2.1-6_amd64.deb'并与上面的校验和进行比较:
$ sha256sum libstdc%2b%2b6_10.2.1-6_amd64.deb
5c155c58935870bf3b4bfe769116841c0d286a74f59eccfd5645693ac23f06b1 libstdc%2b%2b6_10.2.1-6_amd64.deb校验和匹配。
您还可以在https://packages.debian.org/bullseye/libstdc++6或https://snapshot.debian.org/上获得以下链接
最后,将其安装在损坏的系统上的违规版本上:
dpkg -i libstdc%2b%2b6_10.2.1-6_amd64.debapt-get现在应该可以使用了。
在再次尝试之前,请先看看这个Debian:DontBreakDebian,特别是别做FrankenDebian,因为这正是在本例中发生的情况。
https://unix.stackexchange.com/questions/721595
复制相似问题