2.1. 支持的硬件

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

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

2.1.1. 支持的体系

Debian GNU/Linux 10 支持十种主要的体系和一些称为 flavors 的衍生品种。

体系 Debian 命名 子体系 Flavor
基于 Intel x86 i386 默认的 x86 机器 default
仅 Xen PV 域 xen
AMD64 & Intel 64 amd64    
ARM armel Marvell Kirkwood marvell
带 FPU 的 ARM armhf 多平台 armmp
64 位 ARM arm64    
MIPS(大尾端) mips MIPS Malta 4kc-malta
Cavium Octeon octeon
MIPS(小尾端) mips64el MIPS Malta 5kc-malta
Cavium Octeon octeon
龙芯 3 loongson-3
MIPS(小尾端) mipsel MIPS Malta 4kc-malta
Cavium Octeon octeon
龙芯 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 负责解决。

在 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 is a system-on-chip (SoC) from Marvell that integrates an ARM CPU, Ethernet, SATA, USB, and other functionality in one chip. There are many Network Attached Storage (NAS) devices on the market that are based on an Orion chip. Debian currently supports the following Orion based devices: Buffalo Kurobox and HP mv2120.

Versatile

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

2.1.5. Debian/armel 不再支持平台和设备

IXP4xx

对英特尔 IXP4xx 平台的支持已于 Debian 9 中抛弃。Linksys NSLU2 设备基于 IXP4xx,因此不再受支持。

Orion5x

D-Link DNS-323 和 Conceptronic CH3SNAS 设备的支持已经从 Orion5x 平台中抛弃, Linux 内核不再适用于以上设备上的闪存。其他 Orion 设备仍然受支持,如 Buffalo Kurobox 和 HP mv2120。

2.1.6. 图形卡支持

Debian 能支持的显卡取决于底层的 X.Org's X11 的支持。流行的 PC 上,图形显示器通常工作地很好。至于高级的显卡功能,比如 3D 硬件加速或硬件视频加速是否可用,由系统所使用的具体显示硬件和所要安装的额外固件(firmware)决定(参阅第 2.2 节 “需要固件的设备”)。极个别的情况下使用基本的显示功能也需要安装额外的固件,但这是罕有的例子。

几乎所有 ARM 机器都内置了图形硬件,而不用额外插卡。有些机器有扩展插槽用于显卡,但这比较罕见。无头、无图像的硬件设计也很常见。虽然内核提供的基本帧缓冲显示在有图像的设备上应该都能工作,但快速 3D 绘图总是需要二进制驱动程序才能正常工作。情况正在迅速变化,但在发布 buster 时,nouveau(Nvidia Tegra K1 SoC)和 freedreno(Qualcomm Snapdragon SoC)有自由的驱动程序可用。其他硬件需要第三方的非自由驱动程序。

对显卡和其他定点设备的具体支持情况,见 https://wiki.freedesktop.org/xorg/。Debian 10 包含 X.Org 7.7 版。

2.1.7. 网络连接硬件

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

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

2.1.8. 外围设备与其他硬件

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