There are several commands/ways to check the kernel version running on your Linux system.
This information can be obtained through the uname command, a very popular command widely used by the Linux administrator.
There are situations where you need to know this information for application compatibility. In particular, Veritas Cluster and GPFS applications run based on the kernel version.
What is Kernel?
A kernel is the central part of an operating system (in other words, the main component or the heart of the operating system). It acts as a bridge between applications and hardware.
It is allowing for enabling multiple applications to share hardware efficiently by controlling access to CPU, memory, disk I / O, printer, video card and networking.
When an operating system is loaded into memory, the kernel stays in memory until it is first loaded and the operating system is shut down again.
Linux is a clone of the operating system Unix, written by Linus Torvalds.
There are five types of kernels, but the two most popular kernels are monolithic and micro.
- Monolithic Kernel: All operating system services run with the main kernel thread, thus residing in the same memory area. It provides access to rich and powerful hardware.
- Microkernel: Microkernel works much like monolithic kernels, but it is designed to be very small. It handles only the most basic functions such as memory management, multitasking and inter-process communication. Modules or server is handled other services.
- Hybrid Kernel: Hybrid kernel is a kernel architecture based on a combination of micro kernel and monolithic kernel architecture used in computer operating systems, which added some extra code to the kernel-space to increase performance.
- Nano Kernel: Nano kernel is a small kernel that provides hardware abstraction, but without computer services. This kernel is smaller than a traditional micro kernel.
- Exokernel: Exokernel is a type of operating system developed at the Massachusetts Institute of Technology that seeks to provide application-level management of hardware resources.
How to find the Linux Kernel Version
The uname command is a quick way to check the Linux kernel version.
uname (stands for UNIX name) that prints system information such as the host name, Linux kernel version and other details of the operating system on which it is running.
uname -r 4.18.0-477.13.1.el8_8.x86_64
As per the above output, you’re running Linux kernel
- 4 – Kernel Version
- 18 – Major Revision
- 0 – Minor Revision
- 477.13.1 – Bug Fix/Revision Details
- el8_8 – Kernel built for RHEL 8.8
- x86_64 – Machine architecture
You can also use the uname command with the option
-a for more system information.
uname -a Linux 2grhel8node 4.18.0-477.13.1.el8_8.x86_64 #1 SMP Thu May 18 10:27:05 EDT 2023 x86_64 x86_64 x86_64 GNU/Linux
Let’s explain the above output:
- Linux – Kernel name. The name of the kernel running on your system.
- 2grhel8node – Hostname
- 4.18.0-477.13.1.el8_8.x86_64 – Kernel release
- 1 SMP Thu May 18 10:27:05 EDT 2023 – Kernel version and last compiled date and time.
- x86_64 – Machine architecture
- x86_64 – Processor architecture
- x86_64 – Operating system architecture
- GNU/Linux – Operating system
Find Linux kernel using /proc/version file
The proc filesystem (procfs) is a special filesystem in Unix-like operating systems that presents information about processes and other system information.
It’s sometimes referred to as a process information pseudo-file system. It doesn’t contain ‘real’ files but run time system information (e.g. system memory, devices mounted, hardware configuration, etc).
This file shows the version of the Linux kernel, the GCC version used to compile the kernel, and the time of the kernel package. It also contains the username of the kernel compiler (in parentheses).
cat /proc/version Linux version 3.10.0-1160.90.1.el7.x86_64 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu May 4 15:21:22 UTC 2023
How to check installed Linux kernel
As you know that most of the Linux distributions keep only three latest kernels. Let’s check the same for RHEL and Ubuntu systems.
For RHEL, run:
rpm -qa kernel or yum list installed kernel or dnf list installed kernel
For Ubuntu/Debian, run:
apt list --installed | grep linux-image or dpkg -l | grep linux-image
In this tutorial, we’ve shown you how to check the kernel version running on your Linux system using uname command. Also, you can check list of installed kernels on Red Hat (RHEL) and Ubuntu systems.
If you have any questions or feedback, feel free to comment below.