如何修复 pacman 与 glibc 不同步的问题?

如何修复 pacman 与 glibc 不同步的问题?

我似乎在我的一台台式电脑上安装了 Arch Linux 时做出了一个愚蠢的举动:我升级了 pacman(使用pacman -S pacman),但没有升级其他任何东西。现在 pacman 将无法运行,因为它与 GLIBC 版本不同步。

我不确定解决此问题的最佳方法是什么,因为我需要回滚 pacman (加上其他几个依赖包),但我无法使用 pacman 来执行此操作,因为它不起作用。我的 pacman 缓存中有以前版本的软件包,并且机器上至少有一个备份替代根分区,所以也许有某种方法可以使用 chroot 来修复?

谁能建议解决此问题的最佳方法是什么?

答案1

请注意,在 Arch Linux 上,不支持部分升级;您应该立即升级整个系统 ( pacman -Syu)。将安装以下版本
pacman -S packagepackage当前位于您的同步数据库中,可能会重新安装已安装的版本。
pacman -Sy接下来将更新同步数据库,然后安装最新版本pacman -S packagepackage 及其依赖项,可能会破坏依赖于后者旧版本的其他已安装软件包。
正如上面链接的 wiki 页面中所述,pacman -Syuw紧随其后也不是解决方案。pacman -S package

要修复它,请执行以下操作:

  1. pacman-static使用 wget下载二进制文件
  2. wget https://pkgbuild.com/~morganamilo/pacman-static/x86_64/bin/
  3. chmod +x ./pacman-static
  4. sudo ./pacman-static -Syu
  5. 清除所有出现的pacmanfrom/usr/local/查找它们whereis pacman

相关内容