Auf dieser Seite werde ich kurz meine Erfahrungen bei der Einrichtung von Linux auf meinem Notebook, dem Fujitsu-Siemens Lifebook S-7020 zusammenfassen. Diese Seite ist übrigens auch über TuxMobil zu erreichen.
Hardwareausstattung
- Pentium M 760 (2,0GHz)
- 1024MB Ram
- 80GB SATA-Festplatte
- Grafik: Intel GMA900
- Display: 1400x1050 Punkte SXGA+
- IEEE1394-Anschluss (Funktion nicht getestet, s.u.)
- USB 2.0
- Netzwerk: Broadcom BCM5751
- WLAN: Intel PRO/Wireless 2200BG
- Bluetooth
- Modem: Agere HDA Modem 56k
- Sound: Intel HD Audio mit Realtek ALC260
- PCMCIA-Slot
- ExpressCard-Slot (noch nicht getestet)
- CD-/DVD-Brenner NEC ND-6500A
Ausgabe von lspci
:
0000:00:00.0 Host bridge: Intel Corp. Mobile Memory Controller Hub (rev 03)
0000:00:02.0 VGA compatible controller: Intel Corp. Mobile Graphics Controller (rev 03)
0000:00:02.1 Display controller: Intel Corp. Mobile Graphics Controller (rev 03)
0000:00:1b.0 0403: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 04)
0000:00:1c.0 PCI bridge: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 04)
0000:00:1c.1 PCI bridge: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 2 (rev 04)
0000:00:1d.0 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 04)
0000:00:1d.1 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 04)
0000:00:1d.2 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 04)
0000:00:1d.3 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 04)
0000:00:1d.7 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 04)
0000:00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev d4)
0000:00:1f.0 ISA bridge: Intel Corp. 82801FBM (ICH6M) LPC Interface Bridge (rev 04)
0000:00:1f.1 IDE interface: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 04)
0000:00:1f.2 0106: Intel Corp. 82801FBM (ICH6M) SATA Controller (rev 04)
0000:00:1f.3 SMBus: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 04)
0000:02:00.0 Ethernet controller: Broadcom Corporation: Unknown device 167d (rev 11)
0000:06:03.0 CardBus bridge: O2 Micro, Inc.: Unknown device 7134 (rev 20)
0000:06:05.0 Network controller: Intel Corp. PRO/Wireless 2200BG (rev 05)
0000:06:06.0 FireWire (IEEE 1394): Texas Instruments TSB43AB21 IEEE-1394a-2000 Controller (PHY/Link)`
Installation von Debian/GNU Linux
Bei der Installation von Debian Linux Unstable konnte ich leider nicht den aktuellen Debian-Installer der stable-Version verwenden, da dessen Kernel (2.4.XX und 2.6.8) entweder die SATA-Festplatte oder den Netzwerk-Chip nicht verwenden konnten. Dass es auch eine testing-Version des Installers gibt, habe ich leider zu spät gemerkt...
Ich habe mir geholfen, indem ich auf meinemeinen passenden Kernel (aktuelle Version 2.6.12.5) für den neuen Rechner übersetzt habe, dann ein Image der Festplatte auf das neue Notebook übertragen habe und dort mit Hilfe von Knoppix den Bootmanager lilo wieder installiert habe und somit recht einfach und schnell wieder ein lauffähiges System hatte.
Übertragung des HD-Images
Um das Image der Festplatte des alten Notebooks auf das Neue zu übertragen, habe
ich die Systempartition auf dem alten Notebook mit dem Befehl dd
ausgelesen
und mittels netcat
zum neuen Notebook geschickt.
dd if=/dev/hda2 | netcat 192.168.0.5 3124
Damit das neue Notebook die Daten entgegennehmen kann, muss dort zuvor ebenfalls
netcat
im Servermodus gestartet werden:
netcat -p 3124 -l | dd of=/dev/sda2
Da ich die Systempartition gleichzeitig vergrößern wollte, habe ich auf dem
neuen Notebook zuvor eine entsprechend große Partition erstellt und nach dem
übertragen des Images dieses mit resize2fs
(unterstützt auch das ext3
Dateisyystem) vergrößert, was problemlos und ohne Datenverlust funktioniert hat.
SATA-Controller und -Festplatte
Serial-ATA-Festplatten werden unter Linux wie SCSI-Geräte behandelt. Daher muss
man in der Kernel-Konfiguration auch unter Device Drivers → SCSI Device
Support → SCSI low-level drivers → Serial ATA Support und für den
verwendeten Intel 915 Chipsatz die AHCI-Unterstützung aktivieren. Die Festplatte
sollte sich dann als/dev/sdX
und nicht wie die normalen ATA-Platten als
/dev/hdX
ansprechen lassen.
Netzwerk-Chip
Aus Lizenzgründen wurde in den aktuellen Debian-Kernel-Sourcen der Treiber für
den Broadcom-Chip entfernt. Im offiziellen Kernel ist er aber noch enthalten. Er
befindet sich bei den 1000MBit-Netzwerkchips und heisst tg3
. Nach dem Laden
des tg3-Moduls lässt sich die Karte dann problemlos mit ifconfig
etc. ansprechen.
Wireless LAN
Für den WLAN-Chip Intel Pro/Wireless 2200 LAN von Intel gibt es unter http://ipw2200.sourceforge.net die entsprechenden Kernel-Module. Man benötigt neben dem Treiber für den WLAN-Chip auch noch die passende Firmware, die es ebenfalls dort gibt.
Die Verschlüsselungsvariante WPA läuft bei mir problemlos mit Kernel 2.6.12 und
der Software wpa_supplicant
. Mogu (Vielen Dank für den Hinweis!) schrieb mir
jedoch:
"WPA läuft nicht mit Kernel 2.6.13 und ipw2200-1.0.6 zusammen, bei mir
funktioniert wpa mit wpasupplicant
nur mit dem wext
Treiber von
wpasupplicant
."
Update - 13.08.2006
Im aktuellen Kernel (2.6.17) ist bereits ein Treiber für die Centrino-WLAN-Chips enthalten. Man benötigt also nicht mehr unbedingt den Code von sourceforge.net. Möchte man jedoch den Monitormode verwenden, so gibt es auf der Seite genauere Informationen dazu.
Bluetooth
Das Bloototh-Modul hängt intern am USB-Bus. Damit man es ansprechen kann, muss
im Kernel der Bluetooth-Support unter "Device Drivers → Networking →
Bluetooth Subsystem" und darin unter "Bluetooth device drivers" das Modul HCI
USB Driver
ausgewählt werden. Zusätzlich habe ich die bluez-utils
installiert. Mit dem darin enthaltenen Programm hciconfig
kann man dann sehen,
ob Bluetooth verfügbar ist. Mangels eines Bluetooth-Gerätes habe ich aber bisher
keine Kommunikation ausprobiert.
PCMCIA- bzw PC-Card-Slot
Der PCMCIA-Chip wird vom Yenta-Treiber erkannt. Ob eine entsprechende Karte damit funktioniert, habe ich noch nicht getestet.
IEEE1394-Anschluss
Der Chipsatz wird von dem Kernel-Module nohci1394
und ieee1394
erkannt. Mangels einem passenden Gerät habe ich den Anschluss aber noch nicht
testen können.
USB-Anschlüsse
Die Anschlüsse werden von den Kernel-Modulen uhci-hcd
und ehci-hcd
erkannt
und funktionieren einwandfrei. Mangels eines USB 2.0-Gerätes habe ich diese
Funktion noch nicht getestet.
Stromsparfunktion / Speedstep
Nach dem Laden des Modules centrino-speedstep
kann der Dämon cpufreqd
die
Prozessorfrequenz in einigen Schritten zwischen 800 MHz und 2 GHz variieren, um
Strom zu sparen.
Die Standard-Konfiguration von cpufreqd
habe ich angepasst, so dass das
Notebook, wenn es am Stromnetz hängt und die CPU-Last kleiner als 10% ist, mit
nur 800 MHz läuft. So springt der Lüfter fast nie an, solange man nicht daran
arbeitet.
Man kann die Frequenz, mit der die CPU läuft, mit dem Kommando
cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
überprüfen. Die weiteren Dateien in diesem Verzeichnis geben unter anderem die minimale und maximale Frequenz an, mit der die CPU laufen kann.
Update 13.11.2006: Hibernate-Modus
Bisher gab es ein Problem mit dem Hibernate-Modus (unter Windows "Ruhezustand"), bei dem der Inhalt des Arbeitsspeichers auf der Festplatte gesichert und beim nächsten Booten wieder geladen wird, was die Zeit zum Booten erheblich verkürzt. Nach dem Booten konnte die Festplatte nicht mehr angesprochen werden, was mit dem Stillstand von Linux endete. Seit der Kernel-Version 2.6.18.1 (vielleicht auch schon frühere) gibt es aber einen alternativen Treiber für den SATA-Controller.
Der AHCI Treiber
funktioniert nicht, der für Intel ICH
aber schon. Nach dessen Aktivierung (nicht als Modul, denn er wird beim Booten
benötigt) funktioniert der Hibernate-Modus dann einwandfrei. Zur Aktivierung
benötigt man noch das Paket hibernate
, in dem einige Skripte enthalten sind,
die unter anderem dafür sorgen, dass nach dem Booten die Grafik wieder so
eingestellt wird, dass die volle Auflösung dargestellt werden kann (Einstellung
"Runi915resolution yes"
in der Datei /etc/hibernate/common.conf
).
Einrichtung des X-Servers
Der GMA900 wird vom X-Server von X.org (Debian-Package xserver-xorg)
unterstützt. Als Treiber muss in der Konfiguration i810
eingetragen werden. Da
es aber ein Problem bei der Abfrage der möglichen Auflösungen durch den X-Server
gibt und so zunächst nur 1280x1024 Punkte möglich sind, gibt es ein kleines
Utility 855resolution
, welches die Tabelle der unterstützten Auflösungen des
Graphikchips so ändert, dass der X-Server auch 1400x1050 Punkte verwenden
kann. Das Tool muss vor dem Start des X-Server zum Beispiel mit folgenden
Parametern aufgerufen werden: 855resolution 3c 1400 1050
Das wird bei mir in
einem init-Skript direkt nach dem booten gemacht. Bei der Installation des
Debian-Paketes 855resolution
reicht es, in der Datei
/etc/default/855resolution
die entsprechenden Daten einzutragen.
Die Datei xorg.conf
sollte dann etwa so wie bei mir aussehen:
Update - 13.09.2005
Es gibt inzwischen unter http://www.fairlite.demon.co.uk/intel.html einen
X-Server, der den GMA900 ohne das Programm 855resolution
unterstützt. Dazu
wird die Datei i810_drv.o
im Verzeichnis /usr/X11R6/lib/modules/drivers/
ersetzt durch die heruntergeladene.
Dann muss nur noch die Konfigurationsdatei xorg.conf angepasst werden, so dass der Device-Abschnitt in etwa so aussieht (die ForceBios Option ist wichtig):
Section "Device"
Identifier "Intel MGA900"
Driver "i810"
Option "ForceBIOS" "1024x768=1400x1050"
EndSection
Update - 12.11.2005: Xinerama
Andreas Bichler berichtet, dass auch Xinerama, eine Erweiterung für den X-Server, um den Desktop auf mehrere Monitore auszudehen, läuft. Beim Lifebook umfasst der Desktop dann das LCD-Display und einen extern angeschlossenen Monitor. Ein Beispiel für eine passende Konfigurationsdatei für den x.org X-Server gibt es hier:
Update - 13.08.2006: 855resolution
Jens Frederik Dalsgaard Nielsen berichtet,
dass das 855resolution
Tool ersetzt wurde durch 915resolution
. Versucht man
in Debian, das Paket 855resolution
zu installieren, so wird automatisch das
Paket 915resolution
installiert.
Sound
Um die Soundkarte zu nutzen, benötigt man das Kernel-Modul snd-hda-intel
und
eine funktionierende ALSA -Installation. Die
Soundausgabe funktioniert dann mit Einschränkungen problemlos. Die internen
Lautsprecher des Notebooks hängen am Kopfhörer-Ausgang des Soundchips und lassen
sich daher auch nur mit dem entsprechenden Lautstärkeregler
beeinflussen. Außerdem funktioniert die Soundausgabe über die
Line-Out-/Kopfhörer-Buchse bisher nicht. Ich vermute, dass das mit der "Plug
re-tasking"-Fähigkeit des Soundchips zusammenhängt
(siehe
Realtek-Webseite -
Die dort angebotenen Linux-Treiber enthalten anscheinend nur den aktuellen
Sourcecode des ALSA-Projects und können den Kopfhörerausgang auch nicht
aktivieren).
Update - 13.02.2006
Im aktuellen Kernel (2.6.15) ist der Patch für HD-Audio integriert, so dass der
Sound mit diesem Kernel funktioniert. Das entsprechende Kernel-Modul
(snd-hda-audio
) kennt den Parameter fix_position
, der auf 1 gesetzt werden muss,
damit keine Knackser bei der Soundausgabe auftreten:
option snd-hda-audio fix_position=1
Modem
Inzwischen habe ich auch das interne Modem in Betrieb nehmen können. In den
Treibern für den HD-Audio-Chipsatz ist auch ein Treiber für das Modem
enthalten. Der alleine genügt aber nicht. Zusätzlich muss das
Paket sl-modem-daemon
installiert werden. Dieser Dämon wird beim Booten gestartet
und erzeugt für das Modem ein device-File /dev/ttySL0
, so dass man das Modem wie
ein normales externes Modem ansprechen kann.
Damit der Dämon weiss, welche Hardware er ansprechen soll, muss sie in der
Konfigurationsdatei /etc/defaults/sl-modem-daemon
angegeben werden:
SLMODEMD_DEVICE="hw:Intel,6"
Problematische Hardware
Die folgende Hardware hat sich bisher meinen Versuchen zur Inbetriebnahme widersetzt:
- Die Tasten oberhalb der Tastatur können bisher nicht verwendet werden. Sie erzeugen leider keine ACPI-Events (ausgenommen der Power-Knopf, der funktioniert im Zusammenspiel mit demacpidproblemlos).