2.2. Enheder som kræver firmware

Udover tilgængeligheden for en enhedsdriver kræver noget udstyr også at såkaldt firmware eller microcode indlæses i enheden før den kan fungere. Dette er mest udbredt for netværksgrænsefladekort (specielt trådløse NIC'er), men for eksempel nogle USB-enheder og selv nogle harddisk-controllere kræver også firmware. Med mange grafikkort, er basisfunktionalitet tilgængelig uden yderligere firmware, men brugen af avancerede funktioner kræver, at en passende firmware-fil installeres på systemet.

På mange ældre enheder, som kræver firmware for at fungere, blev firmwarefilen placeret permanent i en EEPROM/Flash-chip på selve enheden af producenten. I dag har de fleste nye enheder ikke firmwaren indlejret på den måde, så firmwarefilen skal overføres til enheden af værtsoperativsystemet hver gang systemet starter op.

I de fleste tilfælde er firmware ikke fri jævnfør de kriterier som bruges af Debian GNU/Linux-projektet og kan derfor ikke inkluderes i hoveddistributionen eller i installationssystemet. Hvis enhedsdriveren selv er inkluderet i distributionen og hvis Debian GNU/Linux legalt kan distribuere firmwaren, så vil den ofte være tilgængelig som en separat pakke fra den ikkefrie (non-free) del af arkivet.

Dette betyder dog ikke at sådant udstyr ikke kan bruges under en installation. Startende med Debian GNU/Linux 5.0 understøtter debian-installer indlæsning af firmwarefiler eller pakker indeholdende firmware fra et eksternt medie, såsom et USB-drev. Se Afsnit 6.4, “Indlæsning af manglende firmware” for detaljeret information om hvordan firmwarefiler eller pakker skal indlæses under installationen.

Hvis debian-installer anmoder om en firmwarefil og du ikke har denne firmwarefil tilgængelig eller ikke ønsker at installere en ikkefri firmwarefil på dit system, så kan du fortsætte uden at indlæse firmwaren. Der er flere tilfælde hvor en driver anmoder om yderligere firmware fordi det skal bruges under bestemte omstændigheder, men enheden fungerer uden denne på de fleste systemer (dette sker f.eks. med bestemet netværkskort der bruger tg3-driveren).