centos 6.9 更新内核方法

本文详细介绍了如何在 CentOS 6.9 系统中更新内核,包括联网和非联网两种情况,涉及查看系统版本、yum安装、手动编译、配置Grub引导顺序等步骤,并提供了内核源码下载、编译和安装的详细指导,以及处理可能出现的错误方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

更新内核 联网默认版 非最新

1:查看系统版本
# uname -r

或者

#rpm -qa |grep kernel

或者

#rpm -q | grep kernel

2.更新内核

#yum -yinstall kernel

或者全局更新

#yum update

3.删除升级内核

#rpm -qa |grep kernel

或者

# rpm -q |grep kernel

然后

#yum remove +内核名称

或者

#rpm -e +内核名称

或者

安装yum-utls: yuminstall -y yum-utils

设置你想要保留多少旧的内核,比如我想保留两个:sudo package-cleanup--oldkernels --count=2

再次用rpm -q kernel查看内核信息,只剩最新的两个

4.修改文件修改数字几 系统保留内核数量

# vi /etc/yum.conf

修改该项值

installonly_limit=2  // 系统保留2个内核

 

5.修改Grub引导顺序

安装完成后,需要修改Grub引导顺序,让新安装的内核作为默认内核。

编辑 grub.conf文件,

sudo vim /etc/grub.conf

数一下刚刚新安装的内核在哪个位置,从0开始,然后设置default为那个数字,一般新安装的内核在第一个位置,所以设置default=0。

6.最后重启查看

#rpm -qa kernel

 

更新内核 软件安装指定版本

 

1.确定发行版的内核源码

# cat /etc/redhat-release

然后

如果是centos,则下载地址为类似如下的地址:

http://vault.centos.org/6.9/os/Source/SPackages/kernel-2.6.32-696.el6.src.rpm

 

2.导入系统 使用如下命令安装源码包

如果机器不能联网,可以下载现有内核包到本地机器,直接在本地更新

1.从http://ftp.scientificlinux.org/linux/scientific/7.0/x86_64/updates/security/下载需要的颁布rpm

2. 登录本地服务器下载

scproot@192.168.1.64:/home/worker/kernel-3.10.0-123.1.2.el7.x86_64.rpm

root@192.168.1.64'spassword:

kernel-3.10.0-123.1.2.el7.x86_64.rpm        100%   29MB 28.9MB/s   00:00

 

3.[root@localhost os2]# yum installkernel-3.10.0-123.1.2.el7.x86_64.rpm

或者

#rpm -i kernel-2.6.32-696.el6.src.rpm

 

Warning:user mockbuild does not exist.using root

 

解决办法:

# yum install mock

# useradd -s /sbin/nologin mockbuild

 

首先是安装mock,由于mock是在epel仓库里的,所以还需要先装epel仓库

1

2

 

yum  install epel-release

yum  install mock

 

安装完成后,在 /usr/src/redhat/目录下会生成一些目录:如果是centos,相关目录是生成在 /root/rpmbuild目录下。

例如,BUILD SOURCES  SPECS等。

其中SOURCES 目录下,应该是内核源码文件与补丁等。

以red hat为例,SOURCES 中包含:

linux-2.6.18.tar.bz2   ---- 标准的Linux内核源码包

一大堆.patch的文件  ---- 这些是源码补丁文件

若干个.config            ---- 这些是内核配置文件

其他的文件                ----  在下目前也不理解 :)

 

3.获得内核源码

 使用如下命令得到完整的redhatlinux内核源码

cd   /root/rpmbuild/SPECS

rpmbuild-bp --target=$(uname -m) kernel.spec

如果提示

xmltois needed by kernel-2.6.32-696.el6.x86_64

解决方法

#yuminstall xmlto 

什么isneeded就yum install什么。

如果一切顺利,那么在/root/rpmbuild/BUILD/kernel-2.6.32-696.el6/linux-2.6.32-696.el6.x86_64目录中,就会生成一份内核源码。这个源码,是在标准Linux内核源码的基础上,打上了RedHat(或centos/fedora)的补丁及相关配置的源码。

4. 安装前配置

#cd/root/rpmbuild/BUILD/

#yuminstall ncurses-devel

 

//make[-jn]

  """ n 为数字,如:make -j4 拆分 4 个作业任务并行编译,加快编译速度 """

  """ 使用make -j 则不限制并行编译的任务数,但是出错率可能会高一些 """

  """ 如果不使用任何编译参数,一两个小时也是很常见的 """

#makemenuconfig  /* 配置内核 */

//makemenuconfig

  """ 此命令运行将弹出"kernel configuration"界面"""

  """ 按"ESC",点"YES"退出即可 """

  """ 如需定制内核,请按提示进行选择 """

//makeoldconfig

  """ 如果定制内核,则不需要此步 """

  """ 为要编译的内核源码使用当前系统内核配置文件 """

  """ 当前目录下将会创建 ".config" 文件 """

#makebzImage        /* 编译内核 */

#makemodules       /* 编译模块 */

 

#makemodules_install   /* 安装模块 */

#makeinstall        /* 安装内核 */

 

#reboot         /* 重启机器。起来之后就是新内核了 */

 

 

更新内核 联网 指定版本

1.安装必要的工具

#yuminstall rng-tools

#yuminstall rpm-build redhat-rpm-config unifdef

2. 安装源码

#rpm -i http://vault.centos.org/6.7/updates/Source/SPackages/kernel-2.6.32-573.8.1.el6.src.rpm2>&1 | grep -v exist

3.编译工具

#yum install rpm-buildredhat-rpm-config asciidoc bison hmaccalc patchutils perl-ExtUtils-Embed xmlto

 

#yum install audit-libs-develbinutils-devel elfutils-devel elfutils-libelf-devel

 

#yum install newt-develpython-devel zlib-devel

 

#yum install gcc bc bison

4.获得内核源码

 使用如下命令得到完整的redhat linux内核源码

cd   /root/rpmbuild/SPECS

rpmbuild -bp --target=$(uname-m) kernel.spec

如果提示

xmlto is needed bykernel-2.6.32-696.el6.x86_64

解决方法

#yum install xmlto 

什么is needed就yuminstall什么。

如果一切顺利,那么在/root/rpmbuild/BUILD/kernel-2.6.32-696.el6/linux-2.6.32-696.el6.x86_64目录中,就会生成一份内核源码。这个源码,是在标准Linux内核源码的基础上,打上了RedHat(或centos/fedora)的补丁及相关配置的源码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值