Installation von Debian GNU/Linux Sarge auf das Hewlett Packard nx6110
Diese Anleitung beschreibt, wie man Debian GNU/Linux (Sarge aka Stable) auf das Notebook-Modell nx6110 der Firma Hewlett Packard installiert.
Wichtig: Inzwischen habe ich das Notebook mit Kubuntu Edgy Eft installiert – diese Installationsanleitung wird also nicht mehr großartig weitergeführt, sondern nur noch marginal gepflegt.
Hardware
Das nx6110 ist in verschiedenen Ausführungen verfügbar. Ich besitze das nx6110 PY500, welches folgende Hardwarekomponenten umfasst:
- Pentium-M 740 1.73GHz
- 512MB RAM (DDR SO-DIMM, 333MHz, CL 2.5)
- 60GB Harddisk
- DVD+/-RW Laufwerk (fest eingebaut)
- Chipsatz Intel Centrino 915GM
- Intel AC97 Onboard Soundkarte
- Intel GMA900 Onboard Grafik mit max.128MB shared memory
- USB 2.0
- LAN Broadcom 440 10/100BaseT
- WLAN 802.11bg Intel Ipw2200
- Bluetooth
- Firewire
- Modem
- Synaptics Touchpad
- 15″ XGA TFT (1024×768)
- Li-Ionen-Akku
# 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:1d.0 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03) 0000:00:1d.1 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03) 0000:00:1d.2 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03) 0000:00:1d.3 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03) 0000:00:1d.7 USB Controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03) 0000:00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev d3) 0000:00:1e.2 Multimedia audio controller: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Audio Controller (rev 03) 0000:00:1e.3 Modem: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem Controller (rev 03) 0000:00:1f.0 ISA bridge: Intel Corp. 82801FBM (ICH6M) LPC Interface Bridge (rev 03) 0000:00:1f.1 IDE interface: Intel Corp. 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 03) 0000:02:04.0 Network controller: Intel Corp. PRO/Wireless 2200BG (rev 05) 0000:02:06.0 CardBus bridge: Texas Instruments: Unknown device 8031 0000:02:06.2 FireWire (IEEE 1394): Texas Instruments: Unknown device 8032 0000:02:0e.0 Ethernet controller: Broadcom Corporation BCM4401-B0 100Base-TX (rev 02) |
Vorbereitungen
Das nx6110 wird mit einem vorinstallierten Microsoft Windows Home ausgeliefert, welches eine Partition über die gesamte Festplatte belegt. Wenn man das Windows nicht löschen möchte, kann die Partition mit ntfsresize des Linux-NTFS Projekts verkleinert werden. Das Programm befindet sich unter anderem auch auf Knoppix.
Basis Installation
Sofern man über einen Internetzugang mittels Router verfügt, über den auch größere Datenmengen übertragen werden können (oder man aber entsprechend Geduld hat), kann eine Netzwerk-Installation durchgeführt werden. Das eingebaute Broadcom 4400 LAN Modul wird
automatisch von der Hardware-Erkennung während der Installation erkannt und mittels DHCP konfiguriert.
Da die Software in Debian Stable immer ein wenig älter ist, und damit für die eine oder andere Hardware zu alt, wird auf Backports zurückgegriffen. Dazu müssen folgende Einträge in /etc/apt/sources.list hinzugefügt werden:
deb http://www.backports.org/debian sarge-backports main deb-src http://www.backports.org/debian sarge-backports main |
Damit nicht automatisch alle Backports installiert werden, sondern nur die gewünschten, wird noch in /etc/apt/preferences die Pin-Priorität für Backports auf 200 gesetzt:
Package: * Pin: release a=sarge-backports Pin-Priority: 200 |
Nun können Backports nur gezielt mit
root@notebook# apt-get install -t sarge-backports paketname |
installiert werden.
Kernel
Zum Zeitpunkt der Installation ist Version 2.6.15 der aktuellste Linux-Kernel. Dieser kann als Backport installiert werden:
root@notebook# apt-get install -t linux-image-2.6.15-1-686 |
Lilo
Als Bootloader verwende ich lilo. Die Konfiguration erfolgt in /etc/lilo.conf:
restricted
boot=/dev/hda
root=/dev/hda5
password=""
compact
install=/boot/boot-menu.b
map=/boot/map
menu-title="Lilo Bootmenu"
prompt
vga=0x317
timeout=50
default=Linux
append="reboot=b"
image=/vmlinuz
label=Linux
read-only
initrd=/initrd.img
image=/vmlinuz.old
label=LinuxOLD
read-only
optional
initrd=/initrd.img.old
other=/dev/hda1
label=Windows |
Die hier gezeigte Konfiguration kann sowohl Linux mit aktuellem als auch vorletzten Kernel sowie das parallel installierte Microsoft Windows booten. Die Zeile vga=0x317 initialisiert den Vesa-Framebuffer in einer Auflösung von 1024×768. Das Kommando restricted erlaubt die zusätzliche manuelle Eingabe von Kernelparametern im Auswahlmenü nur nach Passwort-Eingabe. Das Passwort wird beim schreiben
von Lilo auf die Festplatte mit dem Kommando lilo abgefragt und verschlüsselt in der Datei /etc/lilo.conf.shs gespeichert.
Damit reboot im Linux-System auf dem nx6110 funktioniert, muss der Parameter reboot=b dem Kernel beim Systemstart übergeben werden. Dies wird durch den Eintrag append="reboot=b" vorgenommen.
CPU Frequency Scaling
Der Pentium-M unterstützt das dynamische takten der CPU um Strom zu sparen. Für Linux gibt es mehrere Dienste, die dieses vornehmen können. Eine einfache Variante ist powernowd, welches auch Intel CPUs unterstützt – anders als der Name vermuten lässt, hat es nämlich nichts mit der gleichnamigen AMD Technologie zu tun.
Der Dienst kann als Paket powernowd installiert werden:
root@notebook# apt-get install powernowd |
Für den Betrieb ist sysfs erforderlich, daher ist dies in /etc/fstab zusätzlich einzutragen:
#file system mount point type options dump pass sysfs /sys sysfs defaults 0 0 |
Des Weiteren werden mehrere Kernelmodule benötigt. Damit diese beim Systemstart geladen werden, müssen sie in /etc/modules eingetragen werden:
cpufreq_userspace speedstep_centrino |
powernowd wird nur über die Kommandozeile konfiguriert. Es kennt verschiedene Varianten, um die CPU Frequenz abhängig von der Last einzustellen. Ich habe mich für die Variante PASSIVE entschieden. Um diese beim Systemstart zu aktivieren, kann eine Konfigurationsdatei /etc/default/powernowd angelegt werden, welche dann beim Daemonstart ausgewertet wird:
OPTIONS="-q -m2" |
Grafikkarte
Die eingebaute Grafikkarte von Intel wird vom Treiber i810 des X.Org X11-Servers unterstützt. Da X.Org kein Bestandteil von Debian Sarge ist (dort ist nur XFree86 verfügbar), muss auf einen Backport von Backports.org zurückgegriffen werden:
root@notebook# apt-get install -t sarge-backports x-window-system |
Danach kann der X11-Server mit folgender Konfiguration in /etc/X11/xorg.conf betrieben werden:
Section "Files"
FontPath "unix/:7100" # local font server
# if the local font server has problems, we can fall back on these
FontPath "/usr/lib/X11/fonts/misc"
FontPath "/usr/lib/X11/fonts/cyrillic"
FontPath "/usr/lib/X11/fonts/100dpi/:unscaled"
FontPath "/usr/lib/X11/fonts/75dpi/:unscaled"
FontPath "/usr/lib/X11/fonts/Type1"
FontPath "/usr/lib/X11/fonts/CID"
FontPath "/usr/lib/X11/fonts/100dpi"
FontPath "/usr/lib/X11/fonts/75dpi"
EndSection
Section "Module"
Load "bitmap"
Load "dbe"
Load "ddc"
Load "dri"
Load "evdev"
Load "extmod"
Load "freetype"
Load "glx"
Load "int10"
Load "record"
Load "type1"
Load "vbe"
Load "synaptics"
EndSection
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "de"
Option "XkbVariant" "nodeadkeys"
EndSection
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "Auto"
Option "Emulate3Buttons" "true"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
Driver "synaptics"
Identifier "touchpad"
Option "Device" "/dev/psaux"
Option "Protocol" "auto-dev"
Option "LeftEdge" "1700"
Option "RightEdge" "5300"
Option "TopEdge" "1700"
Option "BottomEdge" "4200"
#Option "FingerLow" "25"
Option "FingerLow" "20"
#Option "FingerHigh" "30"
Option "FingerHigh" "35"
Option "MaxTapTime" "180"
Option "MaxTapMove" "220"
Option "VertScrollDelta" "100"
Option "MinSpeed" "0.08"
Option "MaxSpeed" "0.18"
Option "AccelFactor" "0.0010"
Option "SHMConfig" "on"
Option "TapButton2" "1"
Option "TapButton1" "2"
Option "UpDownScrolling" "on"
Option "TouchpadOff" "0"
#Option "Repeater" "/dev/ps2mouse"
EndSection
Section "Device"
Identifier "Intel onboard"
Driver "i810"
BusID "PCI:0:2:0"
EndSection
Section "Monitor"
Identifier "nx6110 TFT"
Option "DPMS"
HorizSync 28-49
VertRefresh 43-72
EndSection
Section "Screen"
Identifier "Default Screen"
Device "Intel onboard"
Monitor "nx6110 TFT"
DefaultDepth 16
SubSection "Display"
Depth 1
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 4
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 15
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1024x768" "800x600" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
EndSection
Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen"
InputDevice "Generic Keyboard" "CoreKeyboard"
InputDevice "Configured Mouse" "CorePointer"
# InputDevice "touchpad" "AlwaysCore"
EndSection
Section "DRI"
Mode 0666
EndSection |
Der Intel Grafikchip verfügt über 3D-Hardwarebeschleunigung, welche auch vom i810-Treiber mittels DRI unterstützt wird. Allerdings funktioniert Unterstützung der Hardwarebeschleunigung nur, wenn die Karte mit einer Farbtiefe von 16 Bit betrieben wird. Eingestellt wird das mit der Option DefaultDepth in der Section Screen.
Soundkarte
Die AC97 Onboard Soundkarte wird von http://www.alsa-project.org mit dem Kernelmodul snd_intel8x0 unterstützt. Sofern der Distributions-Kernel verwendet wird, wird das Modul automatisch beim Systemstart geladen. Um es schließlich nutzen zu
können, sind noch die ALSA-Pakete zu installieren:
root@notebook# apt-get install -t sarge-backports alsa-base alsa-utils |
Jetzt können mit alsamixer die Mixer-Einstellungen gesetzt werden. Die Pakete müssen von backports.org bezogen werden, da es ansonsten Probleme mit neueren Versionen von udev geben kann.
Netzwerk
LAN
Der Broadcom 4400 Netzwerk-Chip wird vom Kernel-Modul b44 unterstützt. Bei Verwendung des Distribution-Kernels wird das Modul automatisch geladen.
WLAN
Für das arbeiten mit Wireless-Geräten wird das Paket wireless-tools benötigt. Da der installierte Kernel neuer ist, als der Default-Kernel aus Debian Sarge, wird auch eine neuere Version der wireless-tools benötigt. Diese kann ebenfalls von backports.org bezogen werden:
root@notebook# apt-get install -t sarge-backports wireless-tools |
Die im Notebook eingebaute WLAN-Karte IPW2200 von Intel kann mit dem Kernel-Modul ipw2200 betrieben werden. Ab Kernel Version 2.6.15 ist das Modul Bestandteil des Linux-Kernels. Für ältere Versionen muss man den Quellcode separat von der Projekt-Homepage herunterladen. In jedem Fall muss jedoch noch die Firmware von der Homepage heruntergeladen und in /usr/hotplug/firmware abgelegt werden.
Bei meinem Notebook ist nach dem booten von Linux das WLAN-Modul immer ausgeschaltet – obwohl im BIOS eingetragen ist, dass das WLAN-Modul immer aktiv sein soll. Daher muss dem Kernel-Modul beim laden als Parameter mitgegeben werden, die Hardware zu aktivieren:
notebook# modprobe ipw2200 led=1 |
Damit man den Parameter nicht immer extra angegeben muss, kann das auch in einer Konfigurationsdatei für modprobe abgelegt werden. Dazu ist eine neue Datei im Verzeichnis /etc/modprobe.d/ zu erstellen, welche folgende Zeile beinhaltet:
options ipw2200 led=1 |
Damit das Netzwerkinterface für die WLAN-Karte immer als wlan0 eingerichtet wird, kann das Programm ifrename verwendet werden. Das Programm ist als Paket ifrename im Debian Sarge Repository verfügbar:
root@notebook# apt-get install ifrename |
Die Zuordnung von MAC-Adresse zu Interfacebezeichnung erfolgt in der Datei /etc/iftab:
eth0 mac 00:11:22:33:44:55 wlan0 mac 66:77:88:99:AA:BB |
Damit das Kernel-Modul des Centrino WLAN-Moduls auch mit WEP arbeiten kann, müssen mehrere Kernelmodule gestartet werden. Damit das immer beim Systemstart passiert, werden diese zusätzlich in /etc/modules eingetragen:
ieee80211 ieee80211_crypt ieee80211_crypt_wep |
Automatische Konfiguration der Netzwerkinterfaces
Für ein Notebook bietet sich Network Manager für die Konfiguration der Netzwerkinterfaces an. Für KDE und Gnome existieren Applets, welche die Kontrolle über den Network Manager ermöglichen.
Leider ist Network Manager nicht Bestandteil von Debian Sarge. Auch auf backports.org sind keine Pakete verfügbar. Also bin ich selbst aktiv geworden. Die notwendigen Pakete können aus meinem APT Repository bezogen werden.
Für die Installation muss folgendes gemacht werden:
root_at_notebook# apt-get install -t sarge-backports network-manager |
Jetzt werden weitere Pakete installiert, unter anderem aktuellere Versionen von dbus, hal und dhcdbd. Für das Gnome-Applet muss zusätzlich das Paket network-manager-gnome installiert werden:
root_at_notebook# apt-get install -t sarge-backports network-manager-gnome |
Für KDE existiert das Applet network-manager-kde:
root_at_notebook# apt-get install -t sarge-backports network-manager-kde |
Network Manager verwaltet nur Netzwerkinterfaces, welche nicht in /etc/network/interfaces deklariert sind. Daher müssen alle Einträge, mit Ausnahme von lo entfernt werden, so dass die Datei ungefähr so aussieht:
auto lo iface lo inet loopback |
Wenn Network Manager gestartet über das jeweilige Applet gestartet wird, erkennt es automatisch vorhandene Kabel- oder Funknetzwerke. Diese können dann ausgewählt werden, um sich damit zu verbinden.

PCMCIA
PCMCIA hat nach der Installation funktioniert, die Dienste wurden erfolgreich gestartet. Mangels PCMCIA-Karten kann ich keine weiteren Aussagen machen.
Hibernate und Suspend
Hibernate und Suspend funktionieren nicht mit Debian Sarge. So verweigert nach der Wiederherstellung zum Beispiel eine USB-Maus ihren Dienst. Bei aktiviertem X-Server kann dieser nicht die Grafikkarte korrekt initialisieren, so dass es zu einem schwarzen Bildschirm kommt, in dem der X-Server in einer Endlosscheife hängt. Das System ist aber weiterhin aktiv und zum Beispiel über das Netzwerk erreichbar.
Mit Kubuntu Edgy funktioniert es nun – geholfen hat ein aktuellerer Grafiktreiber für X.Org und die Erkenntnis, das vbetool nicht verwendet werden darf (Blogeintrag). Eventuell kann mit diesen Informationen Hibernate und Suspend auch mit Debian Sarge genutzt werden.


