dpkg 二进制文件损坏?

dpkg 二进制文件损坏?

我买了一个新的 Raspberry Pi 2,采用 ARM 处理器架构。今晚我通过 进行了更新sudo apt-get update && sudo apt-get upgrade。我注意到,它确实更新了 dpkg 软件包本身。

现在我想在 Raspbian 系统上安装 apache2,但 dpkg 二进制文件似乎已损坏:

...
/usr/bin/dpkg-deb: 1: /usr/bin/dpkg-deb: Syntax error: word unexpected (expecting ")")
dpkg: Fehler beim Bearbeiten des Archivs /var/cache/apt/archives/apache2-data_2.4.10-10+deb8u3_all.deb (--unpack):
 Unterprozess dpkg-deb --control gab den Fehlerwert 2 zurück
...

对于所有不会说德语的人

“Fehler beim Bearbeiten des Archivs”表示“处理存档时发生错误”,表示“Unterprozess dpkg-deb --control gab den Fehlerwert 2 zurück”“子进程 dpkg-deb --control 返回错误代码 2”

我尝试安装的所有软件包都会发生这种情况。

我现在能做什么?

答案1

要在不使用 的情况下恢复二进制文件dpkg,这里有一个“简单”方法,假设您的 Raspberry Pi 已binutils安装:

  • 检索dpkg包(.deb文件);它可能仍在 中/var/cache/apt/archives,否则您需要下载它(从游泳池;选择与您安装的版本匹配的版本)
  • data.tar.gz从存档中提取文件,放在安全的地方:ar x dpkg_....deb data.tar.gz
  • 提炼dpkg-debtar xf data.tar.gz ./usr/bin/dpkg-deb
  • 移动dpkg-deb到位:sudo mv usr/bin/dpkg-deb /usr/bin

如果您尚未binutils安装,则需要data.tar.gz在另一台计算机上解压(binutils如有必要,请在安装后)。

相关内容