Kernel update

From ALT Linux Wiki

APT in ALT Linux distributions and in Sisyphus does not automatically update the kernels along with the system update (see hold settings in apt.conf), since updating such a critical component of the system can lead to undesirable consequences. Instead, packages of several cores and modules to different cores can be delivered to the system at the same time. Both LiLo and Grub can be configured in such a way that a simple reboot (including reset) will return the old kernel.

PROS and CONS of updating the kernel
  • Support for new hardware
  • Implementation of new functions
  • Protection against vulnerabilities
  • Performance optimization
  • Error correction


Attention! The update-kernel utility must be started with root rights

To update the kernel, it is proposed to use the update-kernel utility, which is located in the package of the same name. Installation, if not already installed:

We get root rights

su -
apt-get update
apt-get install update-kernel

Kernel Update

Updating the core:

apt-get update

or if you want to update/install other kernel type (for example un-def):

update-kernel -t un-def
Note: The -t key and the kernel type (std-def, un-def, etc.) should be specified only if you decide to update a different type of kernel, since the current kernel type is updated by default.

update-kernel updates packages with kernel modules, but based on the list of packages installed for the current kernel. It should be understood that modules of different types of kernels can be assembled in different ways, and then update-kernel may not install the necessary one. For example, if the current kernel has a module built as part of a package with the kernel, and the new one has it separately, then the package with the necessary module will not be re-installed automatically.

In some distributions, apt does not contain connected repositories by default. To check and/or configure, you can use the apt-repo utility or simply check and edit the configs in /etc/apt/.

Updating kernel modules

update-kernel also updates kernel modules if some of the modules in the repository have been updated without updating the kernel. Running as when updating the kernel.

Additional installation of kernel modules

Sometimes it is necessary to install additional modules. There are no difficulties, but there are a number of nuances.

A common user error is installing a module from a newer kernel. The problem occurs when an older kernel is installed than in the repository, and the user installs the necessary kernel module without updating the kernel. As a result, a new kernel is installed into the system with a single module, the installation of which is requested. In order to avoid such a problem, you must first update the kernel, and then reinstall the necessary kernel modules. If you need to install modules specifically for the old kernel, you can use repository archive similar to the situation with installing the old kernel.

A rarer error is the installation of the kernel module of another assembly branch (std-def, un-def, etc.) called flavor in jargon (type, variant of the kernel assembly). To prevent this (if the module is only in another branch), you must first switch to another assembly branch using the command update-kernel.

update-kernel -t <new Flavor>

where <new flavor> = std-def, un-def, etc. See kernel/Flavors

After that, you can update the kernel module. For example, we want to switch to the un-def branch and install the fglrx module:

update-kernel -t un-def
apt-get install kernel-modules-fglrx-un-def

Installing the old kernel

Sometimes you need to install an old kernel. Description of the process.

Removing old kernel versions

After successful booting on the updated kernel, you can delete the old one: