Der Gedanke, eigene Kernel zu kompilieren, macht den neuen Linux-Nutzern Angst. Es klingt erschreckend und baut den wichtigsten Teil Ihres Systems von Grund auf neu. Die Wahrheit ist jedoch, dass der Aufbau des Linux-Kernels wirklich einfach ist.

Der Aufbau von Linux-Kernel erfordert keine Programmierung. Einige der besten Programmierer der Welt haben bereits den gesamten Code geschrieben. Sie müssen nur die Funktionen auswählen, die Sie wollen und alles zusammenfügen.

Die Abhängigkeiten erhalten

Bevor Sie einen Kernel überhaupt anfassen, benötigen Sie die richtigen Werkzeuge, um ihn zu bauen. Benutze Apt, um sie von Ubuntu's Repositories herunterzuladen.

 sudo apt install installieren git build-essential kernel-paket fakeroot libncurses5-dev libssl-dev ccache 

Kernel-Quelle abrufen

Jetzt können Sie die Quelle auswählen, die Sie erstellen möchten. Alle Kernel sind in den offiziellen Linux-Repositories verfügbar. Sie können sich die neuesten stabilen Versionen in ihrem Git-Repository ansehen. Zur Zeit dieses Artikels ist die neueste Version 4.11. Dieser Zweig wird als linux-4.11.y aufgelistet, und das ist derjenige, der mit dem folgenden Befehl geklont wird.

 cd ~ mkdir kernelbuild cd kernelbuild git klon -b linux-4.11.y git: //git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git 

Es wird eine Weile dauern, den Kernel zu klonen, also sei geduldig.

Einrichten für Ihren Build

Beginnen Sie Ihre Einrichtung, indem Sie Verzeichnisse in das neu geklonte Verzeichnis ändern. Kopieren Sie dann die Konfiguration Ihres bestehenden Kernels hinein.

 cd linux-stable cp / boot / konfig-`uname -r` .config 

Jetzt müssen Sie die alte Konfiguration an den neuen Kernel anpassen.

 ja '' | Machen Sie oldconfig 

Normalerweise wird das Skript Sie fragen, was mit jeder neuen Funktion zu tun ist. Auf diese Weise werden die Standardwerte akzeptiert. Wenn Sie gefragt werden möchten, verwenden Sie einfach make oldconfig .

Konfigurieren des Kernels

Sie können Ihre Konfiguration so lassen, wie sie ist, und Sie würden wahrscheinlich in Ordnung sein. Es macht keinen Sinn, einen benutzerdefinierten Kernel zu erstellen, wenn Sie ihn nicht anpassen.

Um Ihre Konfiguration anzupassen, öffnen Sie make menuconfig .

Ein blaues Menü öffnet sich mit einer Liste von Kategorien. Diese Kategorien enthalten Funktionen, die Sie zum Erstellen in Ihrem Kernel auswählen können.

Wenn Sie beispielsweise die Unterstützung für das BTRFS-Dateisystem direkt in den Kernel einbauen und andere Funktionen aktivieren möchten, gehen Sie zu "Dateisysteme ->". Scrollen Sie dann nach unten, wo Sie "Btrfs-Dateisystemunterstützung" sehen. Wählen Sie die gewünschte Option und drücken Sie die Leertaste. Die Leertaste wechselt zwischen "M", "*" und leer. "M" bedeutet, dass das Feature als Modul erstellt wird, das bei Bedarf zum Start von Ubuntu geladen wird. "*" Bedeutet, dass das Feature in den Kernel eingebaut und immer geladen wird. Das Skript enthält keine leeren Optionen im endgültigen Produkt.

Wenn Sie fertig sind, bereinigen Sie das Verzeichnis.

 mach sauber 

Jetzt ist Ihr Kernel bereit zu bauen.

Kernel-Pakete erstellen

Es gibt eine Methode, die von Ubuntu verwendet wird, um ihre Kernel zu erstellen, aber es zwingt Sie, Skripte zu verwenden, die für ältere Versionen geschrieben wurden. Manchmal ist das in Ordnung; andere bricht es fürchterlich. Daher ist es normalerweise besser, die generische Linux-Methode mit GNU make zu verwenden.

 make -j `getconf _NPROCESSORS_ONLN` deb-pkg LOCALVERSION = -benutzerdefiniert 

Die ganze Zeile kompiliert den Kernel in .deb-Pakete, indem er die Anzahl der CPU-Kerne auf Ihrem System plus eins verwendet. Es fügt auch "custom" am Ende der Paketversion hinzu, um Ihren benutzerdefinierten Kernel von anderen zu unterscheiden.

Hinweis : Es kann Stunden dauern, einen Kernel zu kompilieren. Sei geduldig.

Installieren des Kernels

Sie werden Ihre neuen Kernel-Pakete ein Verzeichnis nach oben finden. Sie werden anhand ihrer Versionsnummer leicht zu erkennen sein. Sie können dpkg, um sie zu installieren.

 cd .. sudo dpkg -i linux-firmware-image-4.11.1-custom_4.11.1-custom-1_amd64.deb sudo dpkg -i linux-libc-dev_4.11.1-custom-1_amd64.deb sudo dpkg -i linux-überschriften -4.11.1-custom_4.11.1-custom-1_amd64.deb sudo dpkg -i linux-image-4.11.1-benutzerdefiniert-dbg_4.11.1-custom-1_amd64.deb sudo dpkg -i linux-image-4.11.1-custom_4 .11.1-custom-1_amd64.deb 

Wenn die Installation abgeschlossen ist, starten Sie Ihren Computer neu. Ubuntu wird automatisch in Ihren neuen Kernel booten. Sie können dies überprüfen, indem Sie Uname uname -r in einem Terminal ausführen, wenn es gestartet wird. Wenn Sie Ihre Version sehen, herzlichen Glückwunsch! Sie führen Ihren eigenen benutzerdefinierten Kernel aus.