Erstellt am 10.12.2006
Einleitung
Auf dieser Seite möchte ich beschreiben, wie man auf sein HP Compaq nx6325 ein SuSE 10.1 installiert und die entsprechenden Konfigurationsschritte durchführt, damit z.B. Sound, ACPI oder WLAN funktioniert.
Bei diesem HowTo wird SuSE 10.1 verwendet, ältere Versionen sollten aber eigentlich ähnlich einzurichten gehen. Ich habe mich lediglich für SuSE 10.1 entschieden, da ich mir hier bessere Kompatibilität für ACPI erwarte (ich habe allerdings SuSE 10.0 noch nicht getestet).
Es handelt sich außerdem um die 64Bit-Version, da ich das gerne mal ausprobieren wollte. Für den Endanwender bringt das eigentlich sogar eher Nach- als Vorteile, aber mit WindowsVista wird es sicher bald auch z.B. Flash für Linux als 64Bit-Version geben.
Für SuSE10.2 habe ich hier auch schon eine kleine Seite geschrieben, die auch noch eine weitere interessante Möglichkeit anbietet, ohne DSDT die ACPI-Funktionen zum Leben zu erwecken (danke an MaikB): zum HowTo (2)
Die Seite ist in folgende Bereiche untergliedert:
- Installation
- Einrichten der Hardware
- Multimediatasten
- Funktionsliste
- Kommentare und Ergänzungen zum Howto
Bevor man mit der Installation loslegt würde ich umbedingt anraten zum einen dieses HowTo erst komplett zu lesen. Manchmal drück ich mich etwas seltsam aus und man versteht es erst, wenn man die nächsten Zeilen auch schon gelesen hat. Außerdem befindet sich am Ende auch noch ein Bericht, der mir zugeschickt wurde und z.B. eine Lösung für die Multimediatasten anbietet. Zum anderen solltet ihr die Recovery-CDs/DVDs umbedingt erstellen. Denn bei HP wollte man wohl Geld sparen, denn eine Recovery-CD/DVD liegt nicht bei. Wenn ihr euer Windows zerlegt und keine CDs/DVDs erstellt habt, dann kommt ihr wahrscheinlich nicht umhin entweder HP zu belemmern oder sogar ein neues WinXP zu kaufen. Der Satz der Recovery-CDs besteht bei mir aus 13 ISOs (also gesamt 7GB). Bzw. aus 2 DVDs. Bisher hab ich die ISOs noch nicht gebrannt, werde ich aber bald tun.
Der nächste Schritt nach dem Erstellen der Recovery-CDs war bei mir die Recovery-Partition mit dem HP-Recover-Tool zu löschen! Bitte nicht per Hand über z.B. fdisk löschen, da die Partition ordnungsgemäß aus dem Recover-System von HP ausgetragen werden muss.
Und dann kann man auch schon die SuSE-DVD reinstecken und mit der Installation beginnen...
Weiterführende Links:
http://www.wolframschenck.de/nx6325.htm#sect3
http://www.andreas-kleisun.homepage.t-online.de/FC5_on_nx6325.html
Achtung: Aus aktuellem Anlass (12.12.2007)möchte ich hier auf eine Heise online - Newsticker-Meldung verweisen, die ein Sicherheitsproblem mit dem "HP Info Center" beschreibt. Dieses Sicherheitsproblem besteht zwar nur utner Windows, aber vielleicht interessiert es ja dennoch den ein oder anderen.
Installation
Nach dem Laden des DVD-Bootloaders schonmal vorsorglich die Sprache auswählen und die Auflösung auf 1024x768 einstellen. Diese Auflösung wird dann auch später für die Konsole verwendet.
Als nächstes kommt das Partitionieren: SuSE schlägt gleich die richtige größe für die SuSE-Partition vor - bzw. verkleinert die Windows-Partition richtig: bei mir auf etwa 25GB.
Ich hab daraufhin allerdings auf eigene Faust eine 1GB große Swap-, eine 25GB große Root- (/) und noch eine 6GB große Austauschpartition erstellt.
Danach alles andere einstellen, wie gewünscht und SuSE installieren lassen: Achtung ich möchte an dieser Stelle betonen, dass ich nicht für Schäden an der Windowspartition verantwortlicht gemacht werden möchte, die durch das Verkleinern der Windowspartition entstehen können. Jeder tut dies auf eigene Gefahr! Eigentlich passiert dabei nix, aber man muss sich ja absichern
Einrichten der Hardware
Jetzt wird es spannend: Es folgt die Einrichtung der Hardware. Als erstes kommt die
Soundkarte:
Die Soundkarte läuft nicht auf Anhieb, allerdings ist sie schnell eingerichtet. Zunächst müsst ihr ins Yast gehen und unter Hardware auf Sound klicken.
Im Folgenden Fenster die Soundkarte auswählen und auf Bearbeiten klicken:
Danach gelangt man in das Menü in dem man dem Soundmodul einige Parameter übergeben kann. model muss auf hp gestellt werden und position_fix auf 1.
Yast über den Weiter-Button beenden und nun die Soundkarte über z.B. kmix einrichten (das kann evtl. nicht funktionieren, dann muss das Soundsystem einmal über alsamixer in der Konsole "initialisiert" werden).
WLAN:
WLAN hab ich über ndiswrapper zum laufen bekommen und bin dabei dieser Anleitung gefolgt: http://nextgen.no-ip.org/~andrew/linux/ndiswrapper/ndiswrapperinfo.php
In kurzen Schritten erklärt:
ndiswrapper-Tarball besorgen und den Treiber (wenn man ein 64Bit-Linux installiert hat, dann den 64Bit Treiber downloaden!!!) besorgen. Den Treiber mit WinRAR entpacken (kA, ob es da auch noch andere Programme gibt, die eine .exe entpacken können).
Alle Dateien aus der Treiber.exe in einen Ordner in z.B. WinWLAN stecken...
# tar xzvf ndiswrapper-1.25.tar.gz # cd ndiswrapper-1.25.tar.gz # make install # ndiswrapper -i ../WinWLAN/bcmwl5.inf
Dann noch schnell im Yast unter den Netzwerkgeräten ein neues Gerät hinzufügen, als Treiber 'ndiswrapper' einfügen und die restliche Konfigutation abschließen.
Jetzt sollte die Karte einsatzbereit sein.
Genau beschrieben ist es wie gesagt bei oberem Link! Die W-LAN-Karte funktioniert dann aber einwandfrei, konnte nach Netzen scannen und mich auch verbinden.
ACHTUNG! bei heise ist soeben (13.11.06) bekannt geworden, dass die Windows-Treiber für Broadcom Karten potentiell gefährdet sind. Mit einem einfachen Pufferüberlauf lässt sich beliebiger Code einspeisen und ausführen. Dies kann durch Ndiswrapper auf für Linux gefährlich sein. Näheres dazu auf heise news
ACPI und Fan:
Das größte Kopfzerbrechen bereitete die Lüftersteuerung, die nicht richtig funktionieren wollte. Der Lüfter sprang eigentlich nur an, wenn es schon im roten Bereich war und das BIOS die Steuerung übernahm. Dass das auf die Dauer nicht gut ist, ist wohl klar.
Viel suchen im Internet und vorallem probieren haben dann diese beiden Einstellungen ergeben:
>
Im Yast unter System -> Konfiguration des Bootloaders den Standardabschnitt für SuSE editieren:
Hier bei andere Kernel Parameter den Parameter acpi_os_name="Microsoft Windows NT" hinzufügen. Damit wird dem BIOS vorgegaukelt, dass das laufende Betriebssystem ein Windows sei und siehe da, beim nächsten reboot sind die Lüfter regelbar:
# echo 0 > /proc/acpi/fan/C352/state # echo 3 > /proc/acpi/fan/C352/state
Mit dem ersten Kommando kann man den Lüfter einschalten, mit dem zweiten ausschalten.
Das ganze funktioniert aber noch nicht von alleine, da anscheinend der acpid nicht richtig arbeitet. Deswegen werden die Daten immer nur upgedatet, wenn man acpi -t aufruft.
Und damit ihr das nicht die ganze Zeit in die Konsole hacken müsst legt man am besten einen Cron-Job an, der jede Minute den Befehl ausführt:
# crontab /etc/crontab (initialisierung für die Crontab von Root) # export EDITOR=mcedit # crontab -e
Unter SuSE 10.1 war Joe bei mir als Standardeditor eingestellt, ich denke aber, dass ihr mit dem mcedit besser zurecht kommt. Sobald ihr crontab -e ausgeführt habt könnt ihr die Cronjobs, die unter dem User root ausgeführt werden sollen editieren - die Datei sollte jetzt folgenden Inhalt bekommen:
SHELL=/bin/sh PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin MAILTO=root # #Temperaturueberwachung (menuetlich) * * * * * test -e /proc/acpi && acpi -t &> /dev/null
Wenn ein Cronjob schon in dieser Datei steht diesen einfach mit einem # am Anfang der Zeile kommentieren, da dieser Cronjob nicht über die Crontab laufen sollte.
test -e /proc/acpi bewirkt, dass acpi -t nicht ausgeführt wird, wenn ihr das Linux z.B. mit acpi=off gebootet habt. Das gäbe sonst Probleme.
Im Internet kursieren außerdem noch Scripte alla
watch test -e /proc/acpi && acpi -t &> /dev/null &
die man in die /etc/init.d/boot.local stecken soll. Das hatte ich zuerst gemacht, aber da dann acpi -t jede Sekunde ausgeführt wird funktioniert nach fünf Minuten die Lüftersteuerung garnicht mehr. Deswegen hab ich das ganze als Cronjob angelegt, da ein minütlicher Temperaturcheck völlig ausreicht.
Der letzte Clou, damit die Lüftersteuerung läuft ist dem System seine eigene DSDT zu erstellen und dem Kernel beim Booten zu übergeben. Die DSDTable ist sozusagen eine Beschreibung der Funktionen des BIOS und mittelt damit zwischen Kernel und BIOS. Wenn diese Tabelle sich nicht an die Standards hält, dann kann es zu Problemen kommen.
Inzwischen gibt es auf der Seite von HP ein BIOS-Update, nachdem die DSDT so aussieht, wie wenn man sie nach dem HowTo angepasst hat. Ich hatte deswegen meine initrd wieder ohne diese Tabelle erstellt. Das ging auch solange gut, wie der Rechner schon warm war. Heute geht der Lüfter wieder nicht, weshalb ich die DSDT nochmal erstellt habe. Mit der neuen DSDT funktionierte der Lüfter aber auch nicht mehr! Nur mit der von der alten BIOS-Version. Man kann das Update also durchführen, sollte sich aber die alte DSDT aufheben!
Produkseite von HP mit dem BIOS-Update
Ich habe nun nach diesem HowTo meine eigene DSDT erstellt und seither funktioniert alles reibungslos (der Cronjob muss allerdings nach wie vor ausgeführt werden; wenn man das BIOS--Update eingespielt hat braucht man an der Tabelle nix mehr zu ändern sondern kann sie gleich wieder kompilieren).
DSDT für Werksseitig installiertes BIOS und die DSDT für BIOS-Update hab ich jeweils hier gespeichert - funktionieren tut nur die vom Werkseitigen und per Hand angepassten BIOS, aber vielleicht interessiert euch die andere ja auch (z.B. um sie mal durch 'diff' zu jagen
Auf http://acpi.sourceforge.net gibt es eine weitere DSDT ( DSDT die angeblich auch die Heller/Dunkler-Funktion unterstützt). Hat aber bei mir nicht geklappt - hab also wieder meine eigene DSDT eingestellt.
Die Helligkeitseinstellung hängt offensichtlich mit dem Treiber zusammen: Wenn ich den ATI-Treiber nicht lade, dann kann ich auch unter X über die Funktionstasten die Helligkeit regulieren. Wenn der Treiber geladen ist, dann muss ich in die Konsole wechseln und kann dort dann die Helligkeit anpassen (die zum Glück dann auch für X übernommen wird).
Kartenleser:
Da ich das nicht unter SuSE 10.1 probieren kann (weil ja jetzt schon 10.2 drauf ist) verweise ich hier nur auf den 2. Teil des HowTos für SuSE10.2 wo genaueres zum Kartenleser steht. Aber ich bin mir eigentlich recht sicher, dass es auch unter 10.1 funktioniert.
Multimediatasten
Schließlich kommen wir noch zu den Multimediatasten. Hier konnte ich bisher nur die Tasten für Lauter, Leiser und Mute auslesen. Dies hab ich mit xbindkeys gemacht, da ich die Konfiguration im kcontrol nicht wirklich verstanden hatte.
Zunächst also mit dem Paketsystem eurer Wahlt (also smart, apt, yast-Paketquelle) das Paket xbindkeys installieren.
Dann muss das Programm einmal initalisiert werden:
$ xbindkeys --defaults > $HOME/.xbindkeysrc
Danach kann man mit xbindkeys -mk die Tasten einlesen - hier mal meine Config:
# Mute Taste "dcop kmix Mixer0 toggleMute 0" m:0x0 + c:160 NoSymbol # Leiser Taste "dcop kmix Mixer0 decreaseVolume 0" m:0x0 + c:174 NoSymbol # Lauter Taste "dcop kmix Mixer0 increaseVolume 0" m:0x0 + c:176 NoSymbol
Jetzt einfach noch eine Programm-Verknüpfung in ~/.kde/autostart und der Daemon wird bei jedem Start geladen. Damit das ganze funktioniert muss kmix laufen (ansonsten gibt es keinen Eintrag im DCOP-Server zum regeln der Lautstärke).
Funktionsliste
Und zu guter Letzt eine Übersicht, was nun funktioniert, was ich noch testen muss und was noch nicht geht:
Komponente | Funktion | Status |
Sempron 3400+ | Powernow | funktioniert |
512MB RAM | --- | funktioniert |
Grafikkarte | 3D / Composite | funktioniert / Bildfehler |
Soundkarte | Aufnehmen, ausgeben | funktioniert |
LAN / WLAN | --- | funktioniert |
DVD-Laufwerk | brennen, lesen | funktioniert |
Touchpad | Mauszeiger und Scrollfeld | funktioniert |
USB | 3 Anschlüsse | funktioniert |
Multimedia Tasten | Lauter, Leiser, Mute / WLAN, Präsentation, Info | funktioniert / können nicht ausgelesen werden |
Bildschirm | heller dunkler | funktioniert in der Konsole und unter X ohne den ATI-Treiber (fglrx) - mit fglrx kann man nichts verstellen. |
Firewire | 1 Anschluss | nicht getestet |
56k Modem | Interneteinwahl | nicht getestet (soll angeblich funktionieren) |
Cardreader | SD Karten lesen | funktioniert - siehe HowTo Teil 2 |
ACPI | Ladezustand / Lüfterregelung | funktioniert / funktioniert nicht 100%ig |
Fingerprintsensor | Authentifikation | funktioniert mit diesem HowTo |
Abschließend lässt sich festhalten, dass ich dieses Notebook durchaus empfehlen kann. Das BIOS-Update bringt eigentlich nichts erkennbar neues, aber man kann es, durchaus einspielen (am System muss man danach jedenfalls nichts ändern). Ein weiteres Manko ist, dass man die Helligkeit des Displays nicht einstellen kann; vielleicht finde ich dafür noch eine Lösung.
Ansonsten ist die Verarbeitung ordentlich und der Akku hält mit gut 2,5 Stunden ziemlich lange (natürlich stark abhängig von der Belastung).
Mit diesen Worten hoffe ich, dass ich dem einen oder anderen weiterhelfen konnte und würde mich auch über einen Kommentar im Gästebuch freuen!
Kommentare
Da ich bereits einen sehr ausführlichen Bericht zu diesem Notebook in mein Guestbook bekommen hatte möchte ich hier gerne eventuelle Berichtigungen oder ergänzungen sammeln.
Auf dem zweiten HowTo für SuSE10.2 steht ebenfalls noch eine Mail, die mir von MaikB zugesandt wurde, die beschreibt, wie man die ACPI-Funktionen ohne DSDT zum Leben erwecken kann.
Bericht von "Thomas" Ursprünglich aus meinem Guestbook, ich habe es mal hier rein kopiert:
An dieser Stelle vielen Dank an Thomas für seinen Bericht! Hat mich sehr gefreut und ich hoffe auch weitere "Entdeckungen" zu hören .