| Vorwort: |
Die hier beschriebene Anleitung zur Installation des Laptops "Fujitsu/Siemens Celsius Mobile H" beschreibt die Schritte für eine Installation unter SuSE Linux 8.2. Sie sollte aber prinzipiell auch unter anderen Linux-Distributionen möglich sein. Hier werden jedoch auf die Besonderheiten der Installation vom Kernels 2.4.20-SuSE und dem Einsatz von ACPI zum Powermanagement näher erläutert Deshalb sei an dieser Stelle auf die Beschreibung zur Installtion von SuSE Linux 8.1 verwiesen, da alle hier nicht explizit erläuterten Schritte bereits dort beschrieben wurden. Speziell auf diese SuSE-Distribution ausgerichtete Einstellungen werden durch das Symbol |
||
| Basisinstallation: |
Die Grundinstallation sollte wie unter SuSE 8.1 problemlos möglich sein, wenn man folgendes
beachtet: Der mitgelieferten Kernel ( Nach dem Booten von der DVD oder der CD kann man den ersten Punkt zur grafischen Installation auswählen. Eine Auflösung von 1024x768 oder höher bei der Installation ist möglich! Hinweis: Sollte bei der Hardwareerkennung oder Abfrage der USB-Geräte bei der Installation diese hängen bleiben, so lag das sicherlich daran, daß man das Touchpad auf der Funktastatur berührt hat. Dieser Fehler tritt unter bestimmten Bedingungen bei bei der Installation auf. Deswegen sollte man nach dem Booten Funk-Tastatur und -Touchpad erst wieder nach dem Starten des USB-Managers benutzen. Bei der Paketauswahl sollte man darauf achten, daß für die spätere Installation des Kernels der Compiler benötigt wird, also Pakete der Serie dev und die Kernelquellen des Linux-Kernels. Unter Die Konfiguration des X-Servers kann man bei der Installation durchführen, es wird dann das nv genutzt, welches auch bis zu der möglichen Auflösung von 1600x1200 Punkten funktioniert, jedoch keine 3D-Beschleunigung bietet. Hierfür sind die Treiber den X-Server von nVidia zu besorgen. Dazu später mehr! insserv -r hwscan Somit ist der erste Teil der Installation durchlaufen, das System kann erst mal gestartet werden und als nächstes wäre ein neuer Kernel zu übersetzen. |
||
|
|||
| Kernel übersetzen: |
Getestet wude die Installation mit dem Kernel 2.4.20-SuSE, sollte aber auch mit dem
im Netz verfügbaren unmodifizierten Kernelquellen 2.4.21 oder neuer möglich sein,
wobei jedoch in diesem Fall die ACPI-Patches
für das Powermanagement eingespielt werden sollten! Soll ein Kernel aus dem Netz verwendet werden, so erfolgt dies und die Grundeinstellung wie unter der Kernelinstallation von SuSE 8.1 beschrieben. Anschließend in das Verzeichnis /usr/src/linux wechseln. Hier muß eine Datei modifiziert werden, um die Arbeit mit der Funktastatur zu ermöglichen. Dazu ist mittels eines Editors die Datei "drivers/usb/usb-uhci.c" zu modifizieren, indem die Zeile #define CONFIG_USB_UHCI_HIGH_BANDWIDTH durch Voranstellen von zwei "//" auskommentiert wird, also // #define CONFIG_USB_UHCI_HIGH_BANDWIDTH Für schnellere Geräte (P4-2GHz) ist außerdem noch folgende Änderung notwendig: #define USE_CTRL_DEPTH_FIRST 1 Unter cp /boot/vmlinuz.autoconf.h \ /usr/src/linux/include/linux/autoconf.h cp /boot/vmlinuz.version.h \ /usr/src/linux/include/linux/version.h Anschließend ist durch Aufruf von: make menuconfig der Kernel zur Übersetzung zu konfigurieren. Wer der hier angegebenen Konfigurationsdatei vertraut, kann diese einfach laden und anschließend: make dep; make clean; make bzImage; make modules; make modules_install aufrufen. Zur Info: Hier wurde eine FreeS/WAN-Konfiguration für VPN-Connections durchgeführt. Um dies bei dem Übersetzen ebenfalls durchzuführen müssen auch die FreeS/WAN Kernel-Modul-Quellen aus dem Paket "km_freeswan" installiert sein. Doch dazu wäre ein extra Anleitung notwendig, die diesen Rahmen sprengt. Wen das interessiert, der sollte Kontakt zu mir aufnehmen. Wer sich das Übersetzen sparen möchte, kann auch die von SuSE mitgelieferten Module nutzen, da an diesen Modulen keine Änderung durchgeführt wurden. Hierzu ist vor dem Aufruf von make modules_install das Verzeichnis /lib/modules/2.4.20-4GB/kernel/net/ipsec/ zu sichern und anschließend zurück zu kopieren. Natürlich kann man auch die einzelnen Punkte der Konfiguaration selber vornehmen, wichtig ist aber folgende Auswahl:
Für die Verwendung eines Brenners ist auch die SCSI-Emulation einzubinden, entweder direkt oder als Modul (siehe initrd in diesem Abschnitt)
Nach dem Übersetzen findet man im Unterverzeichnis "arch/i386/boot" den neuen Kernel bzImage, der wie die Datei System.map aus dem Linux-Quellverzeichnis nach /boot/bzImage und /boot/System.map-2.4.20-4GB gehört. Sollte man als Filesystem reiserfs o.a. verwendet haben und die Unterstützung dafür nicht direkt in den Kernel compiliert haben, sondern bei der Konfiguration zum Übersetzen als Modul ausgewählt haben, benötigt man noch ein "initrd" - Container, der die benötigten Module zum Bootzeitpunkt bereit stellt. Hierfür bieten die verschiedenen Distributionen unterschiedliche Lösungen an, wer das nicht machen will, muß halt die Unterstützung für das Filesystem direkt in den Kernel compilieren
/sbin/mk_initrd -k bzImage -i initrd.bzImage aufzurufen. Dies erzeugt im Verzeichnis /boot eine entsprechende initrd.bzImage-Datei, die alle in /etc/sysconfig/kernel angegebenen Module zum Bootzeitpunkt bereit stellt. Diese Datei muß natürlich auch vom Kernel gefunden werden. Dies wird durch die Bootmanagerkonfiguration sicher gestellt, die als nächstes durchzuführen ist. Nun ist also der Bootmanagers zu konfigurieren. Unter Der Kernelparameter acpi=off für das Powermanagement kann hinzugenommen werden, wenn man z.B. vmware nutzt und auf ACPI verzichten möchte. Mehr dazu unter APM und ACPI. Der Rest ist den eigenen Bedürfnissen anzupassen. Wer einen Brenner eingebaut hat, benötigt auch den Parameter hdc=ide-scsi oder hdb=ide-scsi oder beides, je nachdem ob der Brenner im rechten (hdc) oder im linken (hdb) Schacht eingebaut ist. Nicht zu vergessen ist auch die Angabe der verwendeten initrd-Datei über den Paramter initrd (hd0,5)/boot/initrd.bzImage Hierbei ist (hd0,5) die zweite logische Partition in der erweiterten Partition der ersten IDE-Festplatte, also /dev/hda6. Hier muß dann entsprechend der eigenen Partitionierung die Partition angegeben werden, die die initrd-Datei enthält. Folgende Änderungen sind noch für die Unterstützung der Funktastatur notwendig: Außerdem sind folgende Einträge vorzunehmen: HOTPLUG_USB_USE_USBMODULES="no" und aus HOTPLUG_USB_STATIC_MODULES ist der Eintrag mousedev zu entfernen. Nach dem Booten sollte nun sollte auch die Funktastatur benutzt werden können. Falls nicht, so ist zu überprüfen, ob der "UHCI"-Treiber und nicht "UHCI Alternate Driver" verwendet wird, also das Modul "usb-uhci" und nicht "uhci" geladen wurde: modprobe | grep uhci Hardware, wie PC-CARD(PCMCIA)-Controller,serielle und parallele Schnittstellen, sollten jetzt problemlos funktionieren. Bei den PCMCIA-Karten gibt es ggf. noch das Problem, dass diese beim Einstecken nicht automatisch erkannt werden und man erst mauell via "cardctl insert" die Karten aktivieren muss. Dann sollte unter /etc/sysconfig/pcmcia von "Internal" auf PCMCIA_SYSTEM="external" umgestellt werden. Als nächstes folgt nun die Grafik mit 3D-Beschleunigung: |
||
| XFree86 4.3.0: |
Die Installation von XFree86 wurde mit den Treibern von nVidia durchgeführt.
Da diese Treiber nicht auf Distribtionen enthalten sind, sind sie
von www.nvidia.com zu laden.
Die Installation wurde mit den Paket
NVIDIA-Linux-x86-1.0.4363.run durchgeführt.
Man kann auch mittels der NV-Treiber, die mitgeliefert werden, den Bildschirm mit einer Auflösung bis zu 1600x1200 Punkten bei 16 Bit Farbtiefe betreiben, aber in diesem Fall ist nur eine softwaremäßige OpenGL-Beschleunigung verfügbar, welches ist nicht empfehle. Deswegen sollte man die Hardware-Beschleunigung mit den GLX-Treibern von nVidia aktivieren. Grundsätzlich sind erst mal die XF86-Pakete der Distribution zu installieren. Hierzu gehören
Für die Installation eines beschleunigten X-Servers wird nun die Datei NVIDIA-Linux-x86-1.0.4496-pkg2.run benötigt. Anschließend ist nun zu installieren. Hierzu ist als root in der Console das System in den Runlevel 3 (ohne Grafik) zu bringen und das Paket zu installieren: (für bash-Syntax) init 3 export IGNORE_CC_MISMATCH=1 sh NVIDIA-Linux-x86-1.0.4496-pkg2.run Die Fragen sind entsprechend zu bestätigen. Zur Konfiguration muß das File /etc/X11/XF86Config angepaßt werden. Unter Deswegen findet man hier eine angepaßte Konfigurationsdatei (sollte auch mit anderen Distributionen funktionieren). Diese also nach /etc/X11/XF86Config kopieren und ggf. die Einstellungen für außen angeschlossenen Monitor, zusätzliche Maus, Grafiktabletts, einfügen oder ändern. Die angebegeben Konfigurationsdatei läuft ohne externen Monitor mit einer Auflösung 1600x1200 und mit angesteckten externen Gerät mit 1024x768 (wegen XGA-Beamer) oder 800x600. Dies kann in der Zeile Option "MetaModes" "1600x1200, NULL; 1024x768, 1024x768; 800x600, 800x600" angepaßt werden. Für die Benutzung des Touchpads, für den Fall, dass die Tastatur mit dem Kabel zum Rechner verbunden wird, ist noch folgender Änderung durchzuführen: rm /dev/mouse ln -s /dev/psaux /dev/mouse Weitere Informationen zur Konfigurationen für den nVidia-Treiber (TwinView etc.) findet man in der mitgelieferten Dokumentation (README im Unterverzeichnis /usr/share/doc/NVIDIA_GLX-1.0/) oder im Netz als PDF-File bei nVidia. Anschließend kann der erste Servertest durch Aufruf von startx erfolgen. Über mögliche Probleme unterrichtet das Logfile /var/log/XFree86.0.log. Zum ersten Test der OpenGL-Beschleunigung durch nVidia_GLX nehme man das Programm "gears". Vergleichswert: bei voller Bildschirmauflösung 1600x1200x24 bei meinem Laptop der ersten Generation eine Rate von über 40fps. Automatisch beim Booten wird der X-Server gestartet, wenn das System im Runlevel 5 läuft. (Datei /etc/inittab). Nach der Installation der NVidia-Treiber kann dies auch durch Aufruf von init 5 erreicht werden. Noch zu beachten ist, dass nach jeder Installation der Kernelmodule via make modules_install der Treiber von NVidia erneut installiert werden muß. Touchpad: Wer das soweit probiert hat, wird sicherlich merken, daß das Touchpad nicht wie gewünscht funktioniert! Dies liegt nicht etwa daran, daß ein falscher Treiber gewählt wurde, sondern daran, daß es ein Synchronisationsproblem zwischen dem Touchpad und dem HID-Treiber gibt. hier ein Startscript, welches in /etc/rc.d/rc[2,3,5].d/ möglichst als letztes eingebunden werden sollte. Unter chmod 744 /etc/rc.d/celsiusHFix ändern und anschließend insserv -d /etc/rc.d/celsiusHFix aufrufen. |
||
| Sound einrichten: |
Hierzu benötigt man nur ALSA-Treiber. Getestet wurde es mit
alsa-0.9.5-0.pm.0.i586.rpm von www.links2linux.org
und den unter
Sollte das Konfigurationsprogramm der Distribution ( |
||
| Infrarot und IrDA: |
# IrDA alias char-major-161 ircomm-tty alias tty-ldisc-11 irtty Unter IRDA_PORT="/dev/ttyS1" und anschließend aufruft: rcirda start. Soll es bei jedem Start aktiviert werden, so genügt ein Aufruf von insserv irda . Hier wurde der IrDA-Port auf ttyS1 eingestellt, es sind natürlich andere Einstellungen möglich. Unter anderen Systemen ist der IrDA-Port mittels des Befehls /usr/sbin/irattach /dev/ttyS1 -s zu starten. |
||
| Modem: | Mit dem eingebauten Winmodem gab es bisher wenig Erfolg zu verzeichnen. Zwar lies sich nach vielen Test eine Verbindung aufbauen, diese war jedoch weder stabil noch schnell. Wer ein Modem unter Linux auf diesem Laptop benutzen möchte, der wird leider nicht auf die Anschaffung eines zusätzlichen PCMCIA-Modems verzichten können. Das eingebaute Winmodem macht seinem Namen Ehre und läuft nur unter Windows und auch dort nur langsam... | ||
|
APM und ACPI, Bioseinstellungen:: |
Zur Aktivierung der ACPI-Unterstützung reicht unter insserv acpid und wer es noch genau konfigurieren möchte, die Anpassung in der Datei /etc/sysconfig/powermanagement. Hat man irgendwann das Gefühl, der Rechner läuft viel zu langsam, so ist die Datei /var/lib/acpi/lid_state zu überprüfen. Steht hier CLOSE obwohl das Display geöffnet ist, so reicht es die Datei zu löschen, das Display zu schließen und wieder zu öffnen und schon sollte man die gewohnte Performance haben. Die ACPI-Information findet man unter /proc/acpi, eine genauere Beschreibung unter acpi.sourceforge.net Leider gibt es momentan noch ein Problem bei der Verwendung von ACPI und VMware. Eine Lösung ist ohne Änderung in den ACPI-Quellen nicht möglich und auf Seiten von VMware gibt es auch nichts positives dahingehend zu berichten. Also Quellen ändern. Ich hab's noch nicht getan, aber wen's interessiert: [ACPI] RE: Processor driver bug? (was ACPI patches and Vmware) APM dagegen funktioniert bereits mit dem Kernel 2.4.19 problemlos. Hier geht auch VMware und Suspend-To-RAM, allerdings ist der Stromverbrauch im Ruhemodus immer noch höher als unter Verwendung von ACPI. In der ursprünglich ausgelieferten BIOS-Version gab es noch Probleme, diese sind jedoch durch ein neues BIOS behoben. Aktuell nutze ich BIOS Ver 1.13 vom 26.04.2002. Unter APM kann der Akkuladestand angezeigt werden, sowie Suspend-To-RAM durch einmaliges Drücken des Einschalttasters aktiviert werden. Abermaliges Betätigen des Einschalters weckt den Rechner wieder auf. Das funktioniert auch unter X11 mit den nVidia-Treibern. Wer also APM anstelle ACPI nutzen möchte und im Kernel sowohl ACPI als auch APM aktiviert, der muß mittels Bootparameter acpi=off ACPI wieder deaktiviren, andernfalls wird APM nicht aktiviert! (siehe Kernelinstallation) |
||
|
©2003, SA.W zum Seitenanfang |
$Id: fs_c_h_8_2.php,v 1.4 2004/09/06 09:55:36 wefel Exp $ |