Debian indfører ikke udstyrskrav udover kravene fra Linux- eller kFreeBSD-kernen og GNU-værktøjssættene. Derfor kan enhver arkitektur eller platform som Linux- eller kFreeBSD-kernen, libc, gcc, etc. er blevet porteret til, og for hvem en Debian-port findes afvikle Debian. Se porteringsiderne på https://iwawocd.cewmufwd.tk/ports/arm/ for yderligere detaljer om 32-bit hard-float ARMv7 arkitektursystemer, som er blevet testet med Debian GNU/Linux.
Frem for at forsøge at beskrive alle de forskelige udstyrskonfigurationer, som er understøttet for 32-bit hard-float ARMv7, dette afsnit indeholder generel information og henvisninger til hvor yderligere information kan findes.
Debian GNU/Linux 12 understøtter 9 væsentlige arkitekturer og flere variationer af hver arkitektur kendt som “varianter (flavors)”.
Arkitektur | Debian Designation | Underarkitektur | Variant |
---|---|---|---|
AMD64 & Intel 64 | amd64 | ||
Intel x86-baseret | i386 | standard for x86-maskiner | standard |
Ḱun Xen PV-domæner | xen | ||
ARM | armel | Marvell Kirkwood og Orion | marvell |
ARM med udstyr FPU | armhf | flerplatform | armmp |
64-bit ARM | arm64 | ||
64-bit MIPS (little endian) | mips64el | MIPS Malta | 5kc-malta |
Cavium Octeon | octeon | ||
Loongson 3 | loongson-3 | ||
32-bit MIPS (little endian) | mipsel | MIPS Malta | 4kc-malta |
Cavium Octeon | octeon | ||
Loongson 3 | loongson-3 | ||
Power Systems | ppc64el | IBM POWER8 eller nyere maskiner | |
64-bit IBM S/390 | s390x | IPL fra VM-reader og DASD | generisk |
Dette dokument dækker intallationen for arkitekturen 32-bit hard-float ARMv7, der bruger kernen Linux. Hvis du er på udkig efter information om en af de andre Debian-understøttede arkitekturer så tag et kig på siderne om Debian-porteringer.
ARM-arkitekturen har udviklet sig over tid og moderne ARM-processorer tilbyder funktioner som er tilgængelige i ældre modeller. Debian tilbyder derfor tre ARM-porte så du har den bedste understøttelse for en bred vifte af forskellige maskiner:
Debian/armel er til ældre 32-bit ARM-processorer uden understøttelse for en udstyrs-FPU (loating point unit),
Debian/armhf fungerer kun på nyere 32-bit ARM-processorer, som implementerer mindst ARMv7-arkitekturen med version 3 af ARM vector floating point-specifikationen (VFPv3). Den gør brug af de udvidede funktioner og ydelsesforbedringer tilgængelige på disse modeller.
Debian/arm64 fungerer på 64-bit ARM-processorer, der som minimum implementerer ARMv8-arkitekturen.
Teknisk kan alle nuværende ARM CPU'er køre enten i endian-tilstand (big eller little), men i praksis bruger hovedparten little-endian-tilstand. Debian/arm64, Debian/armhf og Debian/armel understøtter kun little-endian-systemer.
ARM-systemer er meget mere heterogene end dem baseret på den i386/amd64-baserede pc-arkitektur, så understøttelsessituationen kan være meget mere kompliceret.
ARM-arkitekturen bruges hovedsagelig i såkaldte “systems-on-chip”-design (SOC'er). Disse SOC'er er designet af mange forskellige firmaer med mange og varierende udstyrskomponeneter selv for den meget grundlæggende funktionalitet krævet for at få systemet i gang. Systemernes firmwaregrænseflader er i stadig stigende grad blevet standardiseret over tid, men specielt på ældre udstyr kan firmware/boot-grænseflader variere meget, så på disse systemer skal Linuxkernen håndtere mange systemspecifikke problemstillinger på lavt niveau, som i pc-verdenen ville blive håndteret af bundkortets BIOS/UEFI.
I begyndelsen af ARM-understøttelsen i Linux-kernen medførte udstyrsvariationen i kravet om at have en separat kerne for hvert ARM-system i kontrast til “en passer alle”-kernen for pc-systemer. Da denne fremgangsmåde ikke skalerer til et stort antal forskellige systemer, er arbejde blevet påbegyndt for at tilbyde en enkel ARM-kerne, som kan afvikles på forskellige ARM-systemer. Understøttelse for nyere ARM-systemer bliver nu implementeret på en måde, som giver mulighed for en flerplatformskerne, men for flere ældre systemer er en separat og specifik kerne stadig nødvendig. Derfor understøtter standarddistributionen for Debian kun installation på et udvalgt antal ældre ARM-systemer udover de nyeste systemer, som er understøttet af ARM-flerplatformskernerne (navngivet “armmp”) i Debian/armhf.
De følgende systemer er kendt for at fungere med Debian/armhf via flerplatformskernen (armmp):
IMX53QSB er et udviklingskort baseret på i.MX53 SoC.
Versatile Express er en serie udviklingskort fra ARM, der består af et basisbundkort, som kan udstyres med diverse CPU-datterbundkort.
Armmp-kernen understøtter flere udviklingskort og indlejrede systemer baseret på Allwinner A10 (arkitekturkodenavn “sun4i”), A10s/A13 (arkitekturkodenavn “sun5i”), A20 (arkitekturkodenavn “sun7i”), A31/A31s (arkitekturkodenavn “sun6i”) og A23/A33 (del af familien “sun8i”) SoC'er. Fuld installationsunderstøttelse (inklusive provision af klargjorte SD-kortaftryk med installationsprogrammet) er i øjeblikket tilgængelig for de følgende sunXi-baserede systemer:
Cubietech Cubieboard 1 + 2 / Cubietruck
LeMaker Banana Pi og Banana Pro
LinkSprite pcDuino og pcDuino3
Olimex A10-Olinuxino-LIME / A20-Olinuxino-LIME / A20-Olinuxino-LIME2 / A20-Olinuxino Micro / A20-SOM-EVB
Xunlong OrangePi Plus
Systemunderstøttelse for Allwinner sunXi-baserede enheder er begrænset til drivere og enhedstræ-information tilgængelig i hovedkernen for Linux. Leverandørspecifikke kernetræer (såsom Allwinner SDK-kerner) og Androidafledte linux-sunxi.org 3.4-kerneserie er ikke understøttet af Debian.
Hovedlinjen for Linuxkernen understøtter seriel konsol, ethernet, SATA, USB og MMC/SD-kort på Allwinner A10, A10s/A13, A20, A23/A33 og A31/A31s SOC'er. Niveauet for understøttelse af lokale skærme (HDMI/VGA/LCD) og lydudstyr varierer mellem individuelle systemer. For de fleste systemer har kernen ikke medfølgende grafikdrivere men bruger i stedet for infrastrukturen “simplefb” hvori opstartsindlæseren initialiserer skærmen og kernen genbruger bare den præigangsatte framebuffer. Dette fungerer generelt okay, selvom det medfører bestemte begrænsninger (skærmopløsningen kan ikke ændres løbende og strømstyring af skærmen er ikke mulig).
Indbygget flashhukommelse lavet for brug som en masselagerenhed findes generelt i to grundlæggende varianter på sunXi-baserede systemer; rå NAND-flash og eMMC-flash. De fleste ældre sunXi-baserede bundkort med indbygget flashlager bruger rå NAND-flash hvor understøttelse generelt ikke er tilgængelig i hovedkernen og derfor heller ikke i Debian. Et antal nyere systemer bruger eMMC-flash i stedet for rå NAND-flash. En eMMC-flashchip fremstår grundlæggende som et hurtigt, ikkeflytbart SD-kort og er understøttet på den samme måde som et normalt SD-kort.
Installationsprogrammet indeholder grundlæggende understøttelse for et antal sunXi-baserede systemer, som ikke er vist ovenfor, men er ikke rigtig testet på disse systemer, da Debian-projektet ikke har adgang til det tilsvarende udstyr. Ingen præbyggede SD-kortaftryk med installationsprogrammet laves for disse systemer. Udviklingsbundkort med sådan begrænset understøttelse inkluderer:
Olimex A10s-Olinuxino Micro / A13-Olinuxino / A13-Olinuxino Micro
Sinovoip BPI-M2 (A31s-baseret)
Xunlong Orange Pi (A20-baseret) / Orange Pi Mini (A20-baseret)
Udover SoC'erne og systemerne vist ovenfor, så har installationsprogrammet meget begrænset understøttelse for Allwinner H3 SoC og et antal bundkort baseret på denne. Hovedkernens understøttelse for H3'en er stadig under udarbejdelse på tidspunktet for Debian 9-udgivelsen, så installationsprogrammet understøtter kun seriel konsol, MMC/SD og USB-værtscontrolleren på H3-baserede systemer. Der er ingen driver for den indbyggede ethernetport for H3 endnu, så netværk er kun muligt med en USB-ethernetadaptor eller en USB wifi-dongle. Systemer baseret på H3'en hvor en sådan meget primitiv installationsprogramunderstøttelse er tilgængelig inkluderer:
FriendlyARM NanoPi NEO
Xunlong Orange Pi Lite / Orange Pi One / Orange Pi PC / Orange Pi PC Plus / Orange Pi Plus / Orange Pi Plus 2E / Orange Pi 2
The NVIDIA Jetson TK1 er et udvikler bundkort baseret på Tegra K1-chippen (også kendt som Tegra 124). Tegra K1 har en quad-kerne 32-bit ARM Cortex-A15 CPU og Kepler GPU (GK20A) med 192 CUDA-kerner. Andre systemer baseret på Tegra 124 vil måske også virke.
Seagate Personal Cloud og Seagate NAS er NAS-enheder baseret på Marvells Armada 370-platform. Debian understøtter Personal Cloud (SRN21C), Personal Cloud 2-Bay (SRN22C), Seagate NAS 2-Bay (SRPD20) og Seagate NAS 4-Bay (SRPD40).
Cubox-i-serien er et sæt af små, kubisk-formede systemer baseret på Freescale i.MX6 SoC-familien. Systemunderstøttelse for Cubox-i-serien er begrænset til drivere og information om enhedstræet tilgængelig i hovedlinjen af Linuxkernen; Freescale 3.0-kerneserien for Cubox-i er ikke understøttet af Debian. Tilgængelige drivere i kernen i hovedlinjen inkluderer seriel konsol, ethernet, USB, MMC/SD-kort og skærmunderstøttelse over HDMI (konsol og X11). Derudover er eSATA-porten på Cubox-i4Pro understøttet.
Wandboard Quad, Dual og Solo er udviklingskort baseret på Freescale i.MX6 Quad SoC. Systemunderstøttelsen er begrænset til drivere og enhedstræinformation i Linuxkernens hovedlinje; den wandboard-specifikke 3.0 og 3.10 kerneserie fra wandboard.org er ikke understøttet af Debian. Hovedlinjens kerne inkluderer driverunderstøttelse for seriel konsol, skærm via HDMI (konsol og X11), ethernet, USB, MMC/SD og SATA (kun Quad). Understøttelse for de indbyggede lydindstillinger (analog, S/PDIF, HDMI-Audio) og for det indbyggede WLAN/Bluetooth-modul er ikke testet og utilgængelig i Debian 9.
Generelt giver ARM-flerplatformsunderstøttelsen i Linuxkernen mulighed for at køre debian-installer
på armhf-systemer som ikke eksplicit er anført ovenfor så længe, at kernen brugt af debian-installer
har understøttelse for målsystemets komponenter og en enhedstræfil for målet er tilgængelig. I disse tilfælde kan installationsprogrammet normalt tilbyde en fungerende installation, men kan sandsynligvis ikke gøre at systemet automatisk starter op. Dette kræver i mange tilfælde enhedsspecifik information.
Når du bruger debian-installer
på sådanne systmer, så skal du eventuelt manuelt gøre systemet opstartsbart i slutningen af installationen, f.eks. ved at køre de krævede kommandoer i en skal startet inden fra debian-installer
.
Understøttelse af flere processorer — også kaldt “symmetrisk flerbehandling” eller SMP — er tilgængelig for denne arkitektur. Standard Debian 12-kerneaftrykket er blevet kompileret med understøttelse for SMP-alternativer. Dette betyder at kernen vil detektere antallet af processorer (eller processorkerner) og automatisk vil deaktivere SMP på systemer med en processor.
Det at have flere processorer i en computer var tidligere kun en problemstilling for serversystemer i den dyre ende, men er blevet mere udbredt de seneste år næsten overalt med introduktionen af såkaldte “flerkerne”-processorer. Disse indeholder to eller flere processorenheder, kaldt “kerner”, i en fysisk chip.
Debians understøttelse for grafiske grænseflader bestemmes af den underliggende understøttelse i X.org's X11-system og kernen. Grundlæggende framebuffergrafik tilbydes af kernen, mens skrivebordsmiljøer bruger X11. Om avancerede grafikkort-funktioner såsom 3D-udstyrsacceleration eller udstyrsaccelereret video er tilgængelig, afhænger af det faktiske grafikudstyr brugt i systemet og i nogle tilfælde af installationen af yderligere “firmware”-aftryk (se Afsnit 2.2, “Enheder som kræver firmware”).
Næsten alle ARM-maskiner har grafikudstyret indbygget, frem for i et separat kort. Nogle maskiner har dog udvidelsespladser, som kan anvende grafikkort, men det er sjældent. Udstyr som er designet til at være uden grafik i det hele taget er ret normalt. Mens grundlæggende framebuffervideo tilbudt af kenren før fungere på alle enheder som har grafik, så kræver hurtig 3D-grafik binære drivere for at fungere. Situationen ændrer sig hurtigt, men i udgivelsesøjeblikket for bookworm er frie drivere for nouveau (Nvidia Tegra K1 SoC) og freedreno (Qualcomm Snapdragon SoCs) tilgængelige i udgivelsen. Andet udstyr kræver proprietære drivere fra tredjeparter.
Detaljer om understøttede grafikudstyr og pegeenheder kan findes på https://wiki.freedesktop.org/xorg/. Debian 12 leveres med X.Org version 7.7.
Næsten alle netværksgrænsefladekort (NIC) understøttet af Linux-kernen bør også være understøttet af installationssystemet; drivere bliver normalt indlæst automatisk.
På 32-bit hard-float ARMv7, er de fleste indbyggede Ethernet-enheder understøttet og moduler for yderligere PCI- og USB-enheder tilbydes.