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
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
升级内核版本:
[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%]
[root@localhost ~]# ls /lib/modules/
2.6.32-431.el6.x86_64/ 3.8.13-16.2.1.el6uek.x86_64/
编写内核模块的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
修改为:
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
如果没有安装 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
https://public-yum.oracle.com/
https://www.oracle.com/linux/
https://cn.soulmachine.me/2014-01-31-install-uek-for-centos/