next up previous contents index
Next: Das Übersetzen der Up: Recompilieren des Kernels Previous: Entpacken der Quelltexte

Das Konfigurationsscript

Da, wie schon oben erwähnt, nicht alle Treiber immer im Kernel benötigt werden, sollte der Kernel, um Speicher zu sparen, für das jeweilige System konfiguriert werden. Dazu wechselt man in das Verzeichnis /usr/src/linux und führt das Kommando make config aus. Dadurch wird ein Shellscript gestartet, das die interaktive Konfiguration der meisten Kernelparameter zuläßt. Grundsätzlich ist es möglich, alle Treiber gleichzeitig einzubinden, um einen Kernel auf möglichst vielen Rechnern verwenden zu können. Dies ist bei den Bootdisketten der verschiedenen Distributionen der Fall. Diese Vielfalt führt aber zu einem wesentlich höheren Speicherbedarf des Kernels. Folgende Fragen werden dem Benutzer von dem Konfigurationsprogramm gestellt:

Allgemeine Konfiguration 

Kernel math emulation (CONFIG_MATH_EMULATION) [y]
Befindet sich ein mathematischer Coprozessor im System, oder wird der Kernel für einen 80486DX übersetzt, so kann auf diese Frage mit n geantwortet werden, da der Kernel keinen Coprozessor zu emulieren braucht.
Normal floppy disk support (CONFIG_BLK_DEV_FD) [y]
Im Zeitalter der globalen Vernetzung können immer mehr Benutzer auf Diskettenlaufwerke verzichten. Diesem Wunsch trägt diese Auswahl Rechnung.
Normal (MFM/RLL) disk and IDE disk/cdrom support (CONFIG_ST506) [y]
Hier wird der Treiber für IDE, RLL, ESDI und MFM Festplatten konfiguriert. Befindet sich einer dieser Festplattentypen in Ihrem System, sollten Sie auf diese Frage mit y antworten.
Use old disk-only driver for primary i/f (CONFIG_BLK_DEV_HD) [n]
Bindet statt des neuen Treibers, der auch E-IDE und CD-ROMs untersützt, den alten Treiber ein. Verwenden Sie ihn nur, wenn mit dem neuen Probleme auftauchen.
Include new IDE driver for secondary i/f support (CONFIG_BLK_DEV_IDE) [n]
Ermöglicht die Verwendung von zwei IDE-Controllern. Die Controller müssen auf verschiedene IO-Ports und Interrupts konfiguriert sein.
Include support for IDE/ATAPI CDROMs (CONFIG_BLK_DEV_IDECD) [n]
Ermöglicht die Verwendung der modernen, am IDE-Bus betriebenen CD-ROM-Laufwerke.
XT harddisk support (CONFIG_BLK_DEV_XD) [n]
Sollten Sie in Ihrem Rechner noch zusätzlich einen alten XT-Harddisk-Controller verwenden wollen, so kann hier ein Treiber für alte 8-Bit-Controller eingebunden werden.
Networking support (CONFIG_NET) [y]
bindet die elementaren Netzwerkfunktionen in den Kernel ein.
Limit memory to low 16MB (CONFIG_MAX_16M) [n]
Auf vielen Rechnern ist der externe Cache-Speicher nur für 16MB ausgelegt. Auf diesen Systemen kommt es zu starken Geschwindigkeitseinbußen, wenn Linux mit mehr als 16MB RAM betrieben wird. Um dies zu vermeiden, kann dem Kernel mit dieser Option mitgeteilt werden, daß nur die ersten 16MB RAM verwendet werden sollen.
PCI bios support (CONFIG_PCI) [n]
Moderne PCI-Bus-Systeme unterstützen 32-Bit Protected-Mode BIOS-Funktionen, die auch unter Linux nutzbar sind. Um einen SCSI-Controller, der auf dem NCR53C810- oder NCR53C815-Chip basiert, anzusprechen, muß die PCI-BIOS-Unterstützung in den Kernel eingebunden werden.
PCI bridge optimisation (experimental) (CONFIG_PCI_OPTIMIZE) [n]
Nimmt eine Geschwindigkeitsoptimierung der PCI-Bridge vor. Achtung, diese Option kann BIOS-Einstellungen zur PCI-Konfiguration außer Kraft setzen und ist deshalb mit Vorsicht zu genießen.
System V IPC (CONFIG_SYSVIPC) [y]
Stellt einige Möglichkeiten der Interprozeßkommunikation zur Verfügung, wie Semaphore, Shared-Memory und Messages. Insbesondere der dosemu erfordert diese Option.
Kernel support for ELF binaries (CONFIG_BINFMT_ELF) [y]
Bindet Unterstützung für ELF-Shared-Libraries in den Kernel ein. Das ELF (Extended Link Format) wird in absehbarer Zeit das alte linuxeigene Format ablösen.
Use -m486 flag for 486-specific optimizations (CONFIG_M486) [y]
Der 80486 verfügt über eine Reihe von Befehlen, die gegenüber dem 80386 stark optimiert worden sind. Wird diese Option angegeben, so werden verstärkt diese Befehle verwendet. Der erzeugte Maschinencode ist aber auch auf 80386-Prozessoren ausführbar.
Set version information on all symbols for modules (CONFIG_MODVERSIONS) [n]
Dient zur Unterstützung kernelunabhängiger ladbarer Module. Bislang sind die meisten Kernelmodule nicht auf diese Unterstützung hin umgestellt.

Netzwerk-Funktionen 

TCP/IP networking (CONFIG_INET) [y]
bindet die TCP/IP-Protokollfamilie in den Kernel ein.
IP forwarding/gatewaying (CONFIG_IP_FORWARD) [n]
Diese Option ist insbesondere wichtig, wenn der Linux-Rechner als Router bzw. Gateway verwendet wird. Im ''Normalbetrieb'' kann diese Option ausgeschaltet bleiben.
IP multicasting (CONFIG_IP_MULTICAST) [n]
bindet Unterstützung für Multicasting in den Kernel ein. Die Implementierung ist noch nicht vollständig. Wer diese Funktionen verwenden will, sollte sich die entsprechenden Quelltextdateien zu Gemüte führen.
IP firewalling (CONFIG_IP_FIREWALL) [n]
ermöglicht einen Linux-Rechner als Firewall zu konfigurieren. Um die zu sperrenden Adressen und Ports zu setzen, wird das Programm '' ipfirewall'' benötigt, das nicht Teil der Kernelquelltexte ist.
IP accounting (CONFIG_IP_ACCT) [n]
Über das '' procDateisystem können Informationen über versendete und empfangene IP-Pakete ausgegeben werden. Um diese Funktionalität zu erreichen, beantworten Sie die Frage mit y.
Bei den nächsten fünf Fragen ist es ratsam, die Vorgaben zu akzeptieren.
PC/TCP compatibility mode (CONFIG_INET_PCTCP) [n]
Reverse ARP (CONFIG_INET_RARP) [n]
Assume subnets are local (CONFIG_INET_SNARL) [y]
Disable NAGLE algorithm (normally enabled) (CONFIG_TCP_NAGLE_OFF) [n]
The IPX protocol (CONFIG_IPX) [n]

SCSI-Unterstützung

SCSI support? (CONFIG_SCSI) [n]
Hier können alle weiteren SCSI-Konfigurationsmöglichkeiten übersprungen werden.
Scsi disk support (CONFIG_BLK_DEV_SD) [y]
bestimmt, ob SCSI-Festplatten unterstützt werden. Die Angaben zu den entsprechenden Controllern werden später erfragt.
Scsi tape support (CONFIG_CHR_DEV_ST) [y]
bindet die Unterstützung für SCSI-Bandlaufwerke in den Kernel ein.
Scsi CDROM support (CONFIG_BLK_DEV_SR) [y]
Hier kann die Unterstützung für SCSI-CD-ROM-Laufwerke eincompiliert werden. Diese Unterstützung ist nur für CD-ROMs vorhanden, die über einen der nachfolgend konfigurierten Hostadapter angesteuert werden.
Scsi generic support (CONFIG_CHR_DEV_SG) [y]
bindet einen Treiber ein, der es Benutzerprogrammen erlaubt, SCSI-Geräte zu steuern.  
Die folgenden Fragen beziehen sich auf den Hostadapter, der in Ihrem System installiert ist. Die Fragen nach den Adaptern, die in Ihrem System installiert sind, sollten mit y beantwortet werden, alle anderen mit n.
Adaptec AHA152X support (CONFIG_SCSI_AHA152X) [n]
Adaptec AHA1542 support (CONFIG_SCSI_AHA1542) [y]
Adaptec AHA1740 support (CONFIG_SCSI_AHA1740) [n]
Adaptec AHA274X/284X support (CONFIG_SCSI_AHA274X) [n]
BusLogic SCSI support (CONFIG_SCSI_BUSLOGIC) [n]
EATA-DMA (DPT,NEC&ATT for ISA,EISA,PCI) support (CONFIG_SCSI_EATA_DMA) [n]
UltraStor 14F/34F support (CONFIG_SCSI_U14_34F) [n]
Future Domain 16xx SCSI support (CONFIG_SCSI_FUTURE_DOMAIN) [n]
Generic NCR5380 SCSI support (CONFIG_SCSI_GENERIC_NCR5380) [n]
NCR53c7,8xx SCSI support (CONFIG_SCSI_NCR53C7xx) [n]
Always IN2000 SCSI support (test release) (CONFIG_SCSI_IN2000) [n]
PAS16 SCSI support (CONFIG_SCSI_PAS16) [n]
QLOGIC SCSI support (CONFIG_SCSI_QLOGIC) [n]
ST-02 and Future Domain TMC-8xx support (CONFIG_SCSI_SEAGATE) [y]
Trantor T128/T128F/T228 SCSI support (CONFIG_SCSI_T128) [y]
UltraStor SCSI support (CONFIG_SCSI_ULTRASTOR) [y]
7000FASST SCSI support (CONFIG_SCSI_7000FASST) [y]

Netzwerktreiber und -protokolle  

Network device support? (CONFIG_NETDEVICES) [y]
Auch wenn kein anderes Netzwerkdevice konfiguriert werden soll, sollte diese Frage mit '' y'' beantwortet werden, damit das ''Loopback-Devicefunktioniert.
Dummy net driver support (CONFIG_DUMMY) [n]
Wenn Ihr Rechner nur zeitweise mit einem Netz verbunden ist, kann das ''dummy-device'' verwendet werden, um lokale Netzwerkverbindungen unter dem Rechnernamen aufbauen zu können.
SLIP (serial line) support (CONFIG_SLIP) [n]
CSLIP compressed headers (SL_COMPRESSED) [y]
16 channels instead of 4 (SL_SLIP_LOTS) [n]
PPP (point-to-point) support (CONFIG_PPP) [n]
PLIP (parallel port) support (CONFIG_PLIP) [n]
Bindet SLIP-, PPP- und PLIP-Treiber in den Kernel ein.

Ethernetkarten 

In der Kernelversion 1.2.0 sind bereits einige wenig erprobte ALPHA-Test-Treiber für ARCNET- und folgende Ethernetkarten enthalten: 3c505, 3c507 von 3Com, EtherExpress und EtherExpressPro von Intel, AT1700 von Allied Telesis, NI5210 und NI6510 von MICOM-Interlan, WaveLan von AT&T sowie für die EISA 3200 von Ansel Comunications.
Um die Anzahl der Tastendrücke zur Kernelkonfiguration zu minimieren, können bei der Auswahl der Ethernetkarten ganze Familien übersprungen werden. Wird die Frage nach einer Kartengruppe verneint, so werden alle in ihr zusammengefaßten Treiber nicht in den Kernel eingebunden.
Do you want to be offered ALPHA test drivers (CONFIG_NET_ALPHA) [n]
Ein '' näls Antwort auf diese Frage verhindert, daß ALPHA-Treiber für einige Netzwerkkarten in den Kernel eingebunden werden.
Western Digital/SMC cards (CONFIG_NET_VENDOR_SMC) [n]
WD80*3 support (CONFIG_WD80x3) [n]
SMC Ultra support (CONFIG_ULTRA) [n]
AMD LANCE and PCnet (AT1500 and NE2100) support (CONFIG_LANCE) [n]
3COM cards (CONFIG_NET_VENDOR_3COM) [y]
3c501 support (CONFIG_EL1) [n]
3c503 support (CONFIG_EL2) [n]
3c505 support (CONFIG_ELPLUS) [n]
3c507 support (CONFIG_EL16) [n]
3c509/3c579 support (CONFIG_EL3) [y]
Other ISA cards (CONFIG_NET_ISA) [n]
Cabletron E21xx support (not recommended) (CONFIG_E2100) [n]
DEPCA support (CONFIG_DEPCA) [n]
EtherWorks 3 support (CONFIG_EWRK3) [n]
Arcnet support (CONFIG_ARCNET) [n]
AT1700 support (CONFIG_AT1700) [n]
EtherExpressPro support (CONFIG_EEXPRESS_PRO) [n]
EtherExpress support (CONFIG_EEXPRESS) [n]
NI5210 support (CONFIG_NI52) [n]
NI6510 support (CONFIG_NI65) [n]
WaveLAN support (CONFIG_WAVELAN) [n]
HP PCLAN+ (27247B and 27252A) support (CONFIG_HPLAN_PLUS) [n]
HP PCLAN (27245 and other 27xxx series) support (CONFIG_HPLAN) [n]
NE2000/NE1000 support (CONFIG_NE2000) [y]
SK_G16 support (CONFIG_SK_G16) [n]
EISA and on board controllers (CONFIG_NET_EISA) [n]
Ansel Communications EISA 3200 support (CONFIG_AC3200) [n]
Apricot Xen-II on board ethernet (CONFIG_APRICOT) [n]
DE425, DE434, DE435 support (CONFIG_DE4X5) [n]

Zenith Z-Note support (CONFIG_ZNET) [y]
Pocket and portable adaptors (CONFIG_NET_POCKET) [n]
AT-LAN-TEC/RealTek pocket adaptor support (CONFIG_ATP) [n]
D-Link DE600 pocket adaptor support (CONFIG_DE600) [n]
D-Link DE620 pocket adaptor support (CONFIG_DE620) [n]

CD-ROM-Treiber  

Sony CDU31A/CDU33A CDROM driver support (CONFIG_CDU31A) [n]
Mitsumi CDROM (not IDE/ATAPI) driver support (CONFIG_MCD) [n]
bindet den Treiber für verschiedene Mitsumi CD-ROM-Laufwerke ein.
Matsushita/Panasonic CDROM driver support (CONFIG_SBPCD) [n]
Matsushita/Panasonic second CDROM controller support (CONFIG_SBPCD2) [n]
Matsushita/Panasonic third CDROM controller support (CONFIG_SBPCD3) [n]
Matsushita/Panasonic fourth CDROM controller support (CONFIG_SBPCD4) [n]
Von den Matsushita/Panasonic CD-ROM-Laufwerken werden bis zu vier unterstützt.
Aztech/Orchid/Okano/Wearnes (non IDE) CDROM support (CONFIG_AZTCD) [n]
Sony CDU535 CDROM driver support (CONFIG_CDU535) [n]

Dateisysteme  

Standard (minix) fs support (CONFIG_MINIX_FS) [y]
Dieses Dateisystem sollte wegen seiner weiten Verbreitung auf jeden Fall in den Kernel eincompiliert werden, da es meistens auf Disketten verwendet wird. Es ist in der Partitionsgröße auf 64 MB beschränkt.
Extended fs support (CONFIG_EXT_FS) [n]
Dieses Dateisystem wird nur noch aus Gründen der Kompatibilität unterstützt. Auf neu installierten Systemen sollte es nicht mehr verwendet werden.
Second extended fs support (CONFIG_EXT2_FS) [y]
Das ßecond extended Filesystemïst das schnellste, leistungsfähigste und derzeit am weitesten verbreitete Linux-Dateisystem. Es erlaubt Partitionsgrößen bis zu 4GB und Dateigrößen bis zu 4GB. Eine Erweiterung auf Partitionsgrößen von 2TB steht in Aussicht. Eine Konvertierung wird ohne Neuformatieren möglich sein. Das ext2fs ist von vornherein auf gute Erweiterbarkeit ausgelegt und ist ''das'' Linux-Dateisystem schlechthin.
xiafs filesystem support (CONFIG_XIA_FS) [n]
Das xiafs ist stark an das Minix-Dateisystem angelehnt und älter als das ext2fs. Es unterstützt Partitionsgrößen bis zu 4 GB und Dateigrößen bis zu 64 MB. Dateinamen können bis zu 255 Zeichen lang sein.
msdos fs support (CONFIG_MSDOS_FS) [y]
Wenn MS-DOS-Disketten oder -Partitionen gemountet werden sollen, kann das MS-DOS-Dateisystem eincompiliert werden. Wird diese Frage mit n beantwortet, ist es trotzdem möglich, MS-DOS-Disketten mit den mtools zu bearbeiten.
umsdos: Unix like fs on top of std MSDOS FAT fs (CONFIG_UMSDOS_FS) [n]
Das UMSDOS-Dateisystem ist eine Erweiterung zum MS-DOS-Dateisystem. Es implementiert Features wie Zugriffsrechte, Besitzer und Gruppen auf einem normalen MS-DOS-Dateisystem. /proc filesystem support (CONFIG_PROC_FS) [y]
Das sog. Prozeßdateisystem bildet die interne Prozeßstruktur des Kernels auf das Dateisystem ab. Die neuen Versionen von ps, free, xsysinfo, u. a. verwenden dieses Dateisystem, um die entsprechenden Informationen zu lesen.
NFS filesystem support (CONFIG_NFS_FS) [y]
Wird das NFS-Dateisystem mit eingebunden, so können im Netz Verzeichnisse anderer Rechner gemountet werden.
ISO9660 cdrom filesystem support (CONFIG_ISO9660_FS) [n]
Das ISO9660 Dateisystem ist das Standarddateisystem für CD-ROMs. Linux unterstützt sowohl das `reine' ISO9660 Dateisystem als auch die Rock Ridge Erweiterungen.
OS/2 HPFS filesystem support (read only) (CONFIG_HPFS_FS) [n]
Dieser Treiber ermöglicht das Lesen von OS/2 HPFS-Dateisystemen. Ein Beschreiben der Dateisysteme ist nicht möglich.
System V and Coherent filesystem support (CONFIG_SYSV_FS) [n]
Auch für SystemV R2 386, Xenix und Coherent stellt Linux Treiber zur Verfügung. Das System-V-Dateisystem ist bislang auf Disketten beschränkt.

Konfiguration der zeichenorientierten Geräte  

Cyclades async mux support (CONFIG_CYCLADES) [y]
Dies ist ein Treiber für eine RISC-gesteuerte serielle Multiportkarte mit bis zu 32 seriellen Schnittstellen.
Parallel printer support (CONFIG_PRINTER) [y]
bindet die Unterstützung für die parallelen Schnittstellen ein.
Logitech busmouse support (CONFIG_BUSMOUSE) [n]
PS/2 mouse (aka äuxiliary device'') support (CONFIG_PSMOUSE) [y]
C&T 82C710 mouse port support (as on TI Travelmate) (CONFIG_82C710_MOUSE) [n]
Microsoft busmouse support (CONFIG_MS_BUSMOUSE) [n]
ATIXL busmouse support (CONFIG_ATIXL_BUSMOUSE) [n]

Für serielle Mäuse ist kein Treiber erforderlich.

Bandlaufwerke  

QIC-02 tape support (CONFIG_QIC02_TAPE) [n]
compiliert den Treiber für QIC-02 Bandlaufwerke in den Kernel ein.
Do you want runtime configuration for QIC-02 (CONFIG_QIC02_DYNCONF) [y]
Diese Option ermöglicht es, die Parameter des Bandlaufwerkes zur Laufzeit einzustellen. Sie benötigen dazu das Programm qic02conf. Ansonsten müssen Sie die Parameter Ihres Laufwerkes in der Datei ./include/linux/tpqic02.h eintragen.
QIC-117 tape support (CONFIG_FTAPE) [n]
bindet Treiber für ''FloppytapeLaufwerke mit den Bandformaten QIC-40 und QIC-80 ein.
number of ftape buffers (NR_FTAPE_BUFFERS) [3]
... ein Angebot, das Sie nicht ausschlagen sollten ...

Multimedia   

Soundcard support (CONFIG_SOUND) [n]
bindet Treiber für AdLib, Soundblaster, ProAudio Spectrum und Gravis Ultrasound ein.

Kernelhacking

Kernel profiling support (CONFIG_PROFILE) [n]
Wenn Programme mit Hilfe eines Profilers optimiert werden sollen, kann mit dieser Option Unterstützung für den Profiler in den Kernel eincompiliert werden.
Verbose scsi error reporting (CONFIG_SCSI_CONSTANTS) [y]
stellt ausführliche Fehlermeldungen der SCSI-Treiber zur Verfügung. Wird diese Option ausgewählt, vergrößert sich der Kernel um ca. 12KB.

Änderungen im Makefile  

Ist die Konfiguration abgeschlossen, kann noch das Makefile geändert werden, da das Shellscript nicht alle Konfigurationsmöglichkeiten berücksichtigt. Zu konfigurieren bleiben noch das Rootdevice, der Videomodus und die RAM-Disk. Dazu werden im Makefile die entsprechenden Angaben den Variablen zugewiesen. Das Rootdevice wird über die Variable ROOT_DEV = /dev/ Partition festgelegt (Zeile 50). Der Standardwert CURRENT bezeichnet das aktuelle Rootdevice. Der Videomodus wird über die Variable SVGA_MODE = Modus eingestellt (Zeile 65). Soll Linux im normalen 80x25-Zeichen-Modus arbeiten, so ist hier NORMAL_VGA anzugeben, ansonsten wird die Nummer des Videomodus eingetragen, wie er beim Booten angegeben wird. Die RAM-Disk wird erzeugt, indem das Kommentarzeichen vor der Variable RAMDISK entfernt und in der dahinter stehenden Präprozessordirektive -DRAMDISK= xxx die gewünschte Größe angegeben wird (Zeile 82).



next up previous contents index
Next: Das Übersetzen der Up: Recompilieren des Kernels Previous: Entpacken der Quelltexte



Linux Anwenderhandbuch -- Copyright 1993, 1994, 1995 S. Hetze, D. Hohndel, O. Kirch, M. Müller