Linux Kernel 3.4.6 unter Debian Squeeze kompilieren
Ein bisschen Tradition haben diese Anleitungen ja hier auf dem Blog schon, und da ich heute einen Kernel der aktuellen stable-Version kompiliert habe, habe ich die genutzten Befehle auch direkt mal hier in einem Beitrag verarbeitet. Als Grundsystem wird ein Debian 6.0.5 genutzt, der finale Kernel trägt die Versionsnummer 3.4.6. Für alle, für die dieser Beitrag die erste Berührung mit diesem Thema bzw. dieser kleinen Reihe hier im Blog ist, hier ein paar benötigte Links zu der Software sowie die älteren Beträge mit den älteren Kernel-Versionen. In jedem Beitrag und (noch viel wichtiger) in den Kommentaren unter den jeweiligen Beiträgen stehen einige interessante und vor allem nützliche Informationen, die von Lesern als Kommentar hier gelassen wurden (hierfür von mir ein großes Dankeschön :)). Wer Probleme oder Fragen hat bzw. sich näher mit dem Thema beschäftigen will stößt hier wie ich auf einige interessante Informationen und Tipps.
Linux Kernel 3.3 final unter Debian Squeeze kompilieren
Linux Kernel 3.4 RC1 unter Debian Squeeze kompilieren
Nachdem wir das Grundsystem installiert haben, erwartet uns wie gewohnt der Kernel 2.6.32. Mit den folgenden Befehlen kompilieren und installieren den Kernel 3.4.6:
apt-get update
aptitude update
apt-get install -y build-essential
apt-get install -y ncurses-dev kernel-package fakeroot
apt-get install -y linux-headers-`uname -r`
apt-get install -y linux-source-`uname -r | awk -F"-" '{print $1}'`
cd /usr/src
wget -c https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.4.6.tar.bz2
bzip2 -d linux-3.4.6.tar.bz2
tar xf linux-3.4.6.tar
cd linux-3.4.6
cp /boot/config* ./.config
make menuconfig
vi .config
make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-hyperv kernel_image kernel_headers
cd ..
dpkg -i linux-image-3.4.6-hyperv_3.4.6-hyperv-10.00.Custom_amd64.deb linux-headers-3.4.6-hyperv_3.4.6-hyperv-10.00.Custom_amd64.deb
echo -e "hv_vmbus\nhv_storvsc\nhv_blkvsc\nhv_netvsc" >> /etc/initramfs-tools/modules
update-initramfs -u -k 3.4.6-hyperv
Die ersten Einstellungen muss man wählen, nachdem der Befehl make menuconfig abgesetzt wurde. Die Hyper-V-Treiber befinden sich unter
Device Drivers => Microsoft Hyper-V guest support => Microsoft Hyper-V client drivers
Nachdem wir die Konfiguration verlassen und gespeichert haben…
… editieren wir die Datei .config und setzen manuell zwei Werte:
- CONFIG_HID_HYPERV_MOUSE=m
- CONFIG_HYPERV_NET=m
Dies bewirkt, dass es weniger Probleme mit der Netzwerkkarte gibt (die in einigen Fällen aufgetreten sind) und dass die Maus nicht mehr in der VM gefangen wird. Danach läuft die Kompilierung und die Installation wie gewohnt weiter, die Pakete werden installiert, die modules-Datei wird erweitert und wir führen update-initramfs aus, damit die eingetragenen Module aktiv genutzt werden. Nach einem Neustart und einem erfolgreichen Boot steht einer Nutzung nichts mehr im Wege…