内核版本

内核版本

主要是Linux内核版本的说明。

一、内核版本号格式

Linux内核版本号的格式可以分为3个阶段:

  • 早期版本,在1.0以前
  • 过渡版本,在1.0 ~ 2.6之间
  • 最新版本,在2.6.0以后

1.1 早期版本

用于在1.0以前,版本号格式是 x.xx,例如 0.010.02、···、1.0 等。

1.2 过渡版本

用于1.0 ~ 2.6之间,版本号格式是 A.B.C,例如 2.0.282.4.18、···、2.6.0 等。

1
2
3
A : 表示大幅度转变的内核,只有当发生重大变化的代码和内核发生才会发生,在历史上曾改变两次的内核:1994年的1.0及1996年的2.0
B : 是指一些重大修改的内核,奇数表示开发版本,偶数表示稳定版本
C : 是内核修订版本号,是指轻微修订的内核。当有安全补丁、bug修复、新的功能或驱动程序时,便会有变化

1.3 最新版本

用于2.6.0以后,版本号格式是 major.minor.patch-build.desc,例如 2.6.32-642.15.1.el6.x86_644.4.131-1.el7.elrepo.x86_64 等。

1
2
3
4
5
6
7
8
9
10
11
major : 主版本号,有结构变化才变更 
minor : 次版本号,新增功能时才发生变化,一般技术表示测试版,偶数表示生产版
patch : 补丁包数或次版本的修改次数
build : 编译(或构建)的次数,每次编译可能对少量程序做优化或修改,但一般没有大的(可控的)功能变化。
desc : 当前版本的特殊信息,其信息由编译时指定,具有较大的随意性,有如下的标识是常用的:
rc(或r),表示发行候选版本(release candidate),rc后的数字表示该正式版本的第几个候选版本,多数情况下,各候选版本之间数字越大越接近正式版。
smp,表示对称多处理器(Symmetric MultiProcessing)。
pp,在Red Hat Linux中常用来表示测试版本(pre-patch)。
EL,在Red Hat Linux中用来表示企业版Linux(Enterprise Linux)。
mm,表示专门用来测试新的技术或新功能的版本。
fc,在Red Hat Linux中表示Fedora Core。

例如 2.6.32-642.15.1.el6.x86_64,它的说明如下:

1
2
3
4
5
6
第一个组数字:2, 主版本号
第二个组数字:6, 次版本号,当前为稳定版本
第三个组数字:32, 修订版本号
第四个组数字:642.15.1,表示发型版本的补丁版本
el6:则表示我正在使用的内核是 RedHat / CentOS 系列发行版专用内核
x86_64:采用的是64位的CPU

二、内核版本分类

2.1 mainline

主线版本。

2.2 stable

稳定版,由mainline在时机成熟时发布,稳定版也会在相应版本号的主线上提供bug修复和安全补丁,但内核社区人力有限,因此较老版本会停止维护,而标记为EOL(End of Life)的版本表示不再支持的版本。

2.3 longterm(Long Term Support)

长期支持版,长期支持版的内核不再支持时会标记EOL。

2.4 linux-next,snapshot

代码提交周期结束之前生成的快照,用于给Linux代码贡献者们做测试。

三、查看内核版本

3.1 cat /proc/version

1
2
[root@home]# cat /proc/version
Linux version 4.4.131-1.el7.elrepo.x86_64 (mockbuild@Build64R7) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC) ) #1 SMP Wed May 2 13:09:02 EDT 2018

3.2 uname -a

1
2
[root@home]# uname -a
Linux bogon 4.4.131-1.el7.elrepo.x86_64 #1 SMP Wed May 2 13:09:02 EDT 2018 x86_64 x86_64 x86_64 GNU/Linux

四、查看系统版本

4.1 lsb_release -a

lsb_release -a 适用于所有的Linux发行版本。

LSB是Linux Standard Base的缩写,lsb_release命令用来显示LSB和特定版本的相关信息。如果使用该命令时不带参数,则默认加上-v参数。

说明:

1
2
3
4
5
6
7
8
-v 显示版本信息。
-i 显示发行版的id。
-d 显示该发行版的描述信息。
-r 显示当前系统是发行版的具体版本号。
-c 发行版代号。
-a 显示上面的所有信息。
-h 显示帮助信息。
-s 输出简短的描述信息(仅限于redhat和fedora系统) 。

3.2 cat /etc/issue

cat /etc/issue 适用于所有的Linux发行版本。

1
2
[root@home]# cat /etc/issue
Ubuntu 14.04.5 LTS \n \l

3.2 cat /etc/redhat-release

cat /etc/redhat-release 适用于Redhat系的Linux。

1
2
[root@home]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

参考

https://jasonhzy.github.io/2019/02/05/linux-kernel-version/

作者

jiaduo

发布于

2022-04-06

更新于

2023-07-16

许可协议