Linux内核版本介绍与查询
文章目录
- Linux内核(Linux kernel)简介
- Linux内核版本号
- 1、在CentOS下如:
- 2、在Ubuntu下如:
- 3、在ARM Cortex-A7内核的嵌入式Linux开发板下
- 内核版本分类
- 查看Linux内核版本命令
- 查看Linux系统版本的命令
本文作者: Jason hu
本文链接: http://jasonhzy.github.io/2019/02/05/linux-kernel-version/
Linux内核(Linux kernel)简介
Linux内核版本命名在不同时期有着不同的规范,在涉及到Linux版本问题时经常容易混淆,主线版本/稳定版/长期支持版本经常搞不清楚,本文主要记录下内核版本命名的规则以及如何查看Linux系统版本信息。
Linux内核(Linux kernel)简介
内核是操作系统的核心 ,其主要功能有:
- 响应中断,执行中断服务程序
- 管理多个进程,调度和分享处理器的时间
- 管理进程地址空间的内存管理
- 网络和进程间通信等系统服务程序
内核的活动范围:
- 运行于用户空间,执行用户进程
- 运行于内核空间,处于进程上下文,代表某个特定进程的执行
- 运行于内核空间,处于中断上下文,与任何进程无关,处理某个特定的中断
Linux内核版本号
第一种方式:
Linux 的版本号分为两部分,即内核版本与发行版本。内核版本号由3个数字组成:A.B.C。各数字含义如下:
- A:内核主版本号。这是很少发生变化,只有当发生重大变化的代码和内核发生才会发生。在历史上曾改变两次的内核:1994年的1.0及1996年的2.0。
- B:内核次版本号。是指一些重大修改的内核。偶数表示稳定版本;奇数表示开发中版本。
- C:内核修订版本号。是指轻微修订的内核。这个数字当有安全补丁,bug修复,新的功能或驱动程序,内核便会有变化。
第二种方式:
major.minor.patch-build.desc
- 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。
例如:
用命令uname -a查看内核版本号
1、在CentOS下如:
Linux localhost 2.6.32-642.15.1.el6.x86_64 #1 SMP Fri Feb 24 14:31:22 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
说明如下:
- 第一个组数字:2, 主版本号
- 第二个组数字:6, 次版本号,当前为稳定版本
- 第三个组数字:32, 修订版本号
- 第四个组数字:642.15.1,表示发行版本的补丁版本
- el6:则表示我正在使用的内核是 RedHat / CentOS 系列发行版专用内核
- x86_64:采用的是64位的CPU
2、在Ubuntu下如:
Linux ubuntu 4.15.0-142-generic #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
说明如下:
- 第一个组数字:4, 主版本号
- 第二个组数字:15, 次版本号,当前为稳定版本
- 第三个组数字:0, 修订版本号
- 第四个组数字:142,当前内核版本(4.15.0)的第142次微调patch
- generic:当前内核版本为通用版本,另有表示不同含义的server(针对服务器)、i386(针对老式英特尔处理器)
- pae(Physical Address Extension):物理地址扩展,为了弥补32位地址在PC服务器应用上的不足而推出,表示此32位系统可以支持超过4G的内存
- x86_64:采用的是64位的CPU
- SMP:对称多处理机,表示内核支持多核、多处理器
- Tue Apr 13 09:27:15 UTC 2021:内核的编译时间(build date)为 2021/04/13 09:27:15
3、在ARM Cortex-A7内核的嵌入式Linux开发板下
Linux buildroot 5.2.0-licheepi-zero #2 SMP Sun Mar 13 09:40:49 PDT 2022 armv7l GNU/Linux
内核版本分类
Linux内核版本的最新发布状态,参见Linux官网:https://kernel.org/
1、mainline
主线版本
2、stable
稳定版,由mainline在时机成熟时发布,稳定版也会在相应版本号的主线上提供bug修复和安全补丁,但内核社区人力有限,因此较老版本会停止维护,而标记为EOL(End of Life)的版本表示不再支持的版本。
3、longterm(Long Term Support)
长期支持版,长期支持版的内核不再支持时会标记EOL。
4、linux-next,snapshot
代码提交周期结束之前生成的快照 用于给Linux代码贡献者们做测试
查看Linux内核版本命令
1、cat /proc/version
Ubuntu
# cat /proc/version
Linux version 4.15.0-142-generic (buildd@lgw01-amd64-039) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12)) #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021
我的的开发板
# cat /proc/version
Linux version 5.2.0-licheepi-zero (liefyuan@ubuntu) (gcc version 4.9.4 (Linaro GCC 4.9-2017.01)) #2 SMP Sun Mar 13 09:40:49 PDT 2022
2、uname -a
Ubuntu
# uname -a
Linux ubuntu 4.15.0-142-generic #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
我的的开发板
# uname -a
Linux buildroot 5.2.0-licheepi-zero #2 SMP Sun Mar 13 09:40:49 PDT 2022 armv7l GNU/Linux
3、uname -r
Ubuntu
# uname -r
4.15.0-142-generic
我的的开发板
# uname -r
5.2.0-licheepi-zero
查看Linux系统版本的命令
1、lsb_release -a(适用于所有的Linux发行版本)
LSB是Linux Standard Base的缩写,lsb_release命令用来显示LSB和特定版本的相关信息。如果使用该命令时不带参数,则默认加上-v参数。
说明:
-v 显示版本信息。
-i 显示发行版的id。
-d 显示该发行版的描述信息。
-r 显示当前系统是发行版的具体版本号。
-c 发行版代号。
-a 显示上面的所有信息。
-h 显示帮助信息。
-s 输出简短的描述信息(仅限于redhat和fedora系统) 。
有些系统中默认并没有安装lsb_release,需要进行安装,以CentOS为例:
首先查找lsb_release安装包:
[root@bogon ~]# yum provides lsb_release
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile* base: mirrors.cn99.com* elrepo: mirrors.tuna.tsinghua.edu.cn* extras: centos.ustc.edu.cn* updates: mirrors.cn99.com
redhat-lsb-core-4.1-27.el7.centos.1.x86_64 : LSB Core module support
Repo : base
Matched from:
Filename : /usr/bin/lsb_release
安装:
[root@bogon ~]# yum install -y redhat-lsb-core
2、cat /etc/redhat-release(适用于Redhat系的Linux)
# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
3、cat /etc/issue(适用于所有的Linux发行版本)
$ cat /etc/issue
Ubuntu 16.04.5 LTS \n \l
参考资料:
1、Linux内核(维基百科)
2、Linux内核剖析
Linux内核版本介绍与查询相关推荐
- 手机linux内核版本了解,Linux内核版本介绍与查询
Linux内核版本命名在不同时期有着不同的规范,在涉及到Linux版本问题时经常容易混淆,主线版本/稳定版/长期支持版本经常搞不清楚,本文主要记录下内核版本命名的规则以及如何查看Linux系统版本信息 ...
- linux内核版本介绍
Linux版本 linux版本分为两类: 内核版本:免费的,它只是操作系统的核心,负责控制硬件.管理文件系统.程序进程等,并不给用户提供各种工具和应用软件: 发行版本:不一定免费,出了操作系统核心外, ...
- linux内核_查看Linux内核版本
您可能因多种原因需要确切知道GNU / Linux操作系统上运行的内核版本. 也许您正在调试与硬件相关的问题,或者了解影响旧内核版本的新安全漏洞,并且您想知道您的内核是否易受攻击. 无论是什么原因,从 ...
- 【Linux】一步一步学Linux——Linux内核版本和发行版本(03)
00. 目录 文章目录 00. 目录 01. Linux内核版本 02. Linux内核官方网站 03. Linux发行版本 04. Linux发行版本介绍 4.1 Ubuntu 4.2 RedHat ...
- linux查看tcl版本_查看Linux内核版本的方法有几个?你也是这样操作吗?
请关注本头条号,每天坚持更新原创干货技术文章.如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习 1. 前言 内核是操作系统的核心组件. 它管理系统的资源,是计算机硬 ...
- redhat6.3的linux内核版本,1-6-RHEL6.3-内核升级(Red Hat Enterprise Linux Server6.3)@树袋飘零...
本节介绍内容: 1.内核的概述 2.源码编译安装文件系统中的ntfs内核模块案例分析 1.内核的概述 Linux操作系统是用来跟硬件和用户程序互联的支撑平台,设备的驱动程序完全可以访问硬件,而设备的驱 ...
- 如何查看docker的内核版本_查看Linux内核版本的方法有几个?你也是这样操作吗?...
请关注本头条号,每天坚持更新原创干货技术文章.如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习 1. 前言 内核是操作系统的核心组件. 它管理系统的资源,是计算机硬 ...
- linux常见版本介绍
linux常用版本介绍 linux发行版和内核的关系 linux主要发行版:Fedora Core.Debian.Mandrake.Ubuntu.Red Hat Linux.SuSE.Linux Mi ...
- 查看Linux内核版本
目录 使用`uname`命令查看Linux内核版本 使用`hostnamectl`命令查看内核版本 通过查看/proc/version文件确认内核版本 使用`uname`命令查看Linux内核版本 u ...
最新文章
- rust矿洞绳子怎么爬下_车底下绑一根绳子妙用在哪?看看老司机怎么说!
- 管理系统中计算机应用知识总结,自考《管理系统中计算机应用》章节知识点复习:管理信息...
- python与excel的应用-Python利用pandas处理Excel数据的应用
- java 3d游戏_不放一行代码分享一下java实现3D游戏逻辑
- DevExpress作为企业赞助商加入.NET基金会
- slf4j绑定器_用于ADFLogger的SLF4J绑定–缺少的部分
- 解释为脑瘫的那张图_Python GIL全局解释器锁详解(深度剖析)
- 现在的00后都这么牛X的吗?
- 云架构师是做什么的_为什么以及如何成为云架构师
- 黄金分割比的重新理解
- python能做什么项目-适合Python 新手的5大练手项目,你练了么?
- 读jQuery源码释疑笔记3
- Atiitt attilax掌握的前后技术放在简历里面.docx
- 3S基础知识:MapX应用讲义—加载地图数据
- python xlwt_python中使用 xlwt 操作excel的常见方法与问题
- 微信小程序点播音频服务器,微信小程序无法播放本地音频
- 穿山甲插屏广告居中_自渲染插屏
- 欧盟监管机构将逐一评估辖区内ICO项目
- 端口复用技术简单了解;重用端口;socket复用端口
- 浏览器数据库IndexedDB
热门文章
- C语言用随机函数,C语言随机函数的使用
- JDK5~JDK14的各版本的特性
- Tom Morgan | 人生二十一条法则
- 利用FullCalendar做简单的日程管理,以及后台动态更新数据出现的问题。
- 2023年MathorCup高校数学建模挑战赛赛题浅析
- 【机器学习】均方误差(MSE)和均方根误差(RMSE)和平均绝对误差(MAE)
- 1^3 +2^3+3^3+...+n^3
- Python实现PSO粒子群优化循环神经网络LSTM分类模型项目实战
- 基于HTML5 Canvas 点击添加 2D 3D 机柜模型
- Android程序异常崩溃后重启