如何修改linux内核版本号

如何修改linux内核版本号,第1张

得重新编译内核,之前修改源代码的顶层目录下的Makefile文件,比如2.6.29.1内核的Makefile中:

VERSION = 2

PATCHLEVEL = 6

SUBLEVEL = 29

EXTRAVERSION = .1

查看linux版本信息有四种方法:一.lsb_release命令

1

lsb_release -a

二.uname命令

1

uname -a

##图片显示的是前两种方法的截图##

三.安装screenfetch之后运行screenfetch

我还安装了lolcat,会让命令输出变成彩色的,如果你喜欢也可以安装。

四.对于安装了桌面环境的,可以在【设置】→【详细信息】里面查看系统信息

logo是我用的gnome桌面环境的logo。

Linux内核版本有两种:稳定版和开发版 ,Linux内核版本号由3个数字组成:r.x.y

r:目前发布的内核主版本。

x:偶数表示稳定版本;奇数表示开发中版本。

y:错误修补的次数。

内核版本号每位都代表什么 ?

以版本号为例: 2.6.9-5.ELsmp ,

r: 2 , 主版本号

x: 6 , 次版本号,表示稳定版本

y: 9 , 修订版本号 , 表示修改的次数

头两个数字合在一齐可以描述内核系列。如稳定版的2.6.0,它是2.6版内核系列。

5: 表示这个当前版本的第5次微调patch , 而ELsmp指出了当前内核是为ELsmp特别调校的

EL : Enterprise Linux ; smp : 表示支持多处理器 , 表示该内核版本支持多处理器

知识延伸

一般的有三种

1 smp

2 bigmem

3 一般的内核

Red Hat Linux开机的时候,GRUB的启动菜单会有两个选项,分别是

Red Hat Enterprise Linux ES (版本号.ELsmp)

Red Hat Enterprise Linux ES-up (版本号.EL)

这两个分别是代表什么含义呢?

其实这个就是系统开机时由GRUB引导启动 - 单处理器 与 对称多处理器启动核心文件的区别。

Red Hat Enterprise Linux ES (版本号.ELsmp) multiple processor (symmetric multiprocessing )

Red Hat Enterprise Linux ES-up (版本号.EL) uniprocessor

下面就把SUSE与Red Hat启动菜单内可选择的选项,列举出来

SUSE

版本号-default: SUSE Linux kernel for uniprocessor machines 默认选项,支持单处理器机器

版本号-smp: SUSE Linux kernel that supports symmetric multiprocessing and up to 4 GB of RAM

支持4GB内存的对称多处理器机器

版本号-bigsmp: SUSE Linux kernel supports symmetric multiprocessing and up to 64 GB

支持64GB内存的对称多处理器机器

Red Hat Linux

版本号.EL: Red Hat Linux kernel for uniprocessor machines 支持单处理器机器

版本号.ELhugemem: Red Hat Linux kernel that supports up to 64 GB of RAM

支持64GB内存的对称多处理器机器

版本号.ELsmp: Red Hat Linux kernel that supports symmetric multiprocessing 对称多处理器机器,支持4G内存

有些情况下你需要支持1和2特性,那么你可以:重新编译一下内核,在处理器及内存选择项上选择与你配置相对应的选项即可。

如何下载对应内核版本的源代码 ?

一般情况下,可以直接到官网:http://www.kernel.org下载,

缺点是:对于任何内核做过特殊优化调校的发行版是不合适的,尤其是fedora ubuntu 这一类的,毕竟他们在内核中打了大量的补丁,做了很多优化,如果直接使用官方源码 ,你就无法享受到这些东西 ,内核不是越新越好的 越合适越好

因此最好到发行商的官网去下载,因为官方已经提供了编译好的源码rpm包。

如何使用对应的内核源码包 ?

以fedora官方提供的内核源码: kernel-2.6.23.9-85.fc8.src.rpm 为例

首先,安装源码

[root@lq ~]# rpm -ivh kernel-2.6.23.9-85.fc8.src.rpm

然后,转换源码

转换之前,请确保/usr/src/目录下有redhat目录(一般/usr/src/是空目录)。

[root@lq ~]# rpmbuild -bp --target=$(uname -m) /usr/src/redhat/SPECS/kernel.spec

这样会将源码放置在/usr/src/redhat/BUILD/kernel-2.6.23/。

这里有两个有用的文件夹:.

linux-2.6.23.ARCH——这个是kernel.org 提供的包经过Fedora 补丁和升级得到的。也就是 2.6.23.9-85.fc8 这个 打过补丁的内核

ARCH 与uname-m 的输出结果一致,通常为i686。如果你想得到不同的输出,你可以使用

“--target=”这个选项来进行指定。

vanilla——这个是标准的、由kernel.org 提供的没有经过补丁和升级的源码。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8557338.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存