Debian 不会超出 Linux 内核与 GNU 工具集所支持的硬件范围之外。因此,任何被移植了 Linux 内核、libc、gcc 等,并拥有对应的 Debian 移植版的硬件体系或平台都可以运行 Debian。请参考移植页面 https://www.debian.org/ports/arm/ 以了解更多已被 Debian GNU/Linux 测试过的 64-bit ARM 体系。
本章仅包含一些通用的信息,以及在何处可以获得更多信息的指导,而不是试图列出支持 64-bit ARM 的所有不同硬件配置。
Debian GNU/Linux 12 支持 9 种主要架构,和一些称为 “flavors” 的衍生品种。
体系 | Debian 命名 | 子体系 | Flavor |
---|---|---|---|
AMD64 & Intel 64 | amd64 | ||
基于 Intel x86 | i386 | 默认的 x86 机器 | default |
仅 Xen PV 域 | xen | ||
ARM | armel | Marvell Kirkwood | marvell |
带 FPU 的 ARM | armhf | 多平台 | armmp |
64 位 ARM | arm64 | ||
MIPS(小尾端) | mips64el | MIPS Malta | 5kc-malta |
Cavium Octeon | octeon | ||
Loongson 3 | loongson-3 | ||
MIPS(小尾端) | mipsel | MIPS Malta | 4kc-malta |
Cavium Octeon | octeon | ||
Loongson 3 | loongson-3 | ||
Power 系统 | ppc64el | IBM POWER8 或更新的机器 | |
64 位 IBM S/390 | s390x | 来自 VM-reader 和 DASD 的 IPL | generic |
本文档主要讲述的是 64-bit ARM 体系下的安装。如果您在寻找其他 Debian 所支持的体系的信息,请访问 Debian-Ports 网页。
此为第一个 64-bit ARM 体系的 Debian GNU/Linux 正式发布版。我们认为它已经达到了可发布的质量要求。但是,由于它没有像其他体系那样得到足够的曝光(经过用户测试),您可能会遇到一些 bug。请使用我们的 Bug 跟踪系统 来报告问题,并注明该 bug 是在 64-bit ARM 平台上使用 Linux 内核产生的。当然,您也可以用 debian-arm 邮件列表 来进行讨论。
ARM 架构随着时间的推移而发展,现代 ARM 处理器提供了旧型号上不可用的功能。因此,Debian 提供了三种 ARM 移植,可以为各种不同的机器提供最佳支持:
Debian/armel 针对旧的 32 位 ARM 处理器,而不支持硬件浮点单元(FPU),
Debian/armhf 仅适用于较新的 32 位 ARM 处理器,其至少实现了 ARMv7 架构,且支持 ARM 矢量浮点规范(VFPv3)第 3 版。此移植可利用这些型号上可用的扩展和性能增强功能。
Debian/arm64 适用于 64 位 ARM 处理器,其至少实现了 ARMv8 架构。
大多数的 ARM CPU 可以运行在(大尾或小尾)任一尾端模式下。但是当前绝大多少系统的实现都是使用小尾端模式。Debian 现在也仅支持小尾端 ARM 系统。
ARM 系统比基于 i386/amd64 的 PC 机更加多样,因此支持情况可能会非常复杂。
ARM 架构主要用于所谓的“片上系统”(SoC)设计。这些 SoC 由许多不同的公司设计,即使是对于系统工作所需的非常基本的功能,硬件组件变化也非常大。旧版本的ARM架构上,SoC从一代到下一代会有很大的差异,但ARMv8(arm64)已经更加标准化,使得Linux内核和其他软件更容易对其进行支持。
服务器版的 ARMv8 硬件通常使用统一可扩展固件接口(UEFI)和高级配置与电源接口(ACPI)标准来进行配置。这两个提供常见的、独立于设备的方式,来引导和配置计算机硬件。它们在 x86 PC 世界中也很常见。
Debian Bookworm 发布周期中的晚些时候才加入了 Arm64/AArch64/ARMv8 的硬件支持,所以在此版本发布时,没有合并太多平台的支持到主线内核;这是要在其上运行 debian-installer
的基本要求。在此版本的 Debian/arm64 中,以下平台受支持。只有一个内核映像支持所有列出的平台。
APM Mustang 是第一个支持 Linux 的 ARMv8 系统。它使用 X-gene SoC,因此也用于其他机器。它为 8 核 CPU,带以太网、USB 和串口。常见外形看起来就像台式机,但将来很可能会有其他版本。主线内核支持大多数硬件,但目前的 Bookworm 内核缺少对 USB的支持。
Juno 是一款 6 核(2xA57,4xA53)ARMv8-A 800Mhz CPU 开发板,带 Mali(T624)显卡、8GB DDR3 RAM、以太网、USB、串口。它专为系统启动和电源测试而设计的,既不小也不便宜,但是是首批可用的板子之一。主线内核和 Bookworm 都支持所有板载硬件。
在非 UEFI 系统上使用 debian-installer
时,您可能必须在安装结束时手动使系统启动,例如在 debian-installer
的 shell 中运行启动所必需的命令。flash-kernel 知道如何用 U-Boot 启动 X-Gene 系统。
多处理器支持 — 又称 “symmetric multiprocessing” 或 SMP — 在本体系架构下可以使用。在一台计算机上安装多处理器原来只是高端的服务器才具有,但近年来随着“多核”处理器的出现已经应用到相对低端的桌面计算机和便携机上。这种处理器包含两个或多个称为“核心”的处理器单元集成在一个物理芯片上。
标准的 Debian 12 内核映像编译时已经加入 SMP 支持。它在非 SMP 系统上使用也没有问题。
Debian 能支持的显卡取决于底层的 X.Org 的 X11 系统以及内核的支持。基本的 framebuffer 由内核提供,而桌面环境使用 X11。至于高级的显卡功能,比如 3D 硬件加速或硬件视频加速是否可用,由系统所使用的具体显示硬件和所要安装的额外“固件(firmware)”决定(参阅第 2.2 节 “需要固件的设备”)。
几乎所有 ARM 机器都内置了图形硬件,而不用额外插卡。有些机器有扩展插槽用于显卡,但这比较罕见。无头、无图像的硬件设计也很常见。虽然内核提供的基本帧缓冲显示在有图像的设备上应该都能工作,但快速 3D 绘图总是需要二进制驱动程序才能正常工作。情况正在迅速变化,但在发布 bookworm 时,nouveau(Nvidia Tegra K1 SoC)和 freedreno(Qualcomm Snapdragon SoC)有自由的驱动程序可用。其他硬件需要第三方的非自由驱动程序。
对显卡和其他定点设备的具体支持情况,见 https://wiki.freedesktop.org/xorg/。Debian 12 包含 X.Org 7.7 版。
几乎所有被 Linux 内核支持的网卡 (NIC) 都被安装系统支持;驱动程序通常会自动加载。
64-bit ARM 上,支持大多数内置的以太网设备,并提供额外的 PCI 和 USB 设备模块。