在 Ubuntu 和 Raspbian 上安装具有(任何)体系结构的软件包时遇到问题

在 Ubuntu 和 Raspbian 上安装具有(任何)体系结构的软件包时遇到问题

输出为:

dpkg: error processing archive /tmp/apt-dpkg-install-v4lZRv/5-hashcatch_1.2_any.deb 
(--unpack):
package architecture (any) does not match system (amd64)
Selecting previously unselected package libhwloc-plugins:amd64.
Preparing to unpack .../6-libhwloc-plugins_2.4.1+dfsg-1_amd64.deb ...
Unpacking libhwloc-plugins:amd64 (2.4.1+dfsg-1) ...
Errors were encountered while processing:
/tmp/apt-dpkg-install-v4lZRv/5-hashcatch_1.2_any.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

答案1

根据Debian 政策手册您可以使用特殊词语all来表示独立于体系结构的软件包,以及any可以为任意数量的不同体系结构构建的依赖于体系结构的软件包。您需要一个可以在 amd64 体系结构操作系统中安装的软件包,因此请备份 apt-dpkg-install-v4lZRv/5-hashcatch_1.2_any.deb,将备份重命名为 apt-dpkg-install-v4lZRv/5-hashcatch_1.2_all.deb,将目录更改为cd包含 apt-dpkg-install-v4lZRv/5-hashcatch_1.2_all.deb 的目录,然后尝试使用以下命令将其安装在 amd64 系统上。

sudo apt  update
sudo apt install aircrack-ng ethtool hwloc ieee-data
sudo apt install ./apt-dpkg-install-v4lZRv/5-hashcatch_1.2_all.deb  

为了测试这些命令,我​​下载了hashcatch_1.2_any.deb从 GitHub 下载,并按照以下步骤进行安装。我不需要重命名 hashcatch_1.2_any.deb 来安装它,但我也尝试将 hashcatch_1.2_any.deb 重命名为 hashcatch_1.2_all.deb,并且我也能成功安装 hashcatch_1.2_all.deb。

  1. 下载hashcatch_1.2_any.deb来自 GitHub。

  2. 将目录更改cd为包含 hashcatch_1.2_any.deb 的目录。

  3. 运行以下命令来安装它。

    sudo apt update
    apt install --simulate ./hashcatch_1.2_any.deb # test for unmet dependencies
    sudo apt install aircrack-ng ethtool hwloc ieee-data # Maybe you can skip this step on your system if you didn't get any unmet dependencies in the previous step.
    sudo apt install ./hashcatch_1.2_any.deb
    

请注意,该--simulate命令运行时不会执行任何操作sudo,只会提供有关模拟安装的终端输出,而不会实际安装任何内容。运行该命令的原因--simulate是我无法找到您尝试安装的确切文件。请发表评论并提供链接。

相关内容