Jedro AlmaLinux ostane ves življenjski cikel na isti glavni različici: v AlmaLinux 10 je to 6.12, v AlmaLinux 9 pa 5.14. Red Hat ga nenehno popravlja in del varnostnih popravkov in popravkov za podporo strojne opreme prenaša tudi iz novejših jeder. Za strežnik je to najboljša izbira: stabilno, preizkušeno, distribucija pa ga samodejno posodablja.
Redko je lahko potrebno najnovejše jedro, na primer zaradi nove funkcije datotečnega sistema, omrežja ali strojne opreme ali zaradi programa, ki zahteva novejše jedro. To omogoča paket kernel-ml (mainline) repozitorija ELRepo: to je trenutno stabilno jedro s kernel.org, prevedeno za AlmaLinux. Preden se lotiš, preberi članek Kaj je jedro Linux? in naš blogovski zapis o prednostih in slabostih prilagojenega jedra.
Korake smo oktobra 2026 preizkusili v sistemih AlmaLinux 10.2 (x86_64) in AlmaLinux 9.8, v navideznem računalniku. Ukaze zaganjaj kot uporabnik root ali s sudo.
Preden ga namestiš
- Naredi varnostno kopijo, na VPS po možnosti posnetek. Če se novo jedro ne zažene, se iz posnetka vrneš v nekaj minutah.
- Ločeno prevedeni moduli jedra (na primer nekateri moduli VPN, požarnega zidu ali datotečnega sistema) z novim jedrom morda ne bodo delovali.
- Jedro ELRepo ne dobi podpore AlmaLinux. Njegove varnostne posodobitve izdaja ELRepo, namestiti pa jih moraš sam.
- Ob Secure Boot se kernel-ml ne zažene. Preveri z ukazom
mokutil --sb-state. V preizkusu popesign -S -i /boot/vmlinuz-…jedro ELRepo sploh ni podpisano („No signatures found”), jedro AlmaLinux pa je podpisal ključ „AlmaLinux Secure Boot Signing”. Registracija ključa ELRepo Secure Boot, ki pride s paketomelrepo-release(/etc/pki/elrepo/SECURE-BOOT-KEY-elrepo.org.der), pri tem ne pomaga, ker jedro ni bilo podpisano z njim. Če je na računalniku vklopljen Secure Boot, ostani pri tovarniškem jedru. Na testnem računalniku ni bil vklopljen („This system doesn’t support Secure Boot”). - Pri upravljanem VPS se najprej dogovori z nami, ker zamenjava jedra vpliva na delovanje strežnika.
Kaj je na voljo?
kernel-ml (mainline) |
kernel-lt (z dolgo podporo) |
|
|---|---|---|
| AlmaLinux 10, x86_64 | da, 7.2.13 | ni |
| AlmaLinux 10, aarch64 (ARM) | ni | ni |
| AlmaLinux 9 | da, 7.2.13 | da, 6.1.190 |
Različice veljajo za čas preizkusa. Za AlmaLinux 10 ELRepo prevaja jedro mainline le za procesorje x86_64; na računalniku z ARM je repozitorij prazen.
1. Namestitev repozitorija ELRepo
Uvozi podpisni ključ ELRepo, nato namesti paket repozitorija.
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
V obeh sistemih uporabi ključ RPM-GPG-KEY-v2-elrepo.org. Starejši ključ ELRepo z imenom RPM-GPG-KEY-elrepo.org AlmaLinux 10 zavrne, ker je bil ustvarjen s SHA1: „Policy rejects 309BC305BAADAE52 … because SHA1 is not considered secure”, „key 1 import failed”.
Paket ustvari štiri repozitorije: elrepo (gonilniki) je vklopljen, elrepo-kernel, elrepo-testing in elrepo-extras pa izklopljeni. Jedra so v repozitoriju elrepo-kernel, tega vklopimo le za čas namestitve.
Razpoložljiva jedra:
dnf --disablerepo='*' --enablerepo=elrepo-kernel list --available
2. Namestitev kernel-ml
sudo dnf --enablerepo=elrepo-kernel install kernel-ml
Namestijo se trije paketi: kernel-ml, kernel-ml-core in kernel-ml-modules. Staro jedro ostane na računalniku, zato se lahko kadar koli vrneš k njemu.
Če uporabljaš ločeno prevedene module jedra (gonilnike, nameščene z DKMS), je za novo jedro potreben tudi razvojni paket, sicer se moduli zanj ne prevedejo:
sudo dnf --enablerepo=elrepo-kernel install kernel-ml-devel
Novo jedro samodejno postane privzeto. Preverjanje:
sudo grubby --default-kernel
/boot/vmlinuz-7.2.13-1.el10.elrepo.x86_64
3. Ponovni zagon in preverjanje
sudo systemctl reboot
Po ponovnem zagonu:
uname -r
sudo grubby --info=ALL | grep -E '^(index|title)'
V preizkusu sta se oba sistema brez težav zagnala z novim jedrom, omrežje in storitve so delovali (systemctl --failed je bil prazen). Preglej tudi dnevnik (sudo journalctl -b -p err), glej: Branje dnevniških datotek.
Pozor: posodobitev jedra AlmaLinux vzame nazaj privzeto nastavitev
V AlmaLinuxu zaradi nastavitve UPDATEDEFAULT=yes v datoteki /etc/sysconfig/kernel vsako novo nameščeno jedro postane privzeto. V preizkusu je po namestitvi jedra ELRepo posodobitev sistema prinesla novo jedro AlmaLinux (6.12.0-211.69.1), nato pa je grubby --default-kernel kazal že tega: naslednji ponovni zagon bi se izvedel s tovarniškim jedrom.
Zato po vsaki posodobitvi preveri in po potrebi obnovi:
sudo grubby --default-kernel
sudo grubby --set-default /boot/vmlinuz-7.2.13-1.el10.elrepo.x86_64
Nastavitev DEFAULTKERNEL=kernel-ml v datoteki /etc/sysconfig/kernel prepreči, da bi posodobitev jeder AlmaLinux vzela privzeto nastavitev. V preizkusu pa s tem tudi nove različice kernel-ml niso samodejno postale privzete, zato ga je treba tudi po posodobitvi kernel-ml nastaviti ročno. Katero koli rešitev izbereš, po posodobitvi poglej izpis grubby --default-kernel.
Posodobitev kernel-ml
Ker je repozitorij elrepo-kernel izklopljen, dnf upgrade ne posodobi kernel-ml. To je treba zahtevati posebej:
sudo dnf --enablerepo=elrepo-kernel upgrade kernel-ml
Če želiš, da posodobitev sistema samodejno prinese tudi novo jedro mainline, ga trajno vklopi: sudo dnf config-manager --set-enabled elrepo-kernel. Jedra mainline pogosto menjajo glavno različico, zato to naredi le, če računalnik preveriš po vsaki posodobitvi.
Na računalniku naenkrat ostanejo največ tri jedra (installonly_limit=3 v datoteki /etc/dnf/dnf.conf), najstarejše se izbriše ob namestitvi četrtega.
Vrnitev na tovarniško jedro
Na VPS, nameščenih iz cloud image, se meni GRUB pogosto ne prikaže (GRUB_TIMEOUT=0 v datoteki /etc/default/grub, tako je bilo tudi v preizkusu), zato jedra ob zagonu ni mogoče izbrati. Vrnitev je kljub temu preprosta, dokler se računalnik zažene:
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
Za --set-default navedi pot tovarniškega jedra, kot jo kaže seznam. Zgornji primer je s testnega računalnika z 9. Če računalnik ravno teče z jedrom, ki ga želiš nastaviti kot privzetega, lahko pot tudi nadomestiš: sudo grubby --set-default "/boot/vmlinuz-$(uname -r)". Če se je računalnik zagnal s tovarniškim jedrom in jedra ELRepo ne potrebuješ več:
sudo dnf remove 'kernel-ml*'
Jedra ELRepo ne odstranjuj, ko ravno teče (v izpisu uname -r naj ne bo elrepo). V preizkusu je grubby po odstranitvi navajal le še tovarniško jedro, ki je postalo privzeto. Če ne potrebuješ več niti repozitorija ELRepo: sudo dnf remove elrepo-release.
Če se računalnik z novim jedrom sploh ne zažene, VPS obnovi iz posnetka ali piši naši podpori.
Namesto nadgradnje sistema
Če ne potrebuješ določene funkcije jedra, temveč si preprosto želiš novejši sistem, je namesto zamenjave jedra bolje preiti na naslednjo glavno različico AlmaLinux, saj so tam vsi paketi preizkušeni skupaj. Korake opisuje članek Nadgradnja AlmaLinux in Rocky Linux z ELevate. Naši KVM VPS dajejo poln dostop root, zato jedro izbereš sam.
