1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Linux 升级到指定内核(Centos7 yum升级内核 centos系统中kernel-devel)

Linux 升级到指定内核(Centos7 yum升级内核 centos系统中kernel-devel)

时间:2022-12-04 15:22:35

相关推荐

Linux 升级到指定内核(Centos7 yum升级内核 centos系统中kernel-devel)

文章目录

一、Linux 升级内核Centos7 yum/rpm升级到最新内核Centos 7 rpm升级到指定内核关于Linux依赖包资源下载二、Linux内核源码的编译及安装三、设置 grub2 切换内核查看系统上的所有可用内核:设置新的内核为grub2的默认版本四、centos系统中kernel-devel1. LINUX中的kernel-devel工具是干什么的?2. 安装标配内核 kernel-devel

一、Linux 升级内核

Centos7 yum/rpm升级到最新内核

Centos7升级内核

参考URL: /mgsudu/p/14741297.html

如何在 CentOS 7 中安装或升级最新的内核

参考URL: /article-8310-1.html

具体,推荐查看原文。

检查已安装的内核版本

[root@localhost ~]# uname -srLinux 3.10.0-1160.el7.x86_64

大多数现代发行版提供了一种使用 yum 等包管理系统和官方支持的仓库升级内核的方法。

但是,这只会升级内核到仓库中可用的最新版本 - 而不是在 / 中可用的最新版本。不幸的是,Red Hat 只允许使用前者升级内核。

与 Red Hat 不同,CentOS 允许使用 ELRepo,这是一个第三方仓库,可以将内核升级到最新版本。

/tiki/HomePage

Centos 7 rpm升级到指定内核

rpm 去

/download/kernel(list_del) 找 kernel-xxx.rpm

/download/kernel-devel 找 kernel-devel-xxxx.rpm

下载指定版本用rpm -Uvh安装或者用yum安装:

yum -y install kernel-ml-devel-4.12.4-1.el7.elrepo.x86_64.rpmyum -y install kernel-ml-4.12.4-1.el7.elrepo.x86_64.rpm

centos7亲测:rpm安装的内核,reboot后貌似就自动切换好了。

关于Linux依赖包资源下载

教你怎么解决Linux依赖包第一篇:资源网下载

参考URL: /qq_36154886/article/details/106853048

在pkgs网站上几乎收集了所有对外发布的Linux服务包,无论是Debian系,红帽系,arrch系都有,一个字:齐全

/

/index.php3

二、Linux内核源码的编译及安装

下载Linux内核的源代码 (Download the source code of Linux kernel)

从[ /]下载。

三、设置 grub2 切换内核

查看系统上的所有可用内核:

$ awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg

0 : CentOS Linux (5.12.1-1.el7.elrepo.x86_64) 7 (Core)

1 : CentOS Linux (3.10.0-1160.25.1.el7.x86_64) 7 (Core)

2 : CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core)

3 : CentOS Linux (0-rescue-16ba4d58b7b74338bfd60f5ddb0c8483) 7 (Core)

设置新的内核为grub2的默认版本

服务器上存在4 个内核,我们要使用 5.12.1这个版本,可以通过 grub2-set-default 0 命令或编辑 /etc/default/grub 文件来设置

方法1、通过 grub2-set-default 0 命令设置

其中 0 是上面查询出来的可用内核

grub2-set-default 0

方法2、编辑 /etc/default/grub 文件

设置 GRUB_DEFAULT=0,通过上面查询显示的编号为 0 的内核作为默认内核:

$ vim /etc/default/grub

GRUB_TIMEOUT=5

GRUB_DISTRIBUTOR="(sed′s,release.∗(sed 's, release .*(sed′s,release.∗,g’ /etc/system-release)"

GRUB_DEFAULT=0

GRUB_DISABLE_SUBMENU=true

GRUB_TERMINAL_OUTPUT=“console”

GRUB_CMDLINE_LINUX=“crashkernel=auto rd.lvm.lv=cl/root rhgb quiet”

GRUB_DISABLE_RECOVERY=“true”

方法3: 推荐

查看所有内核启动 grub2

# awk -F \' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg 0 : CentOS Linux (5.2.4-1.el7.elrepo.x86_64) 7 (Core)1 : CentOS Linux (3.10.0-327.28.3.el7.x86_64) 7 (Core)2 : CentOS Linux (3.10.0-327.22.2.el7.x86_64) 7 (Core)3 : CentOS Linux (3.10.0-327.13.1.el7.x86_64) 7 (Core)4 : CentOS Linux, with Linux 0-rescue-cd8c4444947b4b0b818457f51ded6591

修改为最新的内核启动

grub2-set-default ‘CentOS Linux (5.2.4-1.el7.elrepo.x86_64) 7 (Core)’

然后reboot

经过测试 centos7 rpm安装完成,重启,自动就换成你安装的内核了。

四、centos系统中kernel-devel

1. LINUX中的kernel-devel工具是干什么的?

如果某个程序需要内核提供的一些功能,它就需要内核的 C header 来编译程序,这个时候 linux-devel 里面的东西就用上了。

kernel-devel 不光是 C Header 文件,它还有内核的配置文件,以及其他的开发用的资料。

区别:kernel-devel包只包含用于内核开发环境所需的内核头文件以及Makefile,而kernel-souce包含所有内核源代码。

如果仅仅是用于你自己编写的模块开发的话,因为只需引用相应的内核头文件,所以只有devel包即可,如果你要修改现有的内核源代码并重新编译,那必须是kernel-souce。

kernel-souce在RH某些版本之后不再附带在发行版中了,必须自己通过kernel-XXX.src.rpm做出来。

kernel-devel是用做内核一般开发的,比如编写内核模块,原则上,可以不需要内核的原代码。

kernel则是专指内核本身的开发,因此需要内核的原代码。

rpm 去

/download/kernel(list_del) 找 kernel-xxx.rpm

/download/kernel-devel 找 kernel-devel-xxxx.rpm

2. 安装标配内核 kernel-devel

找到linux的安装盘,将其挂载到当前系统中,然后去Packages目录执行安装命令。

mkdir -p /mnt/cdrommount /dev/cdrom /mnt/cdromcd /mnt/cdromcd Packagesrpm -Uvh kernel-devel*.rpm

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。