[ << ]
[ < ]
[ 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 mehrere mögliche Kernelquellen. Eine komplette
Liste mit Beschreibungen finden Sie im Gentoo Kernel
Leitfaden.
Für sparc-basierende Systeme gibt es die sparc-sources (Kernelquellen,
die optimiert sind für sparc Benutzer) und die vanilla-sources (die
Standard-Kernelquellen, wie sie von den Linux Kernelentwicklern erstellt
wurden).
Im nächsten Beispiel installieren wir die sparc-sources. Verwenden Sie
logischerweise die Kernelquellen Ihrer Wahl, dies ist nur ein mögliches
Beispiel. Das USE="-doc" ist notwendig um zu verhindern, dass xorg-x11
oder andere Abhängigkeiten zu diesem Zeitpunkt installiert werden.
USE="symlink" ist nicht zwingend bei einer Neuinstallation, stellt aber
sicher, dass der /usr/src/linux Symlink korrekt erstellt wird.
Befehlsauflistung 2.1: Installieren der Kernelquellen |
# USE="-doc symlink" emerge sparc-sources
|
Wenn Sie einen Blick in /usr/src werfen, sollten Sie einen Symlink
sehen, genannt linux, der auf Ihre Kernelquellen verweist. In
diesem Fall verweisen die installierten Kernelquellen auf
sparc-sources-2.4.31. 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.4.31-sparc
|
Nun ist es Zeit Ihre Kernelquellen zu konfigurieren und zu kompilieren
7.c. 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 mit emerge installieren
(emerge pciutils), denn dies enthält lspci. Sie werden nun in
der Lage sein lspci in der chroot-Umgebung zu verwenden. Sie können
ohne Probleme alle pcilib Warnungen (wie pcilib: cannot open
/sys/bus/pci/devices), die lspci ausgibt, ignorieren. Alternativ können
Sie lspci von einer nicht-chroot Umgebung ausführen. Die
Ergebnisse sind identisch. 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 in der Lage sein Ihre Partitionen zu
mounten. Selektieren Sie auch Virtual memory und /proc
file system. Wenn Sie einen 2.4 Kernel verwenden, sollten Sie auch
/dev file system + Automatically mount at boot selektieren:
Befehlsauflistung 3.3: Selektieren notwendiger Dateisysteme |
File systems --->
[*] Virtual memory file system support (former shm fs)
[*] /proc file system support
[ ] /dev/pts file system for Unix98 PTYs
<*> Ext3 journalling file system support
<*> Second extended fs support
|
Wenn Sie PPPoE benutzen um sich ins Internet einzuwählen oder Sie ein
Dialup-Modem einsetzen, brauchen Sie folgende Optionen im Kernel:
Befehlsauflistung 3.4: Auswählen PPPoE notwendiger Treiber |
Network device 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.
Aktivieren Sie zuerst die korrekte Bus-Unterstützung:
Befehlsauflistung 3.5: Aktivieren von SBUS/UPA |
Console drivers --->
Frame-buffer support --->
[*] SBUS and UPA framebuffers
[*] Creator/Creator3D support
[*] CGsix (GX,TurboGX) support
|
Natürlich wollen Sie Unterstützung für die OBP:
Befehlsauflistung 3.6: Aktivieren von OBP Unterstützung |
Misc Linux/SPARC drivers --->
[*] /dev/openprom device support
|
Sie werden auch SCSI-spezifische Unterstützung benötigen:
Befehlsauflistung 3.7: Aktivieren von SCSI-spezifischer Unterstützung |
SCSI support --->
SCSI low-level drivers --->
<*> Sparc ESP Scsi Driver
<*> PTI Qlogic, ISP Driver
<*> SYM53C8XX Version 2 SCSI support
|
Um Ihre Netzwerkkarte zu unterstützen, wählen Sie eines der folgenden:
Befehlsauflistung 3.8: Aktivieren von Neztwerkunterstützung |
Network device support --->
Ethernet (10 or 100Mbit) --->
<*> Sun LANCE support
<*> Sun Happy Meal 10/100baseT support
<*> DECchip Tulip (dc21x4x) PCI support
Ethernet (1000Mbit) --->
<*> Broadcom Tigon3 support
|
Wenn Sie einen 4-Port Ethernet Rechner haben (10/100 oder 10/100/1000), ist die
Adressierung der Ports anders als unter Solaris. Sie können sys-apps/ethtool
oder mii-tool verwenden um den Linkstatus einen Ports festzustellen.
Wenn Sie die Konfiguration des Kernel beendet haben fahren Sie mit Kompilieren und Installieren fort.
Überprüfen Sie aber nach der Kompilierung des Kernels desen Größe:
Befehlsauflistung 3.9: Überprüfen der Kernelgröße |
# ls -lh vmlinux
-rw-r--r-- 1 root root 2.4M Oct 25 14:38 vmlinux
|
Wenn die (unkomprimierte) Größe größer ist als 2.5MB (für Sparc32) oder 3.5MB
(für Sparc64), dann konfigurieren Sie den Kernel solange erneut, bis der Kernel
diese Grenzen nicht mehr überschreitet. Eine Art dies zu erreichen ist die
Kompilierung der meisten Kerneltreiber als Module. Ignoriert man dies, kann es
dazu führen, dass der Kernel nicht bootet.
Wenn ihr Kernel nur ein bisschen zu groß ist, können Sie im mit dem strip
Kommando strippen:
Befehlsauflistung 3.10: Strippen des Kernel |
# strip -R .comment -R .note vmlinux
|
Wenn Sie die Konfiguration des Kernel beendet haben fahren Sie mit Kompilieren und Installieren fort.
Kompilieren und Installieren
Nun da Ihr Kernel konfiguriert ist, ist es Zeit ihn zu kompilieren und zu
installieren. Verlassen Sie die Konfiguration und starten Sie den
Kompiliervorgang:
Befehlsauflistung 3.11: Kompilieren des Kernels |
# make dep && make clean vmlinux modules modules_install
# make dep && make clean vmlinux image modules modules_install
|
Wenn der Kernel fertig ist mit der Kompilierung, kopieren Sie das Kernel-Image
nach /boot. Denken Sie daran Denken Sie daran
<Kernelversion> durch den Namen und die Version Ihres
Kernels zu ersetzten.
Befehlsauflistung 3.12: Installieren des Kernels |
# cp vmlinux /boot/<Kernelversion>
# cp arch/sparc64/boot/image /boot/<Kernelversion>
|
Fahren sie nun mit dem Installieren separater
Kernelmodule fort.
7.d. Installieren separater Kernelmodule
Konfiguration der Module
Sie sollten alle Module, die automatisch geladen werden sollen, in
/etc/modules.autoload.d/kernel-2.4 eintragen. Wenn Sie möchten,
können Sie auch zusätzliche Optionen an die Module anhängen.
Um alle verfügbaren Module anzuzeigen führen Sie den folgende find
Befehl aus. Vergessen Sie nicht "<kernel version>" mit der Version
Ihres Kernel, den Sie gerade kompiliert haben, zu ersetzen:
Befehlsauflistung 4.1: Alle verfügbaren Module auflisten |
# 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.4 Datei und tragen das Modul dort ein.
Befehlsauflistung 4.2: Editieren von /etc/modules.autoload.d/kernel-2.4 |
# nano -w /etc/modules.autoload.d/kernel-2.4
|
Befehlsauflistung 4.3: /etc/modules.autoload.d/kernel-2.4 |
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.
|