Linux—小小内核升级

打印 上一主题 下一主题

主题 549|帖子 549|积分 1647

  本篇主要是讲述下关于内核的一些根本知识,并记录下内核升级和编译的过程,若有遗漏/有误之处,望各位大佬们指出。
  Ⅰ 根本内核知识

常见内核安装包


  • 内核(kernel):这是Linux操纵体系的焦点部分,它负责管理体系的硬件和软件资源,提供各种服务给软件应用程序;
  • 内核开发包(kernel-devel):这个包包罗了内核头文件,这些文件可以用来构建内核模块
  • 内核头文件包(kernel-headers):这个包包罗了指定Linux内核与用户空间库和程序之间的接口的C头文件。这些头文件定义了构建大多数标准程序所需的常量布局和常量
  假如是升级内核的话,需要下载上面三个安装包,只是编译内核的话,就只需要下载个devel包即可。
  关于如何获取这些安装包的话,我一样寻常都是在【 内核包下载地址】这条链接获取的

其余的安装包获取,可以参考这个
  下面这些存放都是比较零散的,需要耗费大量时间,而且对应的rpm包比较欠好找


  • centos7官方:http://elrepo.org/linux/kernel/el7/x86_64/RPMS/
  • 阿里云:https://developer.aliyun.com/mirror/
  • 清华源:https://mirrors.edge.kernel.org/pub/linux/kernel/
Ⅱ 升级内核版本

需要下载好三个安装包,分别为【以X86_64的centos为例子】


  • kernel-3.10.0-957.e17.x86_64.rpm
  • kernel-devel-3.10.0-957.e17.x86_64.rpm
  • kernel-headers-3.10.0-957.e17.x86_64.rpm
进入该目录,执行下面这条指令
  1. yum localinstall kernel-*
复制代码
使用下面指令,检察内核是否安装成功
  1. awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
  2. grub2-set-default 0   #指定内核编号,一般新安装的内核版本都会放到第一位,留意下内核版本编号
复制代码
最后执行指令【reboot】重启服务器,即可
Ⅲ 编译内核

假如只是编译内核的话,只需要一个开发包kernel-devel就可以了。
  1. // 开发包devel存放位置
  2. /usr/src/kernels/$(uname -r)
复制代码
  只下载一个开发包就可以了,去下载一个对应的内核开发包.rpm,然后再执行make即可举行编译了。
拉取devel包后,到相对于位置执行以下指令
  1. uname -a ; rpm -qa kernel\* | sort // 查看已安装devel包
  2. yum localinstall kernel-devel-3.10.0-957.27.2.el7.x86_64.rpm  // 下载到本地
  3. //卸载
  4. yum remove kernel-devel-2.6.32-754.el6.x86_64
  5. //验证
  6. ls /usr/src/kernels/$(uname -r)/
复制代码
【留意】
  关于旧版内核的东西,由于centos官方删掉了一部分的devel文件,假如需要拉去的话,只能自己手动去找rpm举行编译了

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

羊蹓狼

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表