Arch Linux - pacman -Syu 失败 - 无法发出任何命令

Ril*_*cob 0 arch-linux pacman glibc

我正在运行完整的系统更新。所述更新突然失败,最后修改的包似乎是删除glibc. 现在,没有任何效果。系统内置程序(例如)cd仍然有效,但在发出任何其他命令时,会导致以下形式的错误:

bash: /usr/bin/COMMAND: No such file or directory
Run Code Online (Sandbox Code Playgroud)

使用某些命令导致此错误:

bash: /usr/bin/COMMAND: /bin/bash: bad interpreter: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我不知道如何进行。我害怕关闭计算机或注销或关闭打开的终端。我正在使用 i3 和所有用于切换工作区等的键绑定仍然正常工作,除了我的绑定以打开新终端等。

有没有办法让我撤消这个包删除?这是导致这个问题的原因吗?

jas*_*yan 6

这记录在 wiki 的 pacman 页面上

如果 pacman 在删除软件包时因“数据库写入”错误而崩溃,并且此后重新安装或升级软件包失败,请执行以下操作:

  1. 使用 Arch 安装介质启动。最好使用最近的媒体,以便 pacman 版本匹配/比系统更新。
  2. 挂载系统的根文件系统,例如/dev/sdaX /mnt以root身份挂载,并检查挂载是否有足够的空间df -h
  3. 挂载 proc、sys 和 dev 文件系统: mount -t proc proc /mnt/proc; mount --rbind /sys /mnt/sys; mount --rbind /dev /mnt/dev
  4. 如果系统使用默认数据库和目录位置,您现在可以更新系统的 pacman 数据库并pacman --sysroot /mnt -Syyu以 root 身份升级它。
  5. 升级后,一种仔细检查未升级但仍然损坏的软件包的方法: find /mnt/usr/lib -size 0
  6. 然后通过pacman --sysroot /mnt -S package.