2.1. 支持的硬件

Debian 不会超出 Linux 内核与 GNU 工具集所支持的硬件范围之外。因此,任何被移植了 Linux 内核、libc、gcc 等,并拥有对应的 Debian 移植版的硬件体系或平台都可以运行 Debian。请参考移植页面 https://www.buy-develop.eu.org/ports/arm/ 以了解更多已被 Debian GNU/Linux 测试过的 32-bit soft-float ARM 体系。

本章仅包含一些通用的信息,以及在何处可以获得更多信息的指导,而不是试图列出支持 32-bit soft-float ARM 的所有不同硬件配置。

2.1.1. 支持的体系

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

本文档主要讲述的是 32-bit soft-float ARM 体系下的安装。如果您在寻找其他 Debian 所支持的体系的信息,请访问 Debian-Ports 网页。

2.1.2. 三种不同的 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 系统。

2.1.3. ARM CPU 设计的变化性和支持的复杂性

ARM 系统比基于 i386/amd64 的 PC 机更加多样,因此支持情况可能会非常复杂。

ARM 架构主要用于所谓的片上系统(SoC)设计。这些 SoC 由许多不同的公司设计,即使是对于系统工作所需的非常基本的功能,硬件组件变化也非常大。随着时间的推移,系统固件界面越来越标准化,但很多方面也发生了变化,尤其是对较旧的硬件固件/启动接口而言,所以在这些系统上,Linux 内核必须关注许多系统特定的低级问题,而在 PC 上这些问题则是由主板的 BIOS/UEFI 负责解决。

在 Linux 内核开始支持 ARM 时,硬件种类的不同导致了要为每个 ARM 系统分别移植内核,而不是像在 PC 系统上到处适用的内核。由于此方法不能扩展到大量不同的系统,因此工作方向为使单个 ARM 内核可在不同的ARM系统上进行引导。现在,对较新 ARM 系统的支持都是以这种多平台内核的方式实现的,但对于一些旧系统,仍然需要单独的定制内核。正因如此,标准 Debian 发行版对这种较旧 ARM 系统,仅支持在特定种类上安装,而新系统则由 Debian/armhf 中的 ARM 多平台内核(称为 armmp)提供支持。

2.1.4. Debian/armel 支持的平台

以下平台由 Debian/armel 支持;它们需要特定于平台的内核。

Kirkwood

Kirkwood 是 Marvell 的片上系统芯片(SoC),它将 ARM CPU、以太网、SATA、USB 和其他功能集成到一个芯片中。Debian 目前支持以下基于 Kirkwood 的设备:

Orion5x

Orion 是 Marvell 的 SoC 产品,集成了 ARM CPU、Ethernet、SATA、USB,以及其他一些功能。市场上有很多 NAS 设备基于 Orion 芯片。Debian 目前支持以下几种基于 Orion 的设备:Buffalo Kurobox

Versatile

Versatile 平台由 QEMU 模拟,如果您没有硬件设备,用它来测试运行在 ARM 上的 Debian 是一个不错的方法。

2.1.5. Debian/armel 不再支持的设备

Kirkwood

Debian 11 不再支持任何 QNAP Turbo Station 型号(TS-xxx),因为受硬件限制,已经无法构建其使用的 Linux 内核。

Orion5x

Debian 11 不再支持 HP Media Vault mv2120,因为受硬件限制,已经无法构建其使用的 Linux 内核。

您可能可以使以上列出的设备继续运行一段时间,参见 Debian 11 的发行说明

2.1.6. 图形卡支持

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 版。

2.1.7. 网络连接硬件

几乎所有被 Linux 内核支持的网卡 (NIC) 都被安装系统支持;驱动程序通常会自动加载。

32-bit soft-float ARM 上,支持大多数内置的以太网设备,并提供额外的 PCI 和 USB 设备模块。

2.1.8. 外围设备与其他硬件

Linux 支持众多的硬件设备,比如:鼠标、打印机、扫描仪、PCMCIA 和 USB 设备。然而,在安装系统的时候,并不需要其中的大部分设备。