Skip to content
  • aarch64
  • armel
  • armhf
  • ppc64le
  • s390x
  • x86_64

这些是 Debian 系 Linux 发行版(如 Debian、Ubuntu、Deepin 等)中用来标识软件包所适用硬件架构的代码。简单来说,它们告诉你这个软件是为哪种 CPU 编译的。

选择错误的架构会导致软件无法安装或运行,因此理解它们的含义非常重要。


各架构代码详解

架构代码全称 / 解释常见硬件设备 / 场景
x86_64amd64。64 位 x86 架构。绝大多数个人电脑(PC)、服务器(Intel 或 AMD 的 64 位处理器)、云主机。
aarch64arm64。64 位 ARM 架构(ARMv8 及以上)。树莓派 3/4/5、苹果 M 系列 Mac(运行 Linux 时)、大多数 Android 设备、AWS Graviton 服务器。
armhfARM hard float(ARM 硬浮点)。32 位 ARM 架构,要求 CPU 支持硬件浮点运算单元(FPU)。较新的 32 位 ARM 设备(如树莓派 2、BeagleBone Black)及大多数 ARMv7 架构的手机开发板。
armelARM EABI little-endian(ARM 嵌入式软浮点)。32 位 ARM 架构,使用软件模拟浮点运算。非常老旧的 ARM 设备(如 ARMv4t、ARMv5te),性能较低,已逐渐被淘汰。
ppc64lePowerPC 64-bit Little Endian。64 位 PowerPC 架构,采用小端字节序。IBM Power 系列服务器(如 POWER8、POWER9),常用于高性能计算和企业级数据库。
s390xIBM System/390 64-bit。64 位 IBM 大型主机架构。IBM Z 系列大型机(以前称 System/390),用于银行、金融等关键任务场景。

重点区分:armel 与 armhf

这两个都是 32 位 ARM 架构,但浮点运算的处理方式完全不同,因此 不兼容

  • armel(软浮点)
    • 使用通用整数寄存器来模拟浮点运算。
    • 速度慢,但兼容所有旧版 ARM CPU。
  • armhf(硬浮点)
    • 直接使用专用的硬件浮点单元(FPU)进行计算。
    • 速度快得多,但要求 CPU 必须包含 FPU(现代 ARM CPU 基本都支持)。

注意:在下载软件或编译程序时,如果你的设备是 32 位 ARM,必须清楚自己属于 armel 还是 armhf(现代设备几乎都是 armhf)。


如何选择正确的版本?

  1. 查询当前系统架构: 在终端运行以下命令之一:

    bash
    uname -m
    # 或
    dpkg --print-architecture   # Debian/Ubuntu 专用
  2. 输出对照

    • 如果显示 x86_64,就选 x86_64
    • 如果显示 aarch64,就选 aarch64
    • 如果显示 armv7larmv8l(32 位模式),通常选 armhf(除非设备极老)。
    • 如果显示 ppc64le,就选 ppc64le
    • 如果显示 s390x,就选 s390x
  3. 安装软件包时: 使用 apt 包管理器时,系统会自动选择匹配架构的版本。但若手动下载 .deb 文件或编译源码,务必核对上述架构标识。

/src/technology/dateblog/2026/03/20260310-%E8%BD%AF%E4%BB%B6%E6%9E%B6%E6%9E%84%E6%8C%87%E4%BB%A4%E7%89%88%E6%9C%AC.html