Ubuntu 12.04 „Precise Pangolin“
Ubuntu 11.10 „Oneiric Ocelot“
Ubuntu 10.04 „Lucid Lynx“
Die Übersetzung (Kompilierung) des von manchen älteren Notebooks zum Ein-/Auschalten des WLAN-Adapters benötigten Kernelmoduls Acer Hotkeys (acerhk
) muss bei jedem Kernelupdate wiederholt werden. Die folgende Anleitung soll dabei helfen, diesen Vorgang mit Hilfe von DKMS zu automatisieren.
Damit sollte auch die Situation, dass nach einem Kernelupdate kein WLAN mehr zur Verfügung steht, der Vergangenheit angehören.
Der Quelltext des Kernelmoduls ist ausschließlich für 32-Bit Systeme gedacht. Benutzer eines 64-Bit Systems müssen andere Wege gehen (siehe Hauptartikel). Hinweise zur Konfiguration und Nutzung des Kernelmoduls sind ebenfalls dem Hauptartikel zu entnehmen.
Neben dem Paket für DKMS [1]
dkms
mit apturl
Paketliste zum Kopieren:
sudo apt-get install dkms
sudo aptitude install dkms
werden weitere Komponenten benötigt. Diese sind evtl. schon installiert, wenn man der im Hauptartikel genannten Anleitung gefolgt ist. Hier nochmal der Vollständigkeit halber die Liste der notwendigen Pakete:
build-essential
module-assistant
debhelper
mit apturl
Paketliste zum Kopieren:
sudo apt-get install build-essential module-assistant debhelper
sudo aptitude install build-essential module-assistant debhelper
Außerdem wird das Paket linux-headers passend zur eigenen Kernel-Version und -Architektur (-generic
, -386
, -generic-pae
usw.) benötigt. Dieses Paket lässt sich über den folgenden Befehl installieren:
sudo apt-get install linux-headers-$(uname -r)
Dann wird noch ein an Ubuntu angepasster Quelltext des Kernelmoduls benötigt. Dieser ist prinzipiell zwar bis einschließlich Ubuntu 11.10 in den offiziellen Paketquellen vorhanden, aber fehlerhaft und damit unbrauchbar. Daher muss man auf ein "Personal Package Archiv" (PPA) ausweichen.
Ein fehlerbereinigtes Quelltextpaket kann man als acerhk-source_0.5.35-XX_all.deb manuell herunterladen und installieren [2] (XX steht für die jeweils aktuelle Version).
Fremdpakete können das System gefährden.
Das Einbinden des PPAs in die eigenen Paketquellen – wie sonst üblich – ist ausnahmsweise nicht erforderlich (würde aber auch nicht schaden).
Das Paket aus dem PPA legt den benötigten Quelltext als /usr/src/acerhk.tar.bz2 ab. Diese Archivdatei muss nun zuerst entpackt werden [3][4]:
cd /usr/src sudo tar -xjf acerhk.tar.bz2
Dann benennt man den entstandenen Ordner /usr/src/modules in /usr/src/acerhk-0.5.35 um:
sudo mv modules acerhk-0.5.35
Nun fehlt noch eine Datei /usr/src/acerhk-0.5.35/dkms.conf. Diese wird mit einem Editor [5] und Root-Rechten erstellt:
PACKAGE_NAME=acerhk PACKAGE_VERSION=0.5.35 DEST_MODULE_LOCATION=/extra BUILT_MODULE_NAME=acerhk BUILT_MODULE_LOCATION=acerhk/ MAKE="'make' -C acerhk/ all" CLEAN="'make' -C acerhk/ clean" AUTOINSTALL="yes"
Das Kompilieren mittels DKMS wird mit folgenden Schritten getestet:
Mit dem Befehl:
sudo dkms add -m acerhk -v 0.5.35
wird das Kompilieren von acerhk
vorbereitet.
Der eigentliche Kompilierungsvorgang wird mit:
sudo dkms build -m acerhk -v 0.5.35
gestartet.
Abschließend erfolgt die Installation des Kernelmoduls:
sudo dkms install -m acerhk -v 0.5.35
Zukünftig wird nun bei jedem Kernel-Update das Kernelmodul acerhk
automatisch neu kompiliert.
Nur erforderlich, falls man die automatische Kompilierung wieder entfernen möchte:
sudo dkms remove -m acerhk -v 0.5.35 --all