| Other languages Deutsch ; English ; français |
| Synopsis: The kernel is the main code that is used by the computer. It is the interface between the applications and the hardware like the memory, the CPU or storage devices. It is loaded at start before any application. Wikipedia says : The first Linux kernel was written by Linus Torvalds in the beginning of the 90's. Today it is developed by hundreds of developers across the world. Mageia is provided with different kernels that can be chosen according to your hardware or your preferences. At installation, the installer chooses one according to which hardware it finds. After the installation, you can choose and install a different kernel according to your taste. |
Contents
About your kernel
If you want to know which kernel your computer is using, you can check with a console to get something like:
The indication 5.15.23 matches to the kernel release, and desktop to the flavour as explained below.
To know which kernel packages are installed, you can use in console:
| $ rpm -qa|grep ^kernel |
which lists all packages starting with "kernel". The -devel package contains tools for building modules according to the kernel version. Such modules are graphical drivers or virtualization tools.
The {kernel*, kernel*-devel*, virtualbox-kernel} -latest packages are needed in order to automatically have updated kernel, kernel*-devel and virtualbox-kernel updates when available.
When more than one kernel is installed, you can select which one to boot on with the bootloader interface (Mageia Control Center -> Boot -> Set-up boot system) , which proposes a line for each installed kernel. When a kernel is updated, the bootloader uses the new version by default. If this one can not boot the box, then you can try an older one which is on another line.
As you checked that the new version is fine, you can uninstall the previous version.
Default kernels
Three flavours are used at installation and are provided for 32 bits (i586, i686) or 64 bits (x86_64) architectures.
kernel-desktop
This kernel is issued from a stable branch which receives patches from Mageia team.
The 32 bits version is optimised for i686, multicore (SMP).
This kernel is the default one, except if:
- your hardware has more than 3.8 Gb and you chose a 32 bits architecture,
- you have a server hardware.
kernel-server
The 32 bits version is optimized for i686, multi-core (SMP) and is able to address up to 64 Gb memory. The Mageia installer selects it if your hardware has more than 3.8 Gb memory and you have a 32 bits architecture, or if it finds that your hardware is a server. Server hardware means if dmidecode reports special kinds of chassis only reported on most rackmounted servers.
This kernel is proposed with the same version as kernel-desktop
kernel-desktop586
This kernel is for processors with a unique core like pentium I (i586 architecture) and is able to address till 4 Gb memory.
This kernel is proposed with the same version as kernel-desktop.
This package will not be available in Mageia 10 and later. With the transition from i586 to i686+SSE2, this architecture now supports PAE (Physical Address Extension), enabling support for up to 64 GB of memory as in standard -desktop flavour.
Other kernels
kernel-linus
The linus version is a vanilla version of the linux kernel, without any of our patches (exceptionally there can be a patch for a critical bug).
The release follows the up-to-date "release candidates" from kernel.org and can provide support for recent features if not available in standard kernels.
Backport kernels
It happens that a kernel get backported to previous Mageia release, i.e from Cauldron to latest official Mageia.
In Mageia 9, work is in progress
Kernel 6.12.60+ and 6.18.2+ are provided in Backport repository for all architectures in desktop flavour, and for 6.18 also in server flavour - no other flavour.
(In progress mga#34545 December 2025; kernels are currently in backport_testing repo)
Only two packages to install per kernel (from Backport):
kernel-stable-desktop-6.12... / kernel-stable-testing-desktop-6.18... / kernel-stable-testing-server-6.18
kernel-stable-desktop-devel-6.12... / kernel-stable-testing-desktop-devel-6.18... / kernel-stable-testing-server-devel-6.18 (If you need it, i.e if your other kernels also have corresponding -devel- packages installed.)
- Also note you need the suggested corresponding -latest packages too for easy future updating. (In contrast to mga9 6.6 kernels that do not need them, due to a different naming scheme.)
Keep having latest non-backport lib64bpf1, cpupower, and keep them updated. - we do not backport lib64bpf1 and cpupower, to not break compatibility with non-backport kernels, so you can reboot between 6.6 and backport kernels without needing to change installed packages.
Regarding kernel-*-userspace-headers contra kernel-userspace-headers for 6.6 kernels: The packages are used for building applications; use the one for the current kernel you build for. They conflict each other and are handled correctly by urpmi & drakrpm - when you have updated mageia-repos and meta-task packages to 9.4 versions - and using non backport kernel versions >= 6.6.105.
Kernel modules are not supplied (at least not yet), so like for non backport kernel-linus (in contrast to desktop and server flavours) they need be built locally by dkms (automatically at install or boot) - if you need. So for VirtualBox, install dkms-virtualbox, for the proprietary nvidia<version> driver install dkms-nvidia<version>, etc. And, importantly, you need to install a kernel-*-devel-6.* package of exactly the version as your kernel-*-6.*.
If running VirtualBox < 7.1.14, see mga#34408#c7.
Remove-Old-Kernels, rok, do currently not see nor handle backport kernels by default, so you need to manually uninstall excess kernels when needed to save space - like you did for any kernels before rok was introduced with Mageia 9. Or, make it work by adding to /etc/remove-old-kernels.cfg: In the list under the line "LISTK=\", add (for all backport versions):
kernel-stable-desktop
kernel-stable-desktop-devel
kernel-stable-source
kernel-stable-testing-desktop
kernel-stable-testing-desktop-devel
kernel-stable-testing-server
kernel-stable-testing-server-devel
kernel-stable-testing-source
Kernel series in Cauldron
In Cauldron we now have -mainline, -stable-testing, -stable and -lts kernel series. These series are (at least for now) intended for Cauldron only and provide opportunities to test newer hardware, as well as aligning the packages required for building stable kernels (e.g.: newer Rust, newer LLVM, missing libraries, etc.).
The -stable-testing (formerly -stablenew) series is (in theory) the newest stable after -mainline, resembling upstream though not matching one-to-one, as those might change more often.
The -lts series also allows testing compatibility with the "previous" latest working LTS series, which could be useful in many cases, e.g. for proprietary drivers (e.g., NVIDIA) when they won't build any more on newer kernels or for verifying different hardware behaviour of older hardware with respect to newer kernels.
Note that it is not guaranteed that all series cover all architectures and flavours. For some series, the build may be limited to a single architecture (e.g., x86_64) and single flavour (e.g., desktop), or new flavours may emerge (e.g., desktop-tunedv3 for x86_64-v3).
WARNING: Avoid running too fresh kernels on any kind of production system, especially kernels that are still rc versions, release candidates. If you run them to test anyway, please monitor the Linux kernel mailing list and be aware that there is a strong likelihood of bugs that will cause data corruption or other severe issues. So now even more important that you have backups of your data.
TIP: Have more than one series installed, to have something to fall back to.
As an example, on November 28, 2025 we had the following kernels in Cauldron:
- kernel-mainline -> 6.18.0 (x86_64, desktop only)
- kernel-stable-testing -> 6.16.2 (x86_64, desktop only)
- (kernel-stablenew -> 6.15.7 (x86_64, desktop only) - this series gets obsoleted in favour of kernel-stable-testing.)
- kernel-stable -> 6.16.12 (x86_64, desktop only)
- kernel -> 6.12.60 (all arches, all flavours)
- kernel-lts -> 6.6.100 (all arches, all flavours)