What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

On Ubuntu Desktop or Server, the supported kernel-update path is straightforward: check the running kernel with uname -r, refresh package metadata with sudo apt update, install updates with sudo apt upgrade, reboot if a new kernel was installed, and verify the result. Keep the previous kernel in GRUB until the new one has passed your hardware and service checks. Choose Ubuntu’s generic GA kernel for the broadest stability, or the matching HWE stream when newer hardware support is the priority.

The safe Ubuntu kernel-update procedure

Ubuntu distributes its supported kernels as packages. A normal Desktop or Server installation receives new kernel images, modules and security fixes through the installed kernel metapackage and the regular APT workflow. Updating the package is not the same as running that kernel: Linux continues using the kernel loaded at boot until you restart the machine.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Record the running kernel. Run uname -r and save the output. This gives you a baseline for confirming the change.
  2. Refresh package metadata. Run sudo apt update. APT contacts the configured Ubuntu repositories and downloads current package indexes; it does not install a kernel by itself.
  3. Install available updates. Run sudo apt upgrade. This installs the kernel packages offered by your configured release and keeps the normal kernel metapackage in place.
  4. Determine whether a reboot is needed. If the transaction installed a newer kernel image, modules or related boot files, plan a restart. Package installation alone leaves the old kernel running.
  5. Reboot during a maintenance window. Run sudo reboot when interactive users, remote sessions and critical services can tolerate a short interruption.
  6. Verify after startup. Run uname -r again and compare it with the pre-update value. Then exercise the machine’s important functions before declaring the change complete.

Canonical’s documented rule is that kernel updates outside Livepatch coverage must be installed with the system package manager: APT on Ubuntu Desktop or Server, or snapd on Ubuntu Core, followed by a reboot into the upgraded kernel.

What each command does

uname -r: identify the kernel actually running

uname -r reports the release string of the kernel currently loaded in memory. It does not list every kernel installed on disk and it does not predict which entry GRUB will choose next. Run it before and after the update, and record the output in your maintenance notes.

sudo apt update: refresh repository indexes

This command downloads package metadata from the repositories configured for the installed Ubuntu release. If it reports an unreachable mirror, expired metadata, a disabled release repository or a signature error, resolve that repository problem before judging whether a kernel is available. No reboot is required after this command alone.

sudo apt upgrade: install the routine update set

For a standard Ubuntu installation, apt upgrade installs the kernel version selected by the installed kernel metapackage along with other updates that can be applied without removing packages. Use the distribution’s documented full-upgrade procedure only when dependency changes require it; do not switch commands reflexively on every kernel update. Read APT’s proposed changes before confirming, especially on production systems.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

sudo reboot: load the new kernel

A reboot is required for an ordinary package-installed kernel to become active. Schedule it rather than rebooting an unattended production host in the middle of a transaction, and make sure you have console or out-of-band access if the machine is remote.

How to tell whether a new kernel was installed

APT’s transaction output identifies newly installed kernel image and module packages. You can also compare the post-update uname -r value with the value recorded before the update. A changed release string confirms that the system booted a different kernel; an unchanged string means either no newer kernel was offered, the package installation did not include one, or the machine has not rebooted yet.

Ubuntu normally keeps more than one kernel in the boot menu. This is intentional: the older, known-good image is your recovery path if a driver, DKMS module, firmware combination or hardware device does not work with the new one.

Generic GA and HWE kernels: which stream should you use?

Ubuntu LTS releases offer two principal kernel tracks. The generic GA (General Availability) kernel is the stable, broad-purpose default. HWE (Hardware Enablement) supplies newer upstream kernel versions during the LTS lifecycle to improve support for newer hardware. HWE is a rolling stream: Canonical replaces an earlier HWE stack with a newer one as the LTS release progresses.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Decision factor Generic GA kernel HWE kernel
Primary goal Broad stability for established hardware and workloads Support for newer hardware and newer kernel capabilities on an LTS base
Change rate Conservative kernel line associated with the LTS release Rolling stream that advances to newer kernel versions during the LTS lifecycle
Typical fit Servers, appliances and systems where predictable kernel behavior is the priority Recent desktops, laptops and systems whose devices need a newer kernel
Default noted by Canonical Commonly the Server choice on Ubuntu 22.04 and 24.04 Desktop defaults on Ubuntu 22.04 and 24.04; Server can opt in
Third-party or DKMS modules Fewer kernel changes can reduce surprises, but every module must still be rebuilt and tested Each newer kernel may require a compatible rebuild; verify vendor support before switching

Canonical’s general guidance is that the latest LTS “-generic” kernel is the best choice for customers and business partners without specialized bleeding-edge workloads or the need to support the latest hardware. HWE is justified when a device is newer than the GA kernel’s support window or when a documented hardware issue is fixed in the newer stream.

Check which stream is installed

The release string from uname -r and the installed package names indicate the stream. A package name containing the release-specific HWE metapackage identifies HWE; the ordinary generic metapackage identifies GA. Confirm the exact Ubuntu release first so that you do not install a metapackage for a different release.

Install HWE on an LTS release

Canonical documents release-matched HWE metapackages. For Ubuntu 24.04 LTS, the documented pattern is:

sudo apt-get install --install-recommends linux-generic-hwe-24.04

On Ubuntu 22.04 LTS, use linux-generic-hwe-22.04 instead. Substitute the release that is actually installed; do not copy a different release’s suffix. The installation adds the HWE kernel and its recommended components. Reboot after the package transaction, then verify with uname -r.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Do not remove the standard kernel metapackage merely to freeze a version unless you have a documented operational reason. The metapackage tracks future kernel packages; removing or pinning it can silently stop later kernel updates and leave security fixes unapplied.

Do you need to reboot after a kernel update?

For a normal Ubuntu kernel package update, yes. The new image is stored on disk, but the running system continues to execute the old image until the next boot. Reboot when the change window permits, then confirm the release with uname -r.

A reboot may not be immediately necessary when an update changed only user-space packages or when a supported Livepatch operation applied a covered security fix to the running kernel. Those are exceptions, not a reason to postpone ordinary kernel maintenance indefinitely. If a package update installs a new kernel that Livepatch cannot cover, the machine still needs a conventional reboot.

Livepatch: fewer urgent reboots, not a replacement for kernel updates

Canonical Livepatch, included with Ubuntu Pro, applies supported high- and critical-severity kernel security fixes to a running system. Its purpose is to reduce urgent reboot pressure for qualifying vulnerabilities, particularly on systems that cannot easily schedule downtime.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Maintenance method What it covers Reboot expectation Entitlement or requirement
Ordinary kernel package update New kernel packages, including routine fixes and changes outside live-patch scope Reboot into the installed image Ubuntu package manager and configured repositories
Livepatch Supported high and critical kernel security fixes that can be produced as live patches No immediate reboot for the covered patch Ubuntu Pro, a supported kernel, architecture, flavour and HWE combination

Enable and inspect Livepatch

sudo pro attach
sudo pro enable livepatch
pro status
canonical-livepatch status

The support matrix is kernel-specific. Check Canonical’s current matrix before relying on Livepatch for a particular Ubuntu release, architecture, flavour or HWE version. A service that is enabled is not proof that every future kernel change can be live-patched.

Changes Livepatch does not cover

  • Non-security bug fixes.
  • Performance improvements.
  • Driver updates.
  • New kernel features.
  • Vulnerabilities for which a live patch cannot be produced.
  • Kernel versions or platform combinations outside the supported matrix.

Canonical also advises using the normal update tools while Livepatch is enabled. Install standard kernel updates, including lower-severity vulnerabilities and fixes that cannot be live-patched, and reboot when those updates require it. Livepatch lowers urgent downtime; it does not turn the kernel into a permanently reboot-free component.

Pre-update checklist for desktops and servers

  • Confirm the Ubuntu release and whether the machine uses GA or HWE.
  • Record uname -r and the current maintenance window.
  • Ensure important data is backed up and that remote systems have console or out-of-band access.
  • Check that storage has enough free space for another kernel image, modules and initramfs.
  • Review DKMS-managed drivers, graphics stacks, storage adapters and other out-of-tree modules.
  • For production workloads, confirm service restart procedures and an approved rollback plan.
  • Leave at least one known-good older kernel installed until the new boot has been tested.

On a desktop, test graphics, Wi-Fi, Bluetooth, suspend/resume and external displays. On a server, prioritize storage paths, networking, filesystems, virtualization, firewall rules, monitoring agents and the applications that define the host’s role.

What to test after reboot

  1. Run uname -r and confirm the expected kernel release.
  2. Check that the machine reached the intended target: graphical login on a desktop or the expected multi-user services on a server.
  3. Test storage mounts, network interfaces, DNS, time synchronization and any encrypted or remote filesystems.
  4. Confirm DKMS modules and critical drivers loaded successfully. A module compiled for an older kernel may need rebuilding or may be incompatible.
  5. Exercise application-specific paths, such as database startup, container networking, GPU workloads or virtualization, rather than relying only on a successful login.
  6. Inspect relevant system, package and DKMS logs if a device or service is missing.

Do not delete the fallback kernel immediately after a successful boot. Keep it until the new kernel has survived the period in which you normally discover hardware, driver or workload regressions.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recovering from a failed or problematic kernel boot

Use GRUB’s older kernel

At startup, open GRUB’s Advanced options menu and select the previous known-good kernel. On systems that hide the menu, holding the appropriate GRUB-display key during boot may reveal it; remote machines may require a provider console. Booting the older entry restores the last working kernel without deleting the new package.

Investigate before removing anything

Once the fallback kernel is running, examine package-manager output, DKMS build results, firmware messages, driver logs and the service that failed. Common causes include an out-of-tree module that did not build for the new ABI, missing firmware, a graphics-driver mismatch, an initramfs problem or a storage/network driver regression.

Repair or rebuild the affected component, install a fixed package when available, and retry the newer kernel only after you understand the failure. Do not remove the currently running kernel, and do not remove the only fallback while troubleshooting.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Cleaning up obsolete kernels safely

Kernel cleanup depends on the Ubuntu release and the package state. First verify the running release with uname -r, identify which older image is the fallback, and confirm that the new kernel boots correctly. Remove only obsolete images; never delete the kernel currently in use or the last known-good fallback.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Automatic package cleanup may remove kernels that Ubuntu marks as no longer required, but inspect the proposed removals before accepting them on a production machine. If you deliberately pin or remove a kernel metapackage, document the operational reason and create a process to restore normal tracking; otherwise future kernel updates can stop arriving.

Troubleshooting common update problems

APT says no packages can be upgraded

Check that the repositories point to the correct Ubuntu release, run sudo apt update again, and confirm whether the installed GA or HWE metapackage is present. If no newer package is offered, there may simply be no applicable kernel update in the configured repositories.

The package installed, but uname -r is unchanged

The system has not rebooted into the new image, or GRUB selected the previous entry. Reboot during the approved window, then inspect the GRUB selection and run uname -r again.

A DKMS module fails during installation

Read the DKMS build error and identify the module owner. A kernel update can expose an API or compiler incompatibility in third-party modules. Obtain a version that supports the new kernel, rebuild it according to its vendor’s instructions, or boot the fallback kernel while you plan the fix.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A device or service disappeared after reboot

Boot the previous kernel from GRUB to separate a kernel regression from an unrelated configuration problem. Compare driver, firmware, DKMS and service logs between boots, then apply the appropriate package or configuration fix before retrying.

Livepatch reports that a fix is unavailable

That status can mean the issue is outside Livepatch’s severity or technical scope, or that the running kernel is not supported by the current matrix. Use APT for the ordinary kernel update and schedule the required reboot.

Ubuntu Core is different

Ubuntu Core is not updated through the Desktop or Server APT workflow. Canonical identifies snapd as the package-management path for Ubuntu Core. Follow the Core device’s supported update and reboot process, and do not apply Desktop/Server APT commands to a Core image unless Canonical’s documentation for that device explicitly instructs you to do so.

A practical decision framework

  • Use GA when the machine’s hardware is established, stability and a conservative change rate matter most, or the system is a server with no need for newer device support.
  • Use HWE when an LTS system needs support for newer hardware or a documented fix available only in the newer stream. Install the metapackage matching the installed release.
  • Use Livepatch in addition to normal updates when Ubuntu Pro entitlement and the support matrix fit the machine and urgent security reboots are difficult to schedule.
  • Always retain a fallback until the new kernel has booted and the machine’s critical hardware, modules and services have been checked.

The routine answer to “How do I update the Linux kernel on Ubuntu?” is therefore package-manager maintenance followed by a planned reboot and verification. The important operational choices are selecting the correct kernel stream, understanding Livepatch’s limits, and preserving a tested rollback path.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.