The Linux Kernel 6.4 has officially landed, marking a new era of enhancements and features for Linux-based operating systems. This major update is a treasure trove of advancements, including Intel LAM (Linear Address Masking) support, user trace events, and a refined machine keyring for Machine Owner Keys (MOK) that now only stores CA-enforced keys. It also ushers in support for the nolibc library on LoongArch, zoned block devices for the F2FS file system, and hibernation capabilities for the RISC-V architecture.
The io_uring subsystem has seen significant improvements, now capable of executing multiple direct-I/O writes simultaneously to a file, a feature currently exclusive to EXT4 and XFS filesystems. The Stream Control Transmission Protocol (SCTP) now supports the Fair and Weighted Fair Queuing (WFQ) schedulers and a new netlink-based API has been introduced for user space helper function calls.
On the hardware front, Linux Kernel 6.4 introduces a new Qualcomm QAIC DRM accelerated driver for Cloud AI, KVM support for virtual NMIs on x86 AMD, and fbdev emulation for GEM DMA drivers. It also brings Qualcomm Inline Crypto Engine support, support for new MMIO based models (T2 Macs), Intel Sierra Forest EDAC support, and improved BIG TCP performance. Additionally, it includes a new BPF netfilter program type and various thermal improvements in the Mediatek driver.
While the Linux Kernel 6.4 is available for download from Linus Torvalds’ git tree or the kernel.org website, those who prefer a more straightforward approach can follow our guide. This guide will walk you through installing Linux Kernel 6.4 on Ubuntu 22.04 Jammy Jellyfish and Ubuntu 20.04 Focal Fossa LTS releases using the Ubuntu Mainline Kernel Installer. This tool offers both graphical and CLI installation options and enables automatic updates to keep your kernel updated at all times. This method is also applicable to short-term releases of Ubuntu. The Linux Kernel 6.4 release is a significant milestone for the Linux community, offering a plethora of new features, improvements, and hardware support that will enhance user experience and provide a more robust and efficient system performance.
Section 1: Install Ubuntu Mainline Kernel Installer
One of the best methods for installing the latest Linux Kernel on Ubuntu-based distributions is by using the Ubuntu Mainline Kernel Installer repository from Launchpad PPA ppa:cappelikan/ppa. This method allows you to quickly download the latest Linux Kernel source and install it on your Ubuntu machine using either the command-line interface (CLI) or a graphical user interface (GUI). Additionally, this tool enables you to install any Linux Kernel version.
Step 1: Update Ubuntu
Before installing Linux Kernel 6.4, ensuring your system is up-to-date is crucial. This process involves updating all packages on your system to prevent potential conflicts during installation or upgrading:
sudo apt update
Run the specified command to initiate the upgrade process if updates are available:
sudo apt upgrade
If a large number of packages have been updated, including the Linux Kernel, it can be beneficial to reboot your system before installing a new Linux kernel such as 6.4:
sudo reboot
Step 2: Import Ubuntu Mainline Kernel Installer PPA
Run the following command to import the Ubuntu Mainline PPA:
sudo add-apt-repository ppa:cappelikan/ppa -y
Step 3: Update Packages Index
After importing the PPA, it is recommended to update the package list on your system by executing the following command:
sudo apt update
To install the Ubuntu Mainline Kernel Installer on your system, execute the following command in the terminal to initiate the installation process:
sudo apt install mainline -y
Section 2: Install Linux Kernel 6.4 with GUI (Desktop)
To install Linux Kernel 6.4 using a graphical interface (GUI), you can utilize the Ubuntu Mainline Kernel tool. This section will guide you through the process of launching the tool, syncing the cache, and installing the new kernel.
Step 1: Launch the Ubuntu Mainline Kernel Tool
Execute the following command in the terminal to launch the Ubuntu Mainline Kernel tool:
mainline
For desktop users, you can also find the Ubuntu Mainline Kernel Installer application icon by following this path:
Activities > Show Applications > Ubuntu Mainline Kernel Installer
Example launching Ubuntu Kernel Mainline on Ubuntu Linux:
Step 2: Sync Cache with Latest Kernels
Upon launching the Ubuntu Mainline Kernel tool, you’ll see a list of available kernel versions. To ensure that the latest kernel versions are displayed, you should sync the cache. To do this, click the Sync button located in the toolbar at the top of the application window. This action will update the cache and display the most recent kernel versions, including Linux Kernel 6.4.
Step 3: Select Linux Kernel 6.4
After syncing the cache, locate Linux Kernel 6.4 in the list of available kernel versions. Click on the desired kernel version to select it. When you have selected Linux Kernel 6.4, the Install button will become active.
Step 4: Install Linux Kernel 6.4
Click the Install button to begin the installation process of Linux Kernel 6.4. A progress bar will appear, indicating the installation progress. Once the installation is complete, a confirmation message will be displayed
Once the installation via the GUI installer is complete, you will see Linux Kernel 6.4 installed:
Step 5: Reboot Your System
After successfully installing Linux Kernel 6.4, it is essential to reboot your system to apply the changes and start using the new kernel version. To reboot your system, execute the following command in the terminal:
sudo reboot
Alternatively, you can use the graphical interface to reboot by navigating to:
Activities > Power Off / Log Out > Restart
To verify the installation, you can run the following command in your terminal:
mainline --list-installed
Alternatively load up the Ubuntu Mainline Kernel GUI and you will see Linux Kernel 6.4 running:
Section 3: Install Linux Kernel 6.4 with CLI (Server)
The mainline tool’s Command Line Interface (CLI) provides the same functionality as the graphical interface, including downloading and installing kernels and viewing and managing the installed kernels and their boot order. This section will guide you through the process of using CLI commands with the mainline tool.
Step 1: List Available Kernel Versions
To list the available kernel versions, use the following command:
mainline --list
Step 2: View Currently Installed Kernels
To view the currently installed kernels, execute this command:
mainline --list-installed
Step 3: Download a Specific Kernel Version (Optional)
To download a specific kernel version, use the following command:
mainline --download <version>
Replace <version> in the command with the actual version number of the kernel you wish to download. For example, to download Linux Kernel 6.4, use the command:
mainline --download 6.4
Note: The install command will automatically download your chosen Linux kernel version. You can skip the download command unless you plan to download multiple kernels to switch between or have limited internet access.
Step 4: Install the Downloaded Kernel
To install a downloaded kernel, execute this command:
mainline --install <version>
For Linux Kernel 6.4, that command would be:
mainline --install 6.4
Do not forget when minor versions occur, replace X with the minor version:
mainline --install 6.4.x
Step 5: Reboot Your System
The newly installed kernel will be set as the default kernel by default. After installation, the terminal output will prompt you to reboot your system with the message “Installation completed. A reboot is required to use the new kernel.” This is necessary to ensure the new kernel is properly loaded and functioning on your system.
sudo reboot
Step 6: Verify the Installed Kernel Version
After rebooting, you can check the installed version of Linux Kernel 6.4 with the command:
mainline --list-installed
Example output:
Step 7: Set the Boot Order of Installed Kernels (Optional)
To set the boot order of the installed kernels, use the following command:
mainline --set-default <version>
Replace <version> with the kernel version you want to set as the default boot kernel.
Step 8: Uninstall a Kernel (Optional)
To uninstall a kernel, execute this command:
mainline --uninstall <version>
Step 9: Remove Old Kernel Versions to Free Up Disk Space (Optional)
To remove old kernel versions and free up disk space, use the following command:
mainline --remove-old
This command will remove all but the two most recent kernels and their associated headers from your system.
Step 10: Get Help with the Mainline Tool’s Command Line Interface (Optional)
To get help with the mainline tool’s command line interface, execute this command:
mainline --help
This will display a list of available command line options and their descriptions.
Section 4: Enabling Release Candidate Linux Kernels (Optional)
In this section, we’ll walk through the steps for those who are interested in testing the latest release candidates (RC) of Linux kernels. Release candidates are versions of the kernel that are close to the final release but might contain bugs as they are still in the testing phase. By trying out release candidates, you can get a sneak peek into the new features and improvements.
Release candidates are typically not recommended for production environments due to their experimental nature. However, they are invaluable for developers and testers who want to contribute to the Linux kernel development.
Step 1: Enable Release Candidates via GUI
If you are using a Linux distribution with a graphical user interface (GUI), you can enable release candidates through the settings tab. This is particularly useful for those who prefer a visual approach.
- Open the settings tab.
- Look for an option named “Hide unstable and RC releases.”
- Untick the checkbox next to this option.
By doing this, you are telling the system not to hide the release candidates. It’s worth mentioning that this option is enabled by default as a precautionary measure to prevent unintentional use of unstable releases.
Example:
Step 2: Enable Release Candidates via Terminal (For Headless Environments)
If you are working in a headless environment or if you prefer using the terminal, this step is for you.
Execute the following command:
mainline --list --include-unstable
This command instructs the system to refresh the Ubuntu Mainline kernel cache and include release candidates in the list. Note that the most recent release or release candidate is always listed at the top.
Example:
Understanding the Command
Let’s break down what this command does:
- mainline is the program that helps in managing Ubuntu Mainline kernels.
- --list is an option that tells the program to display a list of available kernels.
- --include-unstable is an option that instructs the program to include release candidates in the list.
As a result, this command helps you to easily fetch and view the available release candidates for Linux kernels.
Conclusion: Installing Linux Kernel 6.4 on Ubuntu Linux
In conclusion, the installation of Linux Kernel 6.4 on Ubuntu 22.04 Jammy Jellyfish and Ubuntu 20.04 Focal Fossa LTS releases, as well as short-term releases of Ubuntu, is a straightforward process with the Ubuntu Mainline Kernel Installer. This tool simplifies the process and ensures your kernel remains updated by offering both graphical and CLI installation options. The Linux Kernel 6.4 is a significant milestone, bringing new features, improvements, and hardware support that will enhance user experience and provide a more robust and efficient system performance.
Additional Resources and Links
For further reading and resources, the following official sources provide a wealth of information:
- Ubuntu Mainline Kernel Installer GitHub: This is the official GitHub repository for the Ubuntu Mainline Kernel Installer, where you can find the source code and latest updates.
- Ubuntu Kernel Mainline PPA: This is the mainline build precompiled kernels repository for Ubuntu.
- Launchpad PPA: This is the official Launchpad PPA for the Ubuntu Mainline Kernel Installer.
- Kernel.org: The official website for the Linux kernel, where you can find the latest news, updates, and releases.
- Kernel.org Releases: This page on the official Linux kernel website provides detailed information about the latest kernel releases.









