Kernel Module entfernen und RAM sparen

Mit einer kleinen Änderung kann man „etwas“ Speicher einsparen. Wer einen Raspberry Pi mit dem Ubuntu Image betreibt, kann ein paar Megabyte RAM sparen. Im normalen Betrieb von Ubuntu spiel diese Änderung keine Rolle.

In der Datei initramfs.conf wird einen Wert geändert.

sudo vim /etc/initramfs-tools/initramfs.conf

Den Defaultwert wird von MODULES=most in MODULES=dep geändert.

Anschließend wird ein Update des initramfs-Image erstellt.

Wir können es für den aktuellen Kernel erstellen.

sudo update-initramfs -u

Oder für alle vorhandenen Kernel ein neues Image erstellen.

sudo update-initramfs -uk 'all'

Nach einem Neustart werden nur alle notwendigen Kernel Module geladen.

Ubuntu Mainline Kernel 5.0.4 installation

Für Ubuntu gibt es die aktuellen Kernel als Package. Wir wollen den aktuellen Kernel 5.0.4 auf einem Xenial Xerus (Ubuntu 16.04) mit 64 Bit CPU installieren. Im Verzeichnis von Ubuntu finden wir weitere Plattformen (AMD64, i386, armhf, arm64, usw).

Für die Installion brauchen wir die Pakete für den Kernel (linux-image-unsigned) und die Modulle (linux-modules).

Mit diesem Script installieren wir Kernel 5.0.4 auf einem Ubuntu mit 64Bit CPU.

#!/bin/sh
URL=https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0.4/
KERNEL=linux-image-unsigned-5.0.4-050004-generic_5.0.4-050004.201903231634_amd64.deb
MODULES=linux-modules-5.0.4-050004-generic_5.0.4-050004.201903231634_amd64.deb
 
wget -P /tmp $URL/$MODULES
wget -P /tmp $URL/$KERNEL
 
sudo dpkg -i /tmp/$MODULES
sudo dpkg -i /tmp/$KERNEL

Nach dem Neustart wird der Kernel 5.0.4 verwendet, obwohl Ubuntu 16.04 (LTS) nur den Kernel 4.15 (linux-generic) enthält. Achtung, der Mainline Kernel 5.0.4 erhält keine Sicherheitspatches. Die Portierung von Sicherheitspatches in Xenial erfolgt nur im offiziellen Kernel mit Long Term Support (LTS).

Quelle: Kernel Wiki, Mainline Kernel, Changelog Kernel 5.0