Compileren van ontbrekende kernelmodulesDe Linux-kernel kan met drivers voor diverse faciliteiten worden toegerust. Je kunt de drivers in de kernel-image statisch compileren of je kunt ze als een module compileren om ze op verzoek te laden. De laatste methode heeft de voorkeur voor drivers die niet essentieel zijn voor het tot leven brengen van je Linux-systeem, omdat je kernel dan kleiner en sneller zal zijn. Een aantal drivers zijn echter essentieel op het systeem te kunnen laten werken en je zou ze niet als een module moeten compileren. Voorbeeld: als je systeem zich op een IDE-harddisk bevindt, moet de driver voor je IDE-harddisk zich in de kernel bevinden -- en niet als een module.Er zijn drie verschillende typen CD-writers: SCSI, IDE/ATAPI en externe writers die via parallelle poort werken. De tabel laat zien hoe je de Linux-kernel voor deze hardwaretypen kunt configureren. De eerste kolom van de tabel is de sectie van het configuratie-menu van de kernel, waar je de instelling kunt vinden. De tweede kolom is de beschrijving van de faciliteit (ook afkomstig van het configuratie-menu van de kernel). De kolommen met de namen SCSI, IDE en PP bevatten de benodigde opties voor de daarmee verbonden hardware (PP = parallelle poort).Sect. Beschrijving Module SCSI IDE PP ------------------------------------------------------------ BLOCK Enhanced IDE/MFM/RLL... Y BLOCK IDE/ATAPI CDROM ide-cd M BLOCK SCSI emulation support ide-scsi M BLOCK Loopback device loop M M M PARIDE Parallel port IDE device paride Y/M PARIDE Parallel port ATAPI CD-ROMs M PARIDE Parallel port generic ATAPI M PARIDE (select a low-level driver) Y SCSI SCSI support scsi_mod Y/M Y/M SCSI SCSI CD-ROM support sr_mod Y/M Y/M SCSI Enable vendor-specific Y Y SCSI SCSI generic support sg Y/M Y/M SCSI (select a low-level driver) Y FS ISO 9660 CDROM filesystem iso9660 Y/M Y/M Y/M FS Microsoft Joliet cdrom... joliet Y Y YTabel: driver selectie voor verschillende writer typenY staat voor ja en betekent dat je het beest in de kernel zou moeten compileren. M staat voor module en betekent dat je deze faciliteit als een module zou kunnen of moeten compileren. Y/M geeft je de optie tussen één van beiden te kiezen (de volgorde geeft keuzes aan met minder potentiële problemen). Lege instellingen hoeven niet te worden gewijzigd en als je ze niet verandert, maakt dat de kans groter dat de resulterende kernel voor je zal werken (als dat het voorheen deed...). Vooral in omgevingen waar SCSI en ATAPI door elkaar worden gebruikt, kun je het meeste beter als modules bouwen.Het compileren van het loopback device optioneel. Het staat je toe de image te testen, voordat je het naar de media gaat schrijven. Als je CD-ROM's wilt kunnen lezen, heb je ondersteuning nodig voor het ISO 9660 bestandssysteem. Met deze driver worden automatisch RockRidge Extensies opgenomen. De Microsoft Joliet CD-ROM uitbreidingen moeten expliciet aan het ISO 9660 bestandssysteem worden toegevoegd. Je hebt in ieder geval een low-level driver voor je hardware nodig. Low-level verwijst naar de driver, die direct op de hardware inwerkt. Er zijn voor SCSI en de parallelle poort een heleboel low-level drivers beschikbaar.Het installeren van de resulterende Linux-kernel valt buiten het kader van deze HOWTO. Raadpleeg hiervoor alsjeblieft de documentatie van je Linux-distributie.Als gebruiker van RedHat Linux zou je er op moeten letten dat je de features "Ramdisk support" en "Initial ramdisk" moet compileren. Bovendien moet je een nieuwe ramdisk met de nieuwe modules genereren door het aanroepen van een commando als "mkinitrd --preload ide-cd initrd-2.2.14.img 2.2.14".

Speciale notities voor kernels tot aan versie 2.2.9 Activeer tot aan kernelversie 2.2.9 niet tegelijkertijd de variabele CONFIG_SCSI_MULTI_LUN ('uitproberen van meerdere luns') en ide-scsi support, een ide-scsi bug belet dit.Een aantal gebruikers rapporteerden conflicten met voorgecompileerde binaries en de 2.2-release. Dit is een probleem met de Linux-kernel. Mogelijke oplossingen: Misschien dat het weg gaat, als je cdrecord opnieuw compileert, zodat het zich aanpast aan de feitelijke waarden in linux/include/scsi/sg.h. Deze waarden moeten gelijk zijn aan de waarden van de draaiende kernel, vanwege de dumb sg gebruikersinterface.Het wordt misschien veroorzaakt door een laadbare sg-driver, die niet voldoende geheugen toegekend kan krijgen, van toepassing voor DMA. (tot aan kernelversie 2.2.5).

Speciale notities over SCSI CD-WritersWees er zeker van dat je brander door de BIOS van je computer wordt herkend. Het heeft geen zin om verder te gaan als je computer de hardware niet accepteert (het feit dat het het niet afstoot, zou niet moeten worden geïnterpreteerd als een teken van bevestiging; een bericht op het scherm is vereist). Als je van plan bent om je SCSI-drive via je parallelle poort aan te sluiten (niet te verwarren met de IDE-drives voor de parallelle poort), heb je een speciale kabel en een speciale kerneldriver nodig. Lees alsjeblieft de om meer over deze optie te leren.

Speciale notities over CD-writers voor de parallelle poortIk weet hier niets van, sorry. Lees alsjeblieft of je lokale bestand /usr/src/linux/Documentation/paride.txt.