Mainline Linux kernel telepítése AlmaLinuxon az ELRepo tárolóból

Linux 5 perc olvasás

Az AlmaLinux kernele a teljes életciklus alatt ugyanazon a főverzión marad: AlmaLinux 10-en 6.12, AlmaLinux 9-en 5.14. Ezt a Red Hat folyamatosan javítja, és a biztonsági és hardvertámogatási javítások egy részét újabb kernelekből is visszaülteti. Egy szerverhez ez a legjobb választás: stabil, tesztelt, és a disztribúció automatikusan frissíti.

Ritkán szükség lehet a legújabb kernelre, például egy friss fájlrendszer-, hálózati vagy hardverfunkció miatt, vagy egy olyan program kedvéért, amely újabb kernelt kér. Erre az ELRepo tároló kernel-ml (mainline) csomagja ad lehetőséget: ez a kernel.org aktuális stabil kernele, AlmaLinuxra fordítva. Mielőtt belevág, olvassa el a Mi az a Linux kernel? cikket és blogcikkünket a testreszabott kernel előnyeiről és hátrányairól.

A lépéseket 2026 októberében próbáltuk ki AlmaLinux 10.2 (x86_64) és AlmaLinux 9.8 rendszeren, virtuális gépben. A parancsokat root felhasználóként vagy sudo-val futtassa.

Mielőtt telepíti

  • Készítsen mentést, VPS-en lehetőleg pillanatképet. Ha az új kernel nem indul el, a pillanatképből percek alatt visszaáll.
  • A külön fordított kernelmodulok (például egyes VPN-, tűzfal- vagy fájlrendszer-modulok) az új kernellel nem biztos, hogy működnek.
  • Az ELRepo kernele nem kap AlmaLinux-támogatást. A biztonsági frissítéseit az ELRepo adja ki, és Önnek kell telepítenie őket.
  • Secure Boot mellett a kernel-ml nem indul el. Ellenőrizze a mokutil --sb-state paranccsal. A teszten a pesign -S -i /boot/vmlinuz-… szerint az ELRepo kernele egyáltalán nincs aláírva („No signatures found”), az AlmaLinux kernelét viszont az „AlmaLinux Secure Boot Signing” kulcs írta alá. Az elrepo-release csomaggal érkező ELRepo Secure Boot-kulcs (/etc/pki/elrepo/SECURE-BOOT-KEY-elrepo.org.der) regisztrálása ezen nem segít, mert a kernelt nem írták alá vele. Ha a gépen be van kapcsolva a Secure Boot, maradjon a gyári kernelnél. A tesztgépen nem volt bekapcsolva („This system doesn’t support Secure Boot”).
  • Menedzselt VPS esetén előbb egyeztessen velünk, mert a kernelcsere a szerver működését érinti.

Mi érhető el?

  kernel-ml (mainline) kernel-lt (hosszú támogatású)
AlmaLinux 10, x86_64 igen, 7.2.13 nincs
AlmaLinux 10, aarch64 (ARM) nincs nincs
AlmaLinux 9 igen, 7.2.13 igen, 6.1.190

A verziók a teszt idején érvényesek. AlmaLinux 10-re az ELRepo csak x86_64 processzorra fordít mainline kernelt; ARM-alapú gépen a tároló üres.

1. Az ELRepo tároló telepítése

Importálja az ELRepo aláírókulcsát, majd telepítse a tároló csomagját.

AlmaLinux 10:

sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-v2-elrepo.org
sudo dnf install https://www.elrepo.org/elrepo-release-10.el10.elrepo.noarch.rpm

AlmaLinux 9:

sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-v2-elrepo.org
sudo dnf install https://www.elrepo.org/elrepo-release-9.el9.elrepo.noarch.rpm

Mindkét rendszeren a RPM-GPG-KEY-v2-elrepo.org kulcsot használja. Az ELRepo régebbi, RPM-GPG-KEY-elrepo.org nevű kulcsát AlmaLinux 10 elutasítja, mert SHA1-gyel készült: „Policy rejects 309BC305BAADAE52 … because SHA1 is not considered secure”, „key 1 import failed”.

A csomag négy tárolót hoz létre: az elrepo (illesztőprogramok) be van kapcsolva, az elrepo-kernel, az elrepo-testing és az elrepo-extras ki. A kernelek az elrepo-kernel tárolóban vannak, ezt csak a telepítés idejére kapcsoljuk be.

Az elérhető kernelek:

dnf --disablerepo='*' --enablerepo=elrepo-kernel list --available

2. A kernel-ml telepítése

sudo dnf --enablerepo=elrepo-kernel install kernel-ml

Három csomag települ: kernel-ml, kernel-ml-core és kernel-ml-modules. A régi kernel a gépen marad, így bármikor vissza lehet térni hozzá.

Ha külön fordított kernelmodulokat használ (DKMS-sel telepített illesztőprogramok), az új kernelhez a fejlesztői csomag is kell, különben a modulok nem fordulnak le hozzá:

sudo dnf --enablerepo=elrepo-kernel install kernel-ml-devel

Az új kernel automatikusan alapértelmezett lesz. Ellenőrzés:

sudo grubby --default-kernel
/boot/vmlinuz-7.2.13-1.el10.elrepo.x86_64

3. Újraindítás és ellenőrzés

sudo systemctl reboot

Újraindítás után:

uname -r
sudo grubby --info=ALL | grep -E '^(index|title)'

Az uname -r és a grubby kimenete AlmaLinux 10 x86_64 rendszeren: a futó kernel 7.2.13-1.el10.elrepo, a listában két AlmaLinux-kernel és az ELRepo kernel, az alapértelmezett az ELRepo kernel

A teszten mindkét rendszer gond nélkül elindult az új kernellel, a hálózat és a szolgáltatások működtek (systemctl --failed üres volt). Nézze át a naplót is (sudo journalctl -b -p err), lásd: Naplófájlok olvasása.

Figyelem: az AlmaLinux kernelfrissítése visszaveszi az alapértelmezést

AlmaLinuxon a /etc/sysconfig/kernel fájl UPDATEDEFAULT=yes beállítása miatt minden újonnan telepített kernel alapértelmezett lesz. A teszten az ELRepo kernel telepítése után a rendszer frissítése egy új AlmaLinux-kernelt hozott (6.12.0-211.69.1), és utána a grubby --default-kernel már ezt mutatta: a következő újraindítás a gyári kernellel indult volna.

Ezért minden frissítés után ellenőrizze, és szükség esetén állítsa vissza:

sudo grubby --default-kernel
sudo grubby --set-default /boot/vmlinuz-7.2.13-1.el10.elrepo.x86_64

A /etc/sysconfig/kernel fájlban a DEFAULTKERNEL=kernel-ml beállítás megakadályozza, hogy az AlmaLinux-kernelek frissítése elvegye az alapértelmezést. A teszten azonban ezzel az új kernel-ml verziók sem lettek automatikusan alapértelmezettek, tehát a kernel-ml frissítése után is kézzel kell beállítani. Bármelyik megoldást választja, frissítés után nézze meg a grubby --default-kernel kimenetét.

A kernel-ml frissítése

Mivel az elrepo-kernel tároló ki van kapcsolva, a dnf upgrade nem frissíti a kernel-ml-t. Ezt külön kell kérni:

sudo dnf --enablerepo=elrepo-kernel upgrade kernel-ml

Ha szeretné, hogy a rendszerfrissítés automatikusan hozza az új mainline kernelt is, kapcsolja be véglegesen: sudo dnf config-manager --set-enabled elrepo-kernel. A mainline kernelek gyakran váltanak főverziót, ezért ezt csak akkor tegye, ha minden frissítés után ellenőrzi a gépet.

A gépen egyszerre legfeljebb három kernel marad (installonly_limit=3 a /etc/dnf/dnf.conf fájlban), a legrégebbi a negyedik telepítésekor törlődik.

Visszatérés a gyári kernelre

A cloud image-ekből telepített VPS-eken a GRUB menü gyakran nem jelenik meg (GRUB_TIMEOUT=0 a /etc/default/grub fájlban, a teszten is így volt), ezért indításkor nem lehet kernelt választani. A visszaállás így is egyszerű, amíg a gép elindul:

sudo grubby --info=ALL | grep -E '^(index|kernel)'
sudo grubby --set-default /boot/vmlinuz-5.14.0-687.53.1.el9_8.aarch64
sudo systemctl reboot

A --set-default után a gyári kernel elérési útját adja meg, ahogy a lista mutatja. A fenti példa a 9-es tesztgépről való. Ha éppen azzal a kernellel fut a gép, amelyet alapértelmezettnek szeretne, az útvonal be is helyettesíthető: sudo grubby --set-default "/boot/vmlinuz-$(uname -r)". Ha a gyári kernellel elindult a gép, és már nincs szükség az ELRepo kernelre:

sudo dnf remove 'kernel-ml*'

Az ELRepo-kernelt ne akkor távolítsa el, amikor éppen az fut (uname -r kimenetében ne szerepeljen elrepo). A teszten az eltávolítás után a grubby már csak a gyári kernelt listázta, az lett az alapértelmezett. Ha az ELRepo tárolóra sincs többé szükség: sudo dnf remove elrepo-release.

Ha az új kernellel a gép el sem indul, a VPS-t állítsa vissza a pillanatképből, vagy írjon az ügyfélszolgálatunknak.

Rendszerfrissítés helyett

Ha nem egy konkrét kernelfunkció kell, hanem egyszerűen újabb rendszerre vágyik, a kernelcsere helyett érdemesebb a következő AlmaLinux főverzióra váltani, mert ott minden csomag együtt van tesztelve. Ennek lépéseit az AlmaLinux és Rocky Linux frissítése ELevate-tel cikk írja le. A KVM VPS-eink teljes root hozzáférést adnak, így a kernelt Ön választja meg.

Vissza: Linux leírások (62)