Arch Linux pacman 在 Raspberry Pi 上加载共享库时出错

Arch Linux pacman 在 Raspberry Pi 上加载共享库时出错

我知道论坛上有很多关于这个问题的帖子,但我没有找到任何与我确切问题相关的帖子。我的 Raspberry Pi 刚刚到货,我安装了 Arch Linux 并启动,更改了时区和密码,只是一些基本的设置。然后我使用 pacman 初始化pacman-key --init,它初始化得非常快。然后我用它pacman -Syu来获取系统的最新更新。我知道这需要一段时间,所以我下楼让它完成工作,当我回来时,我的 Pi 上的 ACTIVITY 灯熄灭了,输出屏幕是黑色的,没有命令提示符或任何东西。我猜是我的 Pi 不知怎么断电了,但我不确定。但是发生了某种类型的错误,因为当我尝试运行 pacman 安装任何东西时,我收到以下错误:

pacman: error while loading shared libraries: /usr/lib/libgpgme.so.11: file too short

我不确定,但我认为我的 Pi 的电源可能在安装过​​程中中断了。我检查了所有根目录,如etcbin,所有文件似乎都在那里,所以据我所知,我的 Arch Linux 安装仍然正常……但出于某种原因,pacman 不想工作。有人知道这里的问题吗?这是我第一次使用 Linux 操作系统,尽管我已经在 UNIX OS-X 上使用命令行近一年了,所以我不是一个完全的菜鸟。任何帮助都很好。

答案1

文件似乎在那里,但这不是问题所在——正如错误消息所说,它们“太短”,换句话说,很可能是空的。(升级过程中断电时经常发生这种情况。文件元数据在创建新文件时首先写入,然后在关闭完成的文件时写入,但只有第一次写入被刷新到磁盘——第二次写入因断电而丢失。)

修复此问题的正常方法是重新安装所有受影响的软件包。由于您只有全新的 Arch 系统,因此最简单的方法可能是擦除并重新安装。(不过,不要费心重新分区,+find /mnt -deletepacstrap /mnt base足够了。)

相关内容