Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So kompilieren Sie den Linux-Kernel

So kompilieren Sie den Linux-Kernel

angryTom
angryTomOriginal
2019-11-06 10:58:403579Durchsuche

So kompilieren Sie den Linux-Kernel

So kompilieren Sie den Kernel für Linux

Laden Sie den Kernel herunter

Wir möchten als Erstes den Kernel-Quellcode herunterladen. Suchen Sie auf Kernel.org nach der URL des erforderlichen Kernels, den Sie herunterladen möchten. Nachdem Sie die URL gefunden haben, verwenden Sie den folgenden Befehl (ich nehme den Kernel 4.17 RC2 als Beispiel), um die Quellcodedatei herunterzuladen:

wget https://git.kernel.org/torvalds/t/linux-4.17-rc2.tar.gz

Installieren Sie die erforderliche Umgebung

Um den Kernel zu kompilieren, müssen wir zunächst einige erforderliche Umgebungen installieren. Dies kann mit einem einzigen Befehl erfolgen

sudo apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison

Es ist wichtig zu beachten: Sie benötigen mindestens 128 GB lokalen freien Speicherplatz, um den Kernel-Kompilierungsprozess abzuschließen. Sie müssen also sicherstellen, dass Sie genügend Platz haben.

Extrahieren Sie den Quellcode

Verwenden Sie in dem Ordner, in dem sich der neu heruntergeladene Kernel befindet, diesen Befehl, um den Kernel zu dekomprimieren:

tar xvzf linux-4.17-rc2.tar.gz

Verwenden Sie die Befehl cd linux-4.17-rc2 Geben Sie den neu generierten Ordner ein.

Kernel konfigurieren

Bevor wir den Kernel offiziell kompilieren, müssen wir zunächst konfigurieren, welche Module enthalten sein müssen. Tatsächlich gibt es einige sehr einfache Möglichkeiten, es zu konfigurieren. Mit einem einzigen Befehl können Sie die aktuellen Kernel-Konfigurationsdateien kopieren und dann mit dem zuverlässigen Befehl „menuconfig“ alle erforderlichen Änderungen vornehmen. Verwenden Sie zum Abschluss den folgenden Befehl:

cp /boot/config-$(uname -r) .config

Nachdem Sie nun eine Konfigurationsdatei haben, geben Sie den Befehl make menuconfig ein. Dieser Befehl öffnet ein Konfigurationstool, mit dem Sie jedes verfügbare Modul durchlaufen und diejenigen aktivieren oder deaktivieren können, die Sie benötigen oder nicht benötigen.

Es besteht eine gute Chance, dass Sie einen wichtigen Teil des Kernels deaktivieren. Gehen Sie daher bei der Menükonfiguration Schritt für Schritt sorgfältig vor. Wenn Sie sich bei einer Option nicht sicher sind, lassen Sie es lieber. Oder noch besser: Verwenden Sie eine Kopie der Konfigurationsdatei für den aktuell ausgeführten Kernel (da wir wissen, dass es funktioniert). Sobald Sie die gesamte Konfigurationsliste durchgegangen sind (sie ist ziemlich lang), können Sie mit dem Kompilieren beginnen.

Kompilieren und Installieren

Jetzt ist es an der Zeit, den Kernel tatsächlich zu kompilieren. Der erste Schritt besteht darin, mit dem Befehl make zu kompilieren. Rufen Sie den Befehl make auf und beantworten Sie die erforderlichen Fragen. Diese Fragen hängen vom vorhandenen Kernel ab, den Sie aktualisieren, und vom aktualisierten Kernel.

Nachdem Sie die langen Fragen beantwortet haben, können Sie die zuvor aktivierten Module mit dem folgenden Befehl installieren:

make modules_install

Dieser Befehl wird einige Zeit dauern.

Jetzt verwenden wir diesen Befehl, um den Kernel zu installieren:

sudo make install

Noch einmal ein Befehl, der viel Zeit in Anspruch nehmen wird. Tatsächlich dauert der Befehl „make install“ länger als der Befehl „make module_install“.

Kernel als Boot aktivieren

Sobald der Befehl „make install“ abgeschlossen ist, ist es an der Zeit, den Kernel als Boot zu aktivieren. Verwenden Sie diesen Befehl, um dies zu erreichen:

sudo update-initramfs -c -k 4.17-rc2

Natürlich müssen Sie die obige Kernel-Versionsnummer durch die von Ihnen kompilierte ersetzen. Wenn der Befehl abgeschlossen ist, verwenden Sie den folgenden Befehl, um Grub zu aktualisieren:

sudo update-grub

Jetzt können Sie das System neu starten und den neu installierten Kernel auswählen.

Empfohlen: Linux-Tutorial

Das obige ist der detaillierte Inhalt vonSo kompilieren Sie den Linux-Kernel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn