• Red Hat 6安装Oracle Linux内核头文件


    简介

    Oracle Linux 是一个高性能且安全的操作环境,除提供操作系统外,还提供虚拟化、管理和云原生计算等工具以及易于管理的统一支持服务。Oracle Linux 提供 100% 与 Red Hat Enterprise Linux 和 CentOS Linux 应用二进制兼容的替代方案,在混合云和多云环境中都受支持。

    步骤

    Unbreakable Enterprise Kernel (UEK),UEK是OracleLinux发布的内核版本,对内核增加了更多优化。
    基于Linux主线版本3.8.13。

    小红帽系统:

    [yl@localhost ~]$ cat /etc/redhat-release
    Red Hat Enterprise Linux Server release 6.5 (Santiago)
    [yl@localhost ~]$ uname -r
    2.6.32-431.el6.x86_64
    
    • 1
    • 2
    • 3
    • 4

    2.6.32不支持docker。

    增加 3.8.13-16.2.1.el6uek.x86_64内核头文件。

    下载待安装的Oracle Linux 6相关的rpm包:https://public-yum.oracle.com/repo/OracleLinux/OL6/UEKR3/latest/x86_64/index.html

    如下所示:

    kernel-uek-3.8.13-16.2.1.el6uek.x86_64.rpm
    kernel-uek-devel-3.8.13-16.2.1.el6uek.x86_64.rpm
    kernel-uek-firmware-3.8.13-16.2.1.el6uek.noarch.rpm
    libdtrace-ctf-0.4.0-1.x86_64.rpm
    
    • 1
    • 2
    • 3
    • 4

    升级内核版本:

    [root@localhost]# rpm -ivh *.rpm --nodeps --force
    warning: kernel-uek-3.8.13-16.2.1.el6uek.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
    Preparing...                ########################################### [100%]
       1:libdtrace-ctf          ########################################### [ 25%]
       2:kernel-uek-firmware    ########################################### [ 50%]
       3:kernel-uek             ########################################### [ 75%]
       4:kernel-uek-devel       ########################################### [100%]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    [root@localhost ~]# ls /lib/modules/
    2.6.32-431.el6.x86_64/             3.8.13-16.2.1.el6uek.x86_64/   
    
    • 1
    • 2

    编写内核模块的Makefile:
    由于当前的内核版本时2.6.32-431.el6.x86_64,在需要 3.8.13-16.2.1.el6uek.x86_64版本的模块时,不能用$(shell uname -r)

    all:
    	make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
    
    clean:
    	make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    修改为:

    all:
            make -C /lib/modules/3.8.13-16.2.1.el6uek.x86_64/build/  M=$(PWD) modules
    clean:
            make -C /lib/modules/3.8.13-16.2.1.el6uek.x86_64/build/  M=$(PWD) clean
    
    • 1
    • 2
    • 3
    • 4

    如果没有安装 libdtrace-ctf-0.4.0-1.x86_64.rpm 包,会报如下错误:

     CTF
     scripts/dwarf2ctf/dwarf2ctf: error while loading shared libraries: libdtrace-ctf.so.1: cannot open shared object file: No such file or directory
    
    • 1
    • 2

    参考资料

    https://public-yum.oracle.com/
    https://www.oracle.com/linux/
    https://cn.soulmachine.me/2014-01-31-install-uek-for-centos/

  • 相关阅读:
    FS4059A与FS5080E充电芯片的区别
    36. 有效的数独
    【C++】day6学习成果:继承、多态、栈和循环队列
    CSS Grid Layout(网格布局)
    2023 年值得关注的软件测试趋势
    设计模式:开放-封闭原则(Open-Closed Principle,OCP)介绍
    java8 Optional理解及示例
    mybatis内部类映射写法
    职业PDF标准 Python 下载器-CSDN
    lerna 简单教学
  • 原文地址:https://blog.csdn.net/weixin_45030965/article/details/127889919