|
Het bouwen van de kernel
Nu is alles klaar om de kernel op te bouwen. Kijk even of
u in de juiste dir bent door pwd
in te typen (we moeten ons in /usr/src/linux bevinden).
We willen eerst zeker zijn dat alles schoon is in de dir:
make clean
make mrproper
Deze twee commandos zorgen ervoor dat oude data uit
eerdere compilaties wordt verwijderd.
Er zijn meerdere mogelijkheden om een kernel te bouwen,
wij maken nu gebruik van de console menu methode
omdat het snel en gemakkelijk is. De kernel schrijft de
configuratie weg in een .config bestand. Als je er een van
een vorige versie hebt, of of een die je zelf gebouwd hebt,
kun je deze kopieren naar /usr/src/linux en een make
oldconfig uitvoeren. Dit script zorgt er dan
voor dat bij elke nieuwe toepassing en driver t.o.v. de
oude build, even wordt stilgestaan. Wij gaan
nu echter een menu configuratie doen:
make menuconfig (dit start
de menu configuratie op)
Als alles goed is moet men nu een blauw scherm zien met
een groot grijs menublok. Linksboven staat de kernelversie,
als het niet de goede kernelversie weergeeft bent u waarschijnlijk
ergens iets vergeten.
De eerste optie in het menu is Code Maturity level
options met vetgedrukt, hit enter om in
dit menu te gaan. We zien hier een [] met of zonder een
*. Als de * erin staat betekent het dat het geselekteerd
is. We hebben dus de keuze om meerdere experimentele drivers
mee te bakken, ofwel te compileren. We zorgen
ervoor dat de prompt for development and/or incomplete
drivers aangevinkt is. Neem de rechterpijl toets om
naar exit te gaan (beneden) om weer terug te
keren naar het vorige menu.
De volgende mogelijkheid is Loadable Module Support
Dit betekent dat Linux in verschillende op te roepen modules
kan worden opgedeeld. Deze op te roepen modules zijn eigenlijk
kleine stukjes code die de kernel in het geheugen brengt
en er weer uit kan halen. Deze codes voeren een bepaalde
funktie uit, als dat nodig is.
Stel u heeft geen scanner. U hoeft dus ook niet de scanner
drivers mee te bakken omdat die alleen maar geheugen van
Linux opvreten. Op deze manier kan iedereen een kernel opbouwen
die toegespitst is op de behoefte van de eindgebruiker,
u dus. Hij blijft dus snel en klein op deze manier en kan
dus op een floppy worden weggeschreven als u dat wilt. We
willen alle loadable modules selekteren door
met de pijl er naar toe te gaan en met de spatie te selekteren,
dus zoals hier afgebeeld -> [*]. Gebruik de rechts-toets
om weer uit het menu naar het hoofdmenu te gaan.
Het platform support menu is het belangrijkste
om goed in te stellen. Zorg dat het aangevinkt is en druk
op enter om erin te gaan. U ziet hier meerdere opties. De
eerste is het type processor. Vink het aan en druk enter.
De eerste regel moet u hebben die eruit ziet als 6xx/7xx/74xx/8260
waarnaast een X moet staan. De andere zijn embedded
en IBM Power3 en Power4 CPUs. Als u een
iMAc, iBook, G3/G4 systeem heeft kiest u de eerste regel.
De iMac heeft GEEN Power3 CPU ! Als het is aangevinkt dan
kunt u het menu weer verlaten. Je moet geen MPCC8260 support
kiezen en het type machine moet worden ingesteld op CHRP/PowerMac/PreP.
Als u een G4 bezit, vinkt u Altivec support aan. Aangezien
een iMac een G3 is (tenzij u de nieuwste platte iMac heeft),
kunt u beter de Altivec support uitschakelen.Je kunt Thermal
Management System aangevinkt laten, maar hou Interrupt
Drive TAU driver uitgevinkt (tenzij je wil kijken
of het op uw systeem werkt). U kunt de gemiddelde hoge/lage
temperatuur optie in cat/proc/cpuinfo aanvinken.
Ga nu weer naar het hoofdmenu.
De General Setup is ons volgende doel. Hier
kunnen we bepaalde system level opties instellen.
U kunt high memory support uitvinken. Ondersteuning
voor hot-pluggable apparaten wilt u wel hebben (tenzij u
een PCMCIA of PC kaart reader/slot heeft) en waarschijnlijk
heeft u geen parallelle poort ondersteuning nodig (tenzij
u een PCI kaart heeft of een USB apparaat heeft die daar
voor zorgt). Alle andere zaken moeten aangevinkt zijn behalve
RTAS ondersteuning, PreP Residual data
en default bootloader kernel arguments. Ga weer
uit dit menu.
Als u geen speciale apparatuur zoals een flash-kaart heeft,
kunt u de Memory Technology Devices, Plug
and Play configuration en block devices
overslaan. Als u wilt kunt u naar block devices
gaan en er loopback aanzetten en ramdisk
uitzetten of ze als modules laden. Het zelfde geldt voor
Multi-device support (RAID/LVM) tenzij u een raid
controller heeft of meerdere disks (of u heeft u distro
met RAID ondersteuning geinstalleerd).
Het volgende item is Network Options. Linux
heeft een hele krachtige uitrusting netwerkmogelijkheden,
dus u kunt ze allemaal een voor een bekijken en lezen. We
gaan in het kort in op de mogelijkheden. Installeer packet
socket en pacKeT socket mmapped IO. Dit is nodig voor applicaties
zoals tcpdump. Je kunt de kernel/user netlink socket meebakken
maar routing messages en netlink device emulation zijn niet
nodig. Network packet filtering is een must, dit zorgt voor
ondersteuning bij ip-tabellen (netfilter), wat nodig is
voor een firewall. Network packet filtering debugging is
niet echt nodig tenzij er grote problemen optreden bij network
packet filtering. Zorg ervoor dat socket filtering ook meegenomen
wordt aangezien een hoop programmas ervan gebruik
maken (vooral server-programmas). Unix domain sockets
en TCP/IP Networking (het protocol nodig voor het internet)
zijn ook een must. Je kunt IP:multicasting weglaten, het
wordt gebruikt door BGP en multimedia toepassingen zoals
mbone, maar is niet nodig om multimedia-toepasingen te laten
draaien ! Als je je ppc als router gaat gebruiken, dan is
de advanced router een aanrader. Het zorgt voor optimalisatie
van de kernel bij geavanceerde router-funkties. Als u dingen
als BOOTP of RARP (reverse ARP) gebruikt is IP kernel level
autoconfiguration nodig (zorgen voor netbooting maar zijn
niet nodig voor DHCP).
IP-tunneling is niet nodig, tenzij u een remote VPN (Virtual
Private Network) wilt serven of toegang toe
wil hebben via een ander VPN-netwerk. IP-tunneling zorgt
in wezen voor het opdelen van internetverkeer in kleine
pakketjes, encrypteert het en stuurt het als data het internet
weg. GRE zorgt ook voor IP-tunneling, wellicht heeft u dit
ook niet nodig, net zoals IP multcast routing, TCP Explicit
Congestion Notification support (deze laatste wordt sowieso
niet aanbevolen aangezien u problemen op het internet kunt
krijgen). Over TCP syncookie moet u maar eens in de handleiding
kijken wat het is en voor u zelf uitmaken of u het nodig
heeft.
Bij IP netfilter Configuration nemen we alles als een module
(vink aan en druk op de spatiebalk tot dat de M wordt weergegeven).
Alles wil je als module hebben behalve ipchains en ipfwadm,
neem deze maar gewoon. Alle andere opties kunt u links laten
liggen. Als u Appletalk wilt hebben, neem het mee als module.
Ga eruit naar het hoofdemnu als u hier klaar bent.
De volgende keuze is ATA/IDE/MFM/RLL ondersteuning. ATA
is AT-Attachment, IDE is de standaard voor harde schijven
en cdroms, MFM en RLL zijn een ouder tpe harde schijven
(voor IDE, jaren 80). Zorg ervoor dat deze opties zijn gekozen
en selekteer dan de IDE, ATA en ATAPI block devices menu
(vink aan en enter). Zorg in ieder geval dat de eerste optie
is aangevinkt (Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy
support). Ook nodig zijn Include IDE/ATA-2 DISK Support,IDE/ATAPI
CDRom Support, Generic PCI Bus-Master DMA Support, PCI DMA,
Builtin PowerMac IDE Support, PowerMac IDE DMA Support,
Use DMA. Als u een CD/DVD-brander wilt gebruiken, Firewire
of USB media apparatuur, neem dan SCSI emulation support,
evenals IDE/ATAPI Floppy Support.
In het hoofdmenu gaan we naar SCSI Support. Als u geen SCSI
apparatuur heeft kunt u het overslaan, echter USB, Firewire
dat gebruik maakt van SCSI-emulation kunt u dan ook niet
gebruiken. Als u firewire heeft (IEE1394), neem dan in ieder
geval alle firewire opties als module.
Het volgende is Network device support. Hier kiezen we onze
netwerk-apparaat drivers. Neem in ieder geval network device
support, dummy network driver, bonding driver (om twee ethernetverbindingen
te verbinden), universal tun/tap (tunneling support), PPP,
SLIP (tenzij u geen gebruik maakt van modem) of als u PP
niet nodig heeft voor DSL of tunneling), Ethernet (10 of
100 Mbit) (must voor iMac). Voor de veiligheid kunt u MACE
en BMAC nemen. GMAC is weer een must (zeker als u de kernel
op een iBook, G4-systeem of nieuwer type iMac gaat gebruiken).
Aan te raden zijn ook DECchip Tulip en load Generic DECchip
als een module te nemen. Neem zeker Use PCI shared mem voor
NIC registers. Als u een airportkaart heeft, selekteert
u dan de Wireless LAN (non-hamradio), Hermes chipset en
Apple airport support. U kunt weer terug naar het hoofdmenu.
Ga nu naar Console drivers en zorg er voor dat in ieder
geval de chipset voor de iMac is ondersteund (te vinden
oner frame buffer support). Als u onzeker bent, neemt u
maar gewoon alle ATI-dingen, dan zit u goed. Neem in ieder
geval voor Support for VGA Console, dan heeft u naast de
ATI-apparatuur ook ondersteuning voor het Open Firmware
frame buffer apparaat.
De volgende optie is input core support (USB Human Interface
Device). Neem alles behalve joystick ondersteuning, tenzij
u er eentje heeft.
Macintosh Device Drives is de volgende stap. Eerste generatie
iMacs hebben CUDA based iMac support nodig, anders neem
PMU. Als u niet welke iMac u heeft, neem ze dan maar allebei.
U kunt de rest leeg laten, iMacs hebben geen ADB of seriele
poorten tenzij u het modem wilt gebruiken, dan moet u seriele
poorten meenemen.
U kunt character devices en multimedia devices overslaan,
tenzij u een webcam of een digitale videocamera heeft (Video
4 Linux heeft u dan nodig), of u gebruikt een benh kernel.
Als u een nieuw type benh kernel heeft, neem dan ook /dev/agpgart
en Apple UniNorth support met ATI Rage 128 support, tenzij
u een ouder type iMac heeft dat niet gebruik maakt van een
ATI Rage 128 chipset. Bij de volgende optie, filesystems,
is het van belang dat u alles neemt wat u nodig heeft. De
standaardinstelling werkt voor bijna iedereen maar ik zal
het hier toch even noemen. Apple Macintosh File System Support
(HFS support, nodig in bv Mac-on-Linux), Virtual Memory
File System support, ISO 9660 (CDROM), /proc en /dev filesystem
support, /dev/pts file system support, sencond extension
file system support. Al deze opties behalve second extended
file system support kunt u als modules nemen. In ieder geval
wel mee te nemen zijn DOS FAT, MSDOS FAT en VFAT (als u
Windows en Dos disks of partities wil lezen). Misschien
wilt u ook wel Microsoft CDs kunnen lezen, neem dan
Microsoft Joliet extensions. Als u DVDs wil kijken,
neem dan UDF support. UFS wordt gebruikt door Unix (BSD)
en MacOSX. Als u files over een netwerk wilt bekijken moet
u NFS eb SMB (=Samba, Windows netwerk ondersteuning). Onder
Partition types heeft u Macintosh partition map support
nodig, en misschien ook wel PC BIOS. Tip: Als u ook een
PC heeft met Linux, kunt u de kernel van de PC met Macintosh
partition map support voorzien zodat als de Mac in de toekomst
niet zou opstarten, u de data kunt herstellen en de disk
weer schoon kunt maken zonder dat u hem naar de dealer hoeft
terug te brengen.
De volgende optie is geluid. Neem sound support mee naast
PowerMac DMA sound support. Bij USB support, neemt u USB
device file system, OHCI (Compaq, iMac, etc), USB Human
Interface Device (full HID) ondersteuning en elke andere
USB driver die u nodig heeft voor uw apparatuur (zip, printers,
scanners enzovoorts). Als u bluetooth apparatuur heeft schakel
deze dan ook in het desbetreffende menu. Keer weer terug
naar het hoofdmenu. Ga nu uit het hoofmenu met exit.
U wordt gevraagd of u de kernel-configuratie wil vastleggen,
zorg er voor dat YES is opgelicht en blauw en druk enter.
|