Haftungsausschluss:
Dieses Handbuch wurde durch eine neuere Version ersetzt und wird nicht länger gepflegt.
|
[ << ]
[ < ]
[ Hauptseite ]
[ > ]
[ >> ]
7. Konfiguration des Kernels
Inhalt:
7.a. Setzen der Zeitzone des Systems
Zuerst müssen Sie dem System sagen, in welcher Zeitzone es sich befindet.
Suchen Sie Ihre Zeitzone in/usr/share/zoneinfo/ und kopieren Sie
diese dann nach /etc/localtime. Bitte vermeiden Sie die
/usr/share/zoneinfo/Etc/GMT* Zeitzonen, denn deren Namen verweisen
nicht auf die erwarteten Zonen. Zum Beispiel ist GMT-8 in
Wirklichkeit GMT+8.
Befehlsauflistung 1.1: Setzen der Zeitzone |
# ls /usr/share/zoneinfo
# cp /usr/share/zoneinfo/GMT /etc/localtime
|
7.b. Installieren der Quellen
Auswählen eines Kernels
Der Kern um den herum alle Distributionen gebaut sind ist der Linux Kernel. Es
ist die Ebene zwischen den Benutzerprogrammen und der Systemhardware. Gentoo
bietet seinen Benutzern verschiedene mögliche Kernelquellen. Eine komplette
Liste mit Beschreibungen finden Sie im Gentoo Kernel Leitfaden.
Für HPPA gibt es die hppa-sources. Standardmäßig basieren diese Quellen
auf den Quellen auf unserer Installations-CD. Fahren Sie fort indem Sie die
Kernelquellen installieren.
Befehlsauflistung 2.1: Installieren von Kernelquellen |
# emerge hppa-sources
|
Wenn Sie einen Blick in /usr/src werfen, sollten Sie einen Symlink
sehen, genannt linux, der auf Ihre Kernelquelle verweist. In
diesem Fall verweisen die installierten Kernelquellen auf
hppa-sources-2.6.16.18-pa11. Denken Sie daran, dass Ihre Version eine
andere sein kann.
Befehlsauflistung 2.2: Anzeigen des Kernelquellen Symlinks |
# ls -l /usr/src/linux
lrwxrwxrwx 1 root root 12 Oct 13 11:04 /usr/src/linux -> linux-2.6.16.18-pa11
|
Nun ist es Zeit Ihre Kernelquelle zu konfigurieren und zu kompilieren. Alle
Architekturen können genkernel verwenden, welches einen generischen
Kernel erstellt, wie er von der Installations-CD verwendet wird. Wir erklären
die "manuelle" Konfiguration jedoch zuerst, denn es ist der beste Weg Ihre
Umgebung zu optimieren.
Wenn Sie Ihren Kernel manuell konfigurieren wollen fahren Sie nun mit Standard: Manuelle Konfiguration fort. Wenn
Sie genkernel benutzen wollen, sollten Sie stattdessen
Alternativ: Benutzung von Genkernel lesen.
7.c. Standard: Manuelle Konfiguration
Einführung
Einen Kernel manuell zu konfigurieren wird oft als der schwierigste Teil
gesehen, den jeder Linux Benutzer insgesamt meistern muss. Nichts ist weiter von
der Wahrheit entfernt -- nach der Konfiguration von einigen Kerneln werden Sie
sich gar nicht daran erinnern, dass es schwer war ;-)
Jedoch eine Sache ist wahr: Sie müssen Ihr System kennen, wenn Sie
beginnen einen Kernel manuell zu konfigurieren. Die meisten Informationen
können gesammelt werden, indem Sie sich pciutils installieren (emerge
pciutils), welches lspci enthält. Sie haben nun die Möglichkeit
lspci innerhalb der chroot Umgebung zu verwenden. Sie können ohne Sorge
jegliche pcilib Warnungen (wie pcilib: cannot open
/sys/bus/pci/devices), die lspci auswirft, ignorieren. Alternativ
können Sie lspci aus einer nicht-chroot Umgebung ausführen. Das
Resultat ist dasselbe. Sie können auch lsmod ausführen um zu sehen
welche Kernelmodule die Installations CD verwendet (es kann ihnen einen netten
Hinweis darauf geben was zu aktivieren ist).
Gehen Sie nun in Ihr Kernelquellverzeichnis und führen Sie make
menuconfig aus. Dies startet ein ncurses-basierendes Konfigurationsmenü.
Befehlsauflistung 3.1: Menuconfig starten |
# cd /usr/src/linux
# make menuconfig
|
Ihnen werden verschiedene Konfigurationssektionen präsentiert. Wir listen
zunächst einige Optionen auf, die Sie aktivieren müssen (ansonsten wird Gentoo
nicht funktionieren, oder ohne zusätzliche Veränderungen nicht richtig
funktionieren).
Aktivieren der benötigten Optionen
Zunächst aktivieren Sie die Benutzung von Entwicklungs- und Experiementellem/n
Code/Treiber(n). Sie brauchen dies, denn ansonsten werden einige wichtige
Codeabschnitte/Treiber nicht erscheinen.
Befehlsauflistung 3.2: Selektieren experimenteller/n Codes/Treiber |
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
|
Gehen Sie nun in File Systems und selektieren Sie Unterstützung für die
Dateisysteme die Sie benutzen. Kompilieren Sie diese nicht als Module,
ansonsten wird ihr Gentoo System nicht fähig sein, Ihre Partitionen zu mounten.
Selektieren Sie auch Virtual memory und /proc file system.
Befehlsauflistung 3.3: Selektieren notwendiger Dateisysteme |
File systems --->
Pseudo Filesystems --->
[*] /proc file system support
[*] Virtual memory file system support (former shm fs)
<*> Reiserfs support
<*> Ext3 journalling file system support
<*> JFS filesystem support
<*> Second extended fs support
<*> XFS filesystem support
|
Wenn Sie PPPoE benutzen um sich ins Internet einzuwählen oder Sie benutzen
ein Einwahl Modem, brauchen Sie folgende Optionen im Kernel:
Befehlsauflistung 3.4: Auswählen von notwendigen Treibern für PPPoE |
Device Drivers --->
Networking support --->
<*> PPP (point-to-point protocol) support
<*> PPP support for async serial ports
<*> PPP support for sync tty ports
|
Die zwei Komprimierungsoptionen werden nicht schaden, aber werden auch nicht
definitiv gebraucht, ebenso die PPP over Ethernet Option, die vielleicht
nur von rp-pppoe verwendet wird, wenn der Kernelmodus PPPoE benutzt wird.
Wenn Sie es benötigen, vergessen Sie nicht Ünterstützung für Ihre Netzwerkkarte
in Ihren Kernel einzubinden.
Wenn Sie eine HIL Maus oder Tastatur haben vergessen Sie nicht Unterstützung für
diese einzukompilieren.
Befehlsauflistung 3.5: Aktivierung von HIL Unterstützung |
Input core support --->
[*] Keyboard support
[*] Mouse support
[*] Event interface support
|
Wenn Sie keine Maus an Ihrem HIL Port haben, sollten Sie nur die Basis
Unterstützung verwenden.
Befehlsauflistung 3.6: Basis HIL Unterstützung |
HIL support --->
[*] HIL Keyboard (basic) support
|
Wenn Sie jedoch komplette HIL Unterstützung wollen, wählen Sie bitte
folgende Optionen:
Befehlsauflistung 3.7: Komplette HIL Unterstützung |
HIL support --->
[*] HP System Device Controller i8042 Support
[*] HIL MLC Support
[*] HIL Keyboard (full) support
[*] HIL Mouse & Pointer support
|
Aktivieren Sie auch den "Display Driver Support":
Befehlsauflistung 3.8: Display Driver support |
Graphics support --->
[*] Support for frame buffer devices
[*] HP STI frame buffer device support
Console display driver support --->
[*] STI text console
|
Wenn Sie die Konfiguration des Kernel beendet haben fahren Sie mit Kompilieren und Installieren fort.
Kompilieren und Installieren
Wichtig:
Wenn Sie einen 64Bit-Kernel kompilieren wollen, werden Sie kgcc64 mit
emerge installieren müssen, nachdem Sie die Installation von Gentoo
abgeschlossen und neu gestartet haben. Jedoch wird davon abgeraten einen
64Bit-Kernel zu verwenden. Sie sollten nur einen 64Bit-Kernel verwenden, wenn
Sie mehr als 4GB Ram haben oder Ihr Server es verlangt, wie z.B. der A500.
|
Nun da Ihr Kernel konfiguriert ist, ist es Zeit ihn zu kompilieren und zu
installieren. Verlassen Sie die Konfiguration und starten Sie den
Kompilierungsvorgang:
Befehlsauflistung 3.9: Kompilieren des Kernels |
# make && make modules_install
|
Wenn der Kernel fertig ist mit der Kompilierung, kopieren Sie das Kernel-Image
nach /boot. Benutzen Sie einen beliebigen Namen der Ihnen passend
erscheint, merken Sie sich diesen jedoch, da Sie ihn später noch zur
Konfiguration des Bootloader benötigen. Denken Sie daran
<Kernelversion> durch den Namen und die Version Ihres
Kernels zu ersetzten.
Befehlsauflistung 3.10: Installieren des Kernels |
# cp vmlinux /boot/<Kernelversion>
|
Fahren Sie nun mit dem Installieren separater
Kernelmodule fort.
7.d. Alternativ: Benutzung von Genkernel
Wenn Sie diesen Abschnitt lesen, haben Sie sich entschieden unser
genkernel Skript zu benutzen, um sich Ihren Kernel konfigurieren zu
lassen.
Nun da Ihr Kernelquellbaum installiert ist, ist es an der Zeit Ihren Kernel
automatisch durch das genkernel Skript erstellen zu lassen.
genkernel arbeitet so, dass es einen Kernel konfiguriert, der fast
identisch ist zu denen auf unser Installations-CD. Dies bedeutet, dass wenn Sie
genkernel benutzen um Ihren Kernel zu erstellen, Ihr System generell
alle Hardware beim Booten erkennt, genau wie es unsere Installations-CD tut.
Weil genkernel keine manuelle Kernelkonfiguration erfordert ist es eine
ideale Lösung für die Benutzer, denen unwohl bei der Kompilierung eines eigenen
Kernel ist.
Nun lassen Sie uns sehen wie man Genkernel benutzt. Zuerst installieren Sie
genkernel:
Befehlsauflistung 4.1: Mit emerge genkernel installieren |
# emerge genkernel
|
Kompilieren Sie nun Ihre Kernelquellen durch genkernel all.
Seien Sie sich aber bewusst, dass genkernel einen Kernel kompiliert,
der fast alle Hardware unterstützt, was bedeutet dass das Kompilieren durchaus
eine ganze Weile dauern kann!
Beachten Sie das, wenn Ihre Boot Partition weder ext2 noch ext3 als Dateisystem
benutzt, Sie Ihren Kernel selber mit genkernel --menuconfig all
konfigurieren müssen und Unterstützung für Ihr Dateisystem im Kernel
aktivieren müssen (nicht als Modul).
Befehlsauflistung 4.2: Ausführen von Genkernel |
* Kernel compiled successfully!
* Required Kernel Params:
* : root=/dev/ram0 init=/linuxrc real_root=/dev/$ROOT
* where $ROOT is the devicenode for your root partition as
* you should have specified in /etc/fstab
*
* You MUST tell your bootloader to use the generated initrd
*
* Recommended Kernel Params:
* : vga=0x317 splash=verbose
*
* Do NOT report kernel bugs (configs included) as genkernel bugs.
* Make sure you have the latest genkernel before reporting bugs
*
* For more info see /usr/share/genkernel/README
|
Sobald genkernel beendet ist werden ein Kernel, ein voller Satz Module
und eine initial root disk (initrd) erstellt sein. Wir werden den Kernel
und die initrd benutzen wenn wir später in diesem Handbuch einen Bootloader
konfigurieren. Schreiben Sie den Namen des Kernels und den Ihrer initrd auf, da
Sie diese brauchen werden, wenn Sie die Konfigurationsdatei des Bootloaders
schreiben. Die initrd wird direkt nach dem Booten gestartet um die Hardware
Autoerkennung zu starten (genau wie auf der Installations-CD) bevor ihr
"wahres" System startet.
Befehlsauflistung 4.3: Überprüfen der Namen von Kernel-Image und initrd |
# ls /boot/kernel* /boot/initramfs*
|
7.e. Installieren separater Kernelmodule
Konfiguration der Module
Sie sollten alle Module, die automatisch geladen werden sollen, in
/etc/modules.autoload.d/kernel-2.6 eintragen. Wenn Sie möchten
können Sie auch zusätzliche Optionen anhängen.
Um alle verfügbaren Module anzuzeigen führen Sie den folgenden find
Befehl aus. Vergessen Sie nicht "<kernel version>" mit der Version
Ihres Kernel zu ersetzen, den Sie gerade kompiliert haben:
Befehlsauflistung 5.1: Listen aller verfügbarer Module |
# find /lib/modules/<kernel version>/ -type f -iname '*.o' -or -iname '*.ko'
|
Um zum Beispiel das 3c59x.o Modul automatisch zu laden, editieren Sie
die kernel-2.6 Datei und tragen das Modul ein.
Befehlsauflistung 5.2: /etc/modules.autoload.d/kernel-2.6 |
# nano -w /etc/modules.autoload.d/kernel-2.6
|
Befehlsauflistung 5.3: /etc/modules.autoload.d/kernel-2.6 |
3c59x
|
Fahren Sie nun mit der Konfiguration des
System fort.
[ << ]
[ < ]
[ Hauptseite ]
[ > ]
[ >> ]
Die Inhalte dieses Dokuments sind, sofern nicht explizit
anders genannt, unter der Creative Commons -
Namensnennung / Weitergabe Lizenz lizenziert. Die Gentoo Name and Logo
Usage Guidelines treffen zu.
|