Instalace kompilační podpory
sudo apt-get install build-essential bin86 gcc gcc-3.4 libncurses5 libncurses5-dev fakeroot sudo apt-get install flex bison zstd sudo apt-get install libssl-dev sudo apt-get install libelf-dev
Vytvoření pracovního kernel adresáře a přepnutí se do něj
mkdir ~/kernel cd ~/kernel
Stažení a rozbalení zdrojových souborů
Ze stránky https://cdn.kernel.org/ stáhnout archiv „tarball“ a rozbalit
wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.15.57.tar.xz unxz linux-5.15.57.tar.xz tar xf linux-5.15.57.tar
Přepnutí se do rozbaleného adresáře
cd linux-5.15.57
Pojmenování kompilovaného jádra
V souboru ./Makefile
do parametru EXTRAVERSION
zadat pojmenování
... EXTRAVERSION = -mykernel ...
Založení konfigurace pro kompilaci jádra pouze pro aktuání HW
Použít pro konzervativní řešení, třeba virtualizovaného serveru. Dosažená minimální velikost jádra za cenu, že případný nový připojený HW nemusí být rozpoznán.
lsmod > mylsmod make LSMOD=./mylsmod localmodconfig
Možnost ruční úpravy konfigurace
Zakázání například: CONFIG_DEBUG_INFO=n
, CONFIG_MACINTOSH_DRIVERS=n
buď editací konfiguračního souboru
vi ./.config
nebo pomocí editačního nástroje
make menuconfig
Kompilace jádra
LANG=C nice make bindeb-pkg && echo ok || echo ERR
Při chybě:
*** No rule to make target 'debian/canonical-revoked-certs.pem'
zakomentovat v ./.config
parametr #CONFIG_SYSTEM_REVOCATION_KEYS="debian/canonical-revoked-certs.pem"
Při chybě: Failed to generate BTF for vmlinux Try to disable CONFIG_DEBUG_INFO_BTF
deaktivovat v ./.config
parametr CONFIG_DEBUG_INFO_BTF = n
Instalace
sudo apt-get install ../linux-*5.15.57-mykernel*.deb
Lokace nainstalovaného jádra
v adresářích:
/boot/ /usr/lib/modprobe.d/ /usr/lib/modules/ /var/lib/dpkg/info/
Vyhledání lokací přes všechny disky lze příkazem:
find / -name '*5.15.57-mykernel*'