W jaki sposób skompilować lekkie jądro Linuxa do rozmiaru poniżej 1MB

Aby skompilować lekką wersję jądra Linuxa, możesz postępować według poniższych kroków:

Pobierz kod źródłowy jądra

Możesz pobrać go z oficjalnej strony jądra Linuxa lub z repozytorium dystrybucji, którą używasz lub z github np:

# UWAGA! Ważna uwaga, niniejsza linijka spowoduje pobranie wielkiego repozytorium Linuxa. To są konkretne dziesiątki Gigabajtów!

$ git clone https://github.com/torvalds/linux.git

# Lepszym sposobem będzie pobranie konkretnego taga z określoną wersją i z poziomem zmian (depth 1), która nas interesuje np: v6.12 (rozmiar katalogu ~3 GB)

$ git clone --depth 1 --branch v6.12 https://github.com/torvalds/linux.git
$ cd linux

Przygotuj swoje środowisko

Upewnij się, że masz wszystkie niezbędne narzędzia do kompilacji, takie jak build-essential, gcc, make i inne.

# W Linux Ubuntu dla przykładu musisz wykonać niniejszą komendę

$ sudo apt install build-essential gcc make m4
  1. Wykonaj konfigurację: Przed kompilacją, musisz skonfigurować jądro, aby było zoptymalizowane pod kątem lekkiego sprzętu. Możesz użyć opcji make menuconfig lub make xconfig do dostosowania opcji jądra. Jednak, aby posiadać lekkie jądro potrzebujemy wydać komendę make tinyconfig
$ make defconfig

$ make tinyconfig

Skompiluj jądro

Użyj polecenia make do skompilowania jądra. Możesz dodać opcję -j do przyspieszenia procesu kompilacji, np. make -j4.

$ make -j 4

$ ls -la linux/arch/x86/boot/bzImage
-rw-rw-r– 1 bieli bieli 791552 sty 29 19:54 linux/arch/x86/boot/bzImage

Zainstaluj jądro

Po skompilowaniu, użyj polecenia make install do zainstalowania nowego jądra.

$ make install

Emulacja działania i uruchomienie jądra Linux w QEMU

Jako alternatywa może będziesz chciał zobaczyć jak działa Twoje lekkie jądro Linuxa w emulatorze. Oto jak tego dokonać.

Spójrzmy na linijkę poniżej – widać, że jądro Linux jest bardzo małe (porównując do obecnych dystrybucji t.j. Linux Ubuntu to jest ok. 400 MB). Nasze lekkie jądro ma rozmiar 791kB !!!

$ ls -la linux/arch/x86/boot/bzImage
-rw-rw-r– 1 bieli bieli 791552 sty 29 19:54 linux/arch/x86/boot/bzImage


$ sudo apt install qemu-system

$ qemu-system-x86_64 -kernel linux/arch/x86/boot/bzImage

Oto efekt utuchomienia Twojego lekkiego jądra Linux – gratulacje, swoją pierwszą kompilację lekkiego Linuxa masz już za sobą!!! Jak widzisz, że jest to banalnie proste!?

TUX - maskotka systemu Linux

About the author

Autor "BIELI" to zapalony entuzjasta otwartego oprogramowania, który dzieli się swoją pasją na blogu poznajlinuxa.pl. Jego wpisy są skarbnicą wiedzy na temat Linuxa, programowania oraz najnowszych trendów w świecie technologii. Autor "BIELI" wierzy w siłę społeczności Open Source i zawsze stara się inspirować swoich czytelników do eksplorowania i eksperymentowania z kodem.