What is the exact different between Linux kernel release and version? [duplicate]

Posted on

Problem :

In Linux based operating system we can find Kernel release and Kernel version. So what is the exact different between Release and Version ?

Solution :

I disagree with slm‘s answer, reproduced by BrotskyTV. The Linux Kernel site identifies the version with the progressive number, like anything preceding the dash in the output below,

$ uname -r
3.16.0-53-generic

i.e. 3.16.0. At the same time, it identifies the release as one category among four:

Prepatch

Prepatch or “RC” kernels are mainline kernel pre-releases that are mostly aimed at other kernel developers and Linux enthusiasts. They must be compiled from source and usually contain new features that must be tested before they can be put into a stable release. Prepatch kernels are maintained and released by Linus Torvalds.

Mainline

Mainline tree is maintained by Linus Torvalds. It’s the tree where all new features are introduced and where all the exciting new development happens. New mainline kernels are released every 2-3 months.

Stable

After each mainline kernel is released, it is considered “stable.” Any bug fixes for a stable kernel are backported from the mainline tree and applied by a designated stable kernel maintainer. There are usually only a few bugfix kernel releases until next mainline kernel becomes available — unless it is designated a “longterm maintenance kernel.” Stable kernel updates are released on as-needed basis, usually 2-3 a month.

Longterm

There are usually several “longterm maintenance” kernel releases provided for the purposes of backporting bugfixes for older kernel trees. Only important bugfixes are applied to such kernels and they don’t usually see very frequent releases, especially for older trees.

These are the official release designations. However, you are unlikely to have any of those, because there is also a fifth kind of release. Again as per the previously referenced page,

Distribution kernels

Many Linux distributions provide their own “longterm maintenance” kernels that may or may not be based on those maintained by kernel developers. These kernel releases are not hosted at kernel.org and kernel developers can provide no support for them.

It is easy to tell if you are running a distribution kernel. Unless you downloaded, compiled and installed your own version of kernel from kernel.org, you are running a distribution kernel. To find out the version of your kernel, run uname -r:

# uname -r
  3.7.5-201.fc18.x86_64

If you see anything at all after the dash, you are running a distribution kernel. Please use the support channels offered by your distribution vendor to obtain kernel support.

If you want to know which official release your distro-customised kernel is based upon, there is one such list on the Linux Kernel main page.

uname -r

The first is the version string that was used when the kernel was compiled. That’s the role of -r.

$ uname -r
3.13.7-100.fc19.x86_64

This string can get a bit confusing but the base portion (everything before the first dash) is part of the actual Linux kernel version you’re using. The rest is related to packaging options that were selected.

What do I mean by this?

Well in the above scenario, 3.13.7 would be the kernel’s actual version.
The -100 tells you that various patch sets were applied to it by the Fedora packager, and they’re tracking these additional patch sets by appending a number to keep track of them and also denote that this kernel is a base kernel of 3.13.7 + everything that’s part of this -100.
The kernel was packaged for version 19 of Fedora (fc19).
It was packaged for the x86_64 (64-bit) architecture.

uname -v

For -v it’s showing you when the kernel was compiled/built.

$ uname -v
#1 SMP Mon Mar 24 21:53:16 UTC 2014

On my Fedora 19 system you can convince yourself that this is in fact true by looking at when the kernel package was actually build via RPM.

$ rpm -qi kernel-$(uname -r) | grep -E "Build Date"
Build Date  : Mon 24 Mar 2014 06:31:17 PM EDT

The build dates differ slightly since the uname -v is what was “burned” into the kernel when it was compiled. The build date in the RPM is from when the RPM had the kernel’s compile time burned into it, during package construction.

Taken from: [https://unix.stackexchange.com/questions/124466/what-is-the-difference-of-kernel-distributions-release-and-version]

Leave a Reply

Your email address will not be published. Required fields are marked *