Ricompilazione Kernel

Da GolemWiki.
Versione del 23 gen 2023 alle 10:35 di $pooky Hunter (discussione | contributi)
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Jump to navigation Jump to search

Prontuario veloce.

Se hai bisogno di alcune linee guida più dettagliate, vedi la Ricompilazione Kernel per Niubbi.

Prerequisiti: utility per la compilazione (gcc, make)

Loggarsi come utente root

# sudo su

Spostarsi nella directory dei sorgenti di sistema

# cd /usr/src

Scaricare la versione del kernel che si vuole compilare, es.:

# wget https://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/linux-6.1.7.tar.xz

Decomprimere l'archivio compresso

# tar -Jxvf linux-6.1.7.tar.xz

Spostarsi nella nuova cartella

# cd linux-6.1.7

Fare pulito

# make clean
# make mrproper

Configurazione del kernel

# make menuconfig

Compilazione

# make vmlinuz
# make modules

Installazione dei moduli

# make modules_install

Installazione del kernel

# make install

Creazione del ramdisk

# mkinitcpio -k nomekernel -g /boot/initrd.img


Il comando make install creerà i seguenti file nella directory /boot

  • vmlinuz-6.1.7 – Il nuovo kernel
  • System.map-6.1.7 – I simboli esportati dal kernel
  • initrd.img-6.1.7 – Il ramdisk
  • config-6.1.7 – Il file di configurazione del kernel

Aggiungere il nuovo kernel al file di configurazione del boot loader. Esempio di modifica da aggiungere a /boot/grub/grub.cfg

menuentry 'Linux 6.1.7' --class linux {
       linux   /boot/vmlinuz-6.1.7 root=/dev/sda2 init=/usr/lib/systemd/systemd ro quiet
       initrd  /boot/initrd.img-6.1.7
}