云网牛站
所在位置:首页 > Linux教程 > 把CentOS转成Oracle Enterprise Linux的方法

把CentOS转成Oracle Enterprise Linux的方法

2018-07-25 11:38:49作者:妙正灰稿源:米炍粑

以下为你介绍把CentOS转成Oracle Enterprise Linux的基本方法,之所以把CentOS转换是因为其更新太慢,有的时候一个 Linux Kernel 的高危漏洞尽然可以比 RHEL 晚足足一个星期。但是 RHEL 体系的兼容性真的好了,在这方面这的确是 Debian 和 Ubuntu 不可以比的。不过还好,发现了一个替代方案:Oracle Enterprise Linux(简称 OEL)。

 

相关介绍

1.一个商业系统的开源版本,是不能将其中的软件、组建拿过来直接用的,必须是通过源码重新编译一遍。CentOS 是开源社区所维护的所以更新速度总是慢半拍,但是 RHEL 毕竟是商业版本,而 CentOS 可以免费使用,这点还是可以理解的。

2.Oracle Enterprise Linux 是由 Oracle 维护的 RHEL 源码重构版,在使用 Oracle 家的产品的时候特别是 Oracle Database 性能更是号称有百分之两位数的提升,那么夸张肯定不能信,不过提升肯定是有的。在脏牛漏洞上,也是非常及时的进行修复。Oracle Enterprise Linux 完美兼容 RHEL,免费提供源代码、二进制文件、更新、可再发行、生产。如果要获得 RHEL 那样的商业技术支持,OEL 也宣称更便宜。反正不管怎么样,我觉得 OEL 还是一个不错的选择。

 

安装ISO镜像

全新安装的 ISO 镜像可以在 Oracle软件交付中下载

 

CentOS升级

无论是国内的阿里云、腾讯云还是国外的DO一般情况都是不会提供 OEL 的,不过没关系,因为 OEL 是完美兼容 RHEL 的,自然也完美兼容 CentOS,换个软件源就可以升级了。

一、将服务器镜像换成 CentOS 6 或者 7,然后在 SSH 中输入,就会自动更换到 OEL 的全球CDN源,并安装Key:

wget https://linux.oracle.com/switch/centos2ol.sh 

sh centos2ol.sh

二、然后再运行下面命令,更新至 OEL:

yum distro-sync

三、如果提示错误了:

Running transaction check

Running transaction test

Transaction check error:

file /usr/share/man/man5/limits.conf.5.gz from install of pam-1.1.8-18.el7.i686 conflicts with file from package pam-1.1.8-18.el7.x86_64

file /usr/share/man/man5/pam_env.conf.5.gz from install of pam-1.1.8-18.el7.i686 conflicts with file from package pam-1.1.8-18.el7.x86_64

file /usr/share/man/man8/faillock.8.gz from install of pam-1.1.8-18.el7.i686 conflicts with file from package pam-1.1.8-18.el7.x86_64

file /usr/share/man/man8/pam_env.8.gz from install of pam-1.1.8-18.el7.i686 conflicts with file from package pam-1.1.8-18.el7.x86_64

file /usr/share/man/man8/pam_exec.8.gz from install of pam-1.1.8-18.el7.i686 conflicts with file from package pam-1.1.8-18.el7.x86_64

file /usr/share/man/man8/pam_faillock.8.gz from install of pam-1.1.8-18.el7.i686 conflicts with file from package pam-1.1.8-18.el7.x86_64

file /usr/share/man/man8/pam_unix.8.gz from install of pam-1.1.8-18.el7.i686 conflicts with file from package pam-1.1.8-18.el7.x86_64

file /usr/share/man/man8/pam_userdb.8.gz from install of pam-1.1.8-18.el7.i686 conflicts with file from package pam-1.1.8-18.el7.x86_64

file /usr/share/man/man8/pwhistory_helper.8.gz from install of pam-1.1.8-18.el7.i686 conflicts with file from package pam-1.1.8-18.el7.x86_64

Error Summary

四、先安装 yum-downloadonly

yum install -y yum-downloadonly

五、安装 pam 到 /tmp

yum install pam.i686 -y --downloadonly --downloaddir=/tmp

六、查看 pam 的 i386 rpm包的版本号,因为不同系统的 pam 版本号不一样:

yum list pam

例如,我这里的是:

pam.i686    1.1.8-18.el7   ol7_latest

七、强制安装 pam 及其依赖

cd /tmp

rpm -ivh --force --nodeps pam-1.1.8-18.el7.i686.rpm

yum reinstall pam.i686

八、再运行下面命令,更新至 OEL:

yum distro-sync

九、查看系统:

[root@www.mf8.biz tmp]# lsb_release -a

LSB Version:    :core-4.1-amd64:core-4.1-noarch

Distributor ID: OracleServer

Description:    Oracle Linux Server release 7.4

Release:    7.4

Codename:   n/a

[root@www.mf8.biz tmp]# uname -a

Linux centos-512mb-ams3-01 3.10.0-693.el7.x86_64 #1 SMP Wed Aug 2 06:49:08 PDT 2017 x86_64 x86_64 x86_64 GNU/Linux

 

软件更新

注意:下面仅供学习示例,并非最新版本,建议届时采用最新的版本,以获得更优越的性能及安全风险抵御。

1.CentOS

[root@centos-512mb-sgp1-01 ~]# uname -a

Linux centos-512mb-sgp1-01 3.10.0-514.21.1.el7.x86_64 #1 SMP Thu May 25 17:04:51 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

m4.x86_64   1.4.16-10.el7

automake.noarch 1.13.4-3.el7

libtool.x86_6   2.4.2-22.el7_3

libtasn1.i686   3.8-3.el7   

openssl.x86_64  1:1.0.1e-60.el7_3.1

mariadb-server.x86_64   1:5.5.52-1.el7

gcc.x86_64  4.8.5-11.el7

nfs-utils.x86_64    1:1.3.0-0.33.el7_3

2.OEL

[root@centos-512mb-ams3-01 ~]# uname -a

Linux centos-512mb-ams3-01 3.10.0-693.el7.x86_64 #1 SMP Wed Aug 2 06:49:08 PDT 2017 x86_64 x86_64 x86_64 GNU/Linux

m4.x86_64   1.4.16-10.el7

automake.noarch 1.13.4-3.el7

libtool.x86_64  2.4.2-22.el7_3

libtasn1.i686   4.10-1.el7

openssl.x86_64  1:1.0.2k-8.0.1.el7

mariadb-server.x86_64   1:5.5.56-2.el7

gcc.x86_64  4.8.5-16.el7

nfs-utils.x86_64    1:1.3.0-0.48.0.1.el7

3.两个版本之间的区别

可见,OEL 的版本和 CentOS 基本上是一样的,毕竟大家都是 RHEL 重新编译的,在更新速度上,由于 OEL 要比 CentOS 明显新很多。

其他值得注意的就是 libtasn1 和 openssl 是明显不同的,为了 HTTP/2 看来升级到 openssl 1.0.2 这个是真的不错,这样对于做服务器部署的很方便,不需要自行编译。

 

相关主题

Oracle Linux 7.5发布下载,新增多项功能

精选文章
热门文章