Find Linux / UNIX Kernel Version Command

by on January 2, 2008 · 27 comments· LAST UPDATED December 29, 2013

in , ,

How do I find out what kernel version I am currently running under Debian Linux or any other Linux distribution using a shell prompt? How do I find out Unix kernel version?

You need to use the uname command which print certain system information such as:

Tutorial details
DifficultyEasy (rss)
Root privilegesYes
RequirementsNone
Estimated completion time1m
  1. Kernel version and name.
  2. Print the machine hardware name.
  3. print the processor type.
  4. print the operating system and more.

uname command to display the Linux or Unix kernel version

This command works under all Linux distributions and other UNIX-like operating systems such as FreeBSD, OpenBSD, Solaris, HP UX, OS X and friends. Type the following command to see running kernel version:
$ uname -r
Output taken from Linux based system:

2.6.22-14-generic

Where,

  • 2 : Kernel version
  • 6 : The major revision of the kernel
  • 22 : The minor revision of the kernel
  • 14 : Immediate fixing / bug fixing for critical error
  • generic : Distribution specific sting. For example, Redhat appends string such as EL5 to indicate RHEL 5 kernel.

Another common usage is as follows:
$ uname -mrsn
Output taken from Linux:

Linux moon.nixcraft.in 2.6.18-53.1.4.el5 x86_64

Outputs from my OS X Unix desktop

$ uname -a
Darwin desktop01 13.0.0 Darwin Kernel Version 13.0.0: Thu Sep 19 22:22:27 PDT 2013; root:xnu-2422.1.72~6/RELEASE_X86_64 x86_64

Outputs from OpenBSD Unix server

$ uname -mrs
OpenBSD 5.4 amd64

How to find the kernel version with /proc/version file (Linux only command)

You can also obtain kernel version from /proc/version file by using cat command as follows:
$ less /proc/version
$ more /proc/version
$ cat /proc/version

Sample outputs:

Linux version 2.6.18-53.1.4.el5 (brewbuilder@hs20-bc2-3.build.redhat.com) (gcc version 4.1.2 20070626 (Red Hat 4.1.2-14)) #1 SMP Wed Nov 14 10:37:27 EST 2007

Related media

See how to use uname and other commands to find the kernel version on Linux or Unix-like oses:



Video 01: Find The Linux/Unix Kernel Version Command Tutorial

Package management tools (Linux only command)

You can list all installed kernel and its version with the following command under RHEL / CentOS / Suse / Fedora Linux :
$ rpm -q kernel
Output:

kernel-2.6.18-53.el5
kernel-2.6.18-53.1.4.el5

If you are using Debian / Ubuntu, try:
$ dpkg --list | grep linux-image
Output:

ii  linux-image                            2.6.22.14.21                         Generic Linux kernel image.
rc  linux-image-2.6.20-15-generic          2.6.20-15.27                         Linux kernel image for version 2.6.20 on x86/
ii  linux-image-2.6.20-16-generic          2.6.20-16.32                         Linux kernel image for version 2.6.20 on x86/
ii  linux-image-2.6.22-14-generic          2.6.22-14.47                         Linux kernel image for version 2.6.22 on x86/
ii  linux-image-generic                    2.6.22.14.21                         Generic Linux kernel image
TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 27 comments… read them below or add one }

1 Bhargav January 8, 2008 at 9:05 am

In Solaris uname -r will give you the solaris release level.
some other usefull options with uname are

uname -s [Operating system]
SunOS

uname -r [Release version]
5.8

uname -v
Generic_117350-27[OS version]

uname -a
SunOS hostname 5.8 Generic_117350-27 sun4u sparc

the last two words describes h/w name and processor respctl[equivalent to -m and -p),

Reply

2 Mohit January 29, 2008 at 10:21 am

I log on to different RedHat based servers, Can you please update on how to differentiate between Centos, RedHat, Oracle Linux (i.e. RedHat based distributions) sitting remotely.

# uname -a (doesn’t help)
# cat /etc/redhat-relaese (its changed to RedHat as some softwares don’t get installed otherwise.

Thanks
Mohit

Reply

3 Krishna February 20, 2008 at 7:42 am

Quite useful for beginners and mediocre persons.

Reply

4 snehaliteng September 27, 2008 at 8:52 am

i need linux fonts

Reply

5 Sourav Mohanty May 27, 2009 at 6:20 am

Thnksssss

Reply

6 Robbie September 3, 2009 at 4:23 pm

cat /etc/redhat-release
this will give you redh hat version or centos version

Reply

7 Arif May 14, 2010 at 9:11 am

$ cat /etc/redhat-release

this command return the Centos version

Thanks!

Reply

8 Phil October 5, 2010 at 2:56 pm

Newbie here….kind of got thrown in Linux admin for Centos at work due to staff reduction. Confused about something (well lots of things, but can’t seem to find the answer to this particular question).

[root@xxx ~]# rpm -qa kernel
kernel-2.6.9-89.0.15.EL
kernel-2.6.9-89.0.19.EL
kernel-2.6.9-89.0.28.EL
kernel-2.6.9-89.0.29.EL
kernel-2.6.9-78.0.22.EL
kernel-2.6.9-89.0.11.EL
kernel-2.6.9-89.0.16.EL
kernel-2.6.9-89.0.23.EL
kernel-2.6.9-89.0.25.EL
kernel-2.6.9-89.29.1.EL
kernel-2.6.9-78.0.5.EL
kernel-2.6.9-78.0.8.EL
kernel-2.6.9-78.0.13.EL
kernel-2.6.9-89.0.18.EL

[root@xxx ~]# uname -a
Linux xxx 2.6.9-78.0.22.EL #1 Thu Apr 30 19:03:25 EDT 2009 i686 athlon i386 GNU/Linux

Why does rpm -qa show kernel-2.6.9-89.0.xxxxx installed but uname -a shows 2.6.9-78.00.22.EL?

I know this probably really stupid question – sorry :(

TIA.

Reply

9 Nitin February 8, 2011 at 2:51 pm

Send me all shell and kernel cammond of linux or unix

Reply

10 AMukh February 23, 2011 at 6:31 am

Life is so easy huh? :)

Send me all the words in the english language and their uses ( I dont claim that this line is original ;) )

Reply

11 ABCD May 2, 2012 at 6:52 am

hahaha…lol…AMukh…ur reply is perfect….life is not that easy

Reply

12 Lawrence April 5, 2011 at 5:49 am

THANKYOU!

Reply

13 hameed October 27, 2011 at 6:16 am

Thank you very much all friend

Reply

14 Anatoly January 27, 2012 at 12:13 am

Utility uname don’t have any info about OS version, only OS platform!!! uname -p gives
GNU/Linux… No info there are in environment variables. But I need the info like that
openSUSE 12.1 (x86_64)… How to solve this problem? I don’t want to set some environment variable manually…

Reply

15 devon February 22, 2012 at 1:38 pm

can you install linux on a computer that has another operating system already installed

Reply

16 Arkt March 10, 2012 at 10:14 pm

Yes, this is possible.

Reply

17 anky April 10, 2012 at 11:58 am

use any VM to install multiple os on same machine

Reply

18 Naveed March 11, 2012 at 7:45 am

I have installed “Linux mint” I want to know the complete info of my Linux version installed like Linux version kernel version

Reply

19 SHAHID March 16, 2012 at 11:34 am

Thanks

Reply

20 sriram March 26, 2012 at 9:25 am

Thank U Very Much senior and all

Reply

21 jagadish September 10, 2013 at 1:07 pm

xcuse me bro..
i wanna install fedora on VMWARE for running shell and c programming but my vmware is not listing out fedora OS .. what i should do …
It listing out “Linux Kernel 2.6.10″ Is it similar to fedora ? Can i run shell scripts and c programz ???

Reply

22 anky April 10, 2012 at 11:57 am

how to get the OS manufacturer,OS version,OS serial number and number of registered users on linux machine

Reply

23 sid April 13, 2012 at 8:58 am

sudo cat /etc/passwd | grep /bin/bash
UID’s 1000 and above are valid users plus UID 0 for root

Reply

24 sid April 12, 2012 at 9:30 pm

dpkg –list | grep linux-image
ii linux-image-2.6.38-11-generic 2.6.38-11.50 Linux kernel image for version 2.6.38 on x86/x86_64
rc linux-image-2.6.38-8-generic 2.6.38-8.42 Linux kernel image for version 2.6.38 on x86/x86_64
ii linux-image-3.0.0-12-generic 3.0.0-12.20 Linux kernel image for version 3.0.0 on x86/x86_64
ii linux-image-3.0.0-16-generic 3.0.0-16.29 Linux kernel image for version 3.0.0 on x86/x86_64
ii linux-image-3.0.0-17-generic 3.0.0-17.30 Linux kernel image for version 3.0.0 on x86/x86_64
ii linux-image-generic 3.0.0.17.20 Generic Linux kernel image

what does it mean 32 or 64 bit ?

when give uname -a o/p is
Linux xxxxx 3.0.0-17-generic #30-Ubuntu SMP Thu Mar 2 17:34:21 UTC 2012 i686 i686 i386 GNU/Linux

when i do file on some executable it tells it 32 bit.
ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped

Reply

25 fengchao July 26, 2012 at 2:03 am

thanks a lot.

Reply

26 Tamil August 10, 2012 at 2:17 pm

Hi

I need Kernel type and can u explain?

Reply

27 Rizvi April 30, 2013 at 4:35 am

Thanks for publishing useful contents like this……..

Reply

Leave a Comment

Tagged as: , , , , , , , , , , , , , , , , , , ,

Previous Faq:

Next Faq: